By user9154807 on Dec 08, 2008
My sons have been playing with Scratch, a programming language/system for kids to build games, video, etc, and share them on the web. Although I've seen plenty of graphical programming languages for kids over the years, Scratch does a really good job of making it trivial to share projects on the web. Not only can kids on the web play each others creations, but they can download, explore, learn, and remix, and upload them. So the kids can learn a lot from each other.
Scratch has been my sons thing - I've answered the odd question about variables (in general), but otherwise have stayed mostly ignorant of how Scratch really works (this protects me from overloading on pokemon and waffles).
Saturday, MIT sponsored a Scratcher Meetup at the Media Lab and invited 80 or so kids.
I ended up learning at least as much as my kids at this meeting. First, even though though I worked for Dan Ingalls for a while, and my partner in crime Eric is an unrepentant Smalltalk hacker, I hadn't realized that the system my sons were using was based on Squeak, the smalltalk-in-smalltalk VM that inspired Squawk.
Even more interesting was that a couple of kids at the meetup had figured out that from within Scratch, they can trigger a runtime error that brings up a Smalltalk class browser. From the browser they could create their own Scratch blocks (the programming primitives in the visual programming environment)!
These kids could be found in the meetup tracking down the Scratch developers, getting tips on how to interface properly with Scratch. The developers did their best to teach them, even though their jaws had dropped permanently to the floor :-O
To me this seems an inspiring and magical way to learn hacking and programming - the keys to the kingdom are through the secret door past the dragon...