Ask HN: What's the best Language/IDE to teach a group of kids programming?

1 points by biotech ↗ HN
What's the best language/IDE to use for teaching kids programming in an after-school group setting?

I'm looking for a programming language/development environment that has the following characteristics:

- Runs on Windows - Includes an IDE - Free - Easy to install - Really easy to do graphics programming without using advanced language features. - Well documented

To elaborate on the purpose:

I am starting an after-school program to teach kids how to program. The end product of the course will be a simple but fun computer game that the kids can take home and run on their home computers if they wish. The schools computers run Windows, and I will be using their computers. The course will be targeted towards students in the gifted program at a public school. The students will be 10-13 years old.

I will not consider visual-only programming languages such as Scratch or Alice for this group. If, at a later time, I do a class for younger children I will consider these programs.

This is a non-graded, purely optional after-school class. It is important that the course be fun as well as educational. That is why the focus will be on making a video game. I want kids to learn how to search reference documentation for an answer to their questions, so a well documented language/api is a must.

I have ruled out the following:

- Scratch/Alice (too visual, perhaps useful for a younger audience) - LOGO (Not general-purpose enough, again, perhaps useful for a younger audience) - Lego Mindstorms (too expensive) - C/C++/Java/C# (too advanced – I would consider these for a 2nd language) - QBasic (I just wanted to mention this because I taught myself QBasic as a kid. It's obsolete now though)

The following are viable options that I have considered:

- Microsoft Small Basic (I'm leaning towards this) - Python+pygame (I'm thinking this may be too complicated to start with though, also a setup headache for kids... what do you think?) - Hackety Hack (anyone have experience teaching with this?) - Squeak (seems more complicated than I would like) - Visual Basic (6.0 is obsolete, but VB.NET is possibly viable, but is the complexity worth it compared to MS Small Basic?) - Just Basic (not as “polished” as small basic)

I am a Software Engineer, and will be working with an experienced teacher to make this after-school program work. Any other advice would be greatly appreciated!

2 comments

[ 2.8 ms ] story [ 9.4 ms ] thread
Although my son is too young for me to personally comment on how this works, I've read comments on here some time back about other parents teaching their kids python through http://inventwithpython.com/

I think its worth exploring although HUGE disclaimer as I never even glanced over the book. It seems to be in your target audience however.