Teaching Programming to KidsDecember 29, 2005
I have been searching for the best way to help my son Ben explore programming. He loves computers and is constantly looking for new challenges. In fact, for the past month, he has been hacking the Lego Star Wars text files to change the behavior of the characters, including their size and how they react to gravity. Cool stuff.
We've played with a few scripting languages and used the Firefox web developer plug-in to edit the CSS of random websites to see what havoc we could cause. He has also been a regular user of Microsoft's Bitman's Place, a site created to help kids explore computers and programming. Unfortunately, the site has rapidly lost momentum - the current lesson apparently involves getting all the kids to help solve an Object reference not set to an instance of an object error that has been there for 3 months.
As I've written previously, I'm surprised there aren't more options in this area. Ben and most of his friends talk about wanting to create computer games all the time. Can you imagine a software environment that allowed kids (10+) to build a computer game, partly from self-contained programming blocks that handle certain actions, but also through code they could write themselves? The games they create could then be shared with other kids through a community site. You couldn't tear my son away from something like that, and if it really taught programming concepts, parents would be all over it as well.
Until that dream comes true, I think I found two books that are better than anything else I've seen. The first is Learn to Program by Chris Pine. This book focuses on the language of the moment, Ruby. Chris seems like a terrific guy and is someone that has experience teaching programming. He has really thought about what works best for people who are truly starting from scratch. The book will be released shortly and my order has already been placed.
The second is Head First HTML with CSS & XHTLM by Elisabeth and Eric Freeman. This book is unbelievable. I have been searching for a great, current HTML and CSS book and this is all that and more. The Head First approach of beautiful, clever, and visually-focused pages is perfect for this subject. The book is over 650 pages and just came out in December. If you want to get started with HTML and CSS, this is where to begin.