Get 'em early
The earlier we show our daughters how to program, the less chance they'll start thinking, "I can't do that."
In that spirit, I've collected some links to programming environments that kids can learn in, and books good for older kids and parents.
- Squeak - a media authoring tool based on Smalltalk. Educators use it to create interactive simulations as well as to teach programming to kids. There's even a book available, which is unusual.
- Gamemaker - a drag and drop game creator that also has its own scripting language for more complex behavior.
- Scratch - a Squeak derivative from MIT and UCLA. Looks like it will be released later this year.
- Alice - for middle school and up, this project from Carnegie Mellon teaches programming with 3D modeling. Evidently "The Sims" creator EA is funding development of the next version. Perhaps they hope to have more kids create their own in-game objects. I probably shouldn't contemplate whether or not that's a good idea!
- Logo - the classic simulation environment with turtles and squares. Now sporting several nifty new implementations, including one that's open source. Logo has been around long enough that there are several books out there; MIT publishes one.
- Guido van Robot - open-source simplified programming language that is less designed to let you have fun, and more designed to teach actual programming concepts. As such, is probably best for older kids.
- RUR-PLE - a relatively new python environment for learning to program. This looks like younger kids might like it.
I also found references to a couple of good books for kids that aren't tied to a particular environment:
- Learn to Program, by Chris Pine, from the Pragmatic Programming folks. It's just a book, not an environment, so it's probably better for older kids who can deal with finding and opening files and so forth. It uses hot-language-of-the-moment Ruby.
- Head First HTML by Elisabeth and Eric Freeman, from O'Reilly. Great if you have an older child who wants to learn how to make webpages. Remember, good parents don't let their kids use Frontpage!