Super Scratch Programming Adventure! is No Starch Press's excellent adventure to Scratch, the extremely popular (and absolutely wonderful) kids' programming environment from the MIT Media Lab's Lifelong Kindergarten Group.
Produced with the Hong Kong Federation of Youth Groups, Super Scratch Programming Adventure! is a graphic novel that walks readers through a series of extremely well-designed game-design projects, each of which introduces a new concept or two to young programmers, providing a gentle learning curve for mastering Scratch's many powerful features.
To get a sense of these projects, have a look at No Starch's project site for the book, which provides downloads of all the sprites, artwork and sound for each one (the book encourages you to use these as starting points, and to modify them or create your own from scratch).
I've been interested in the book since Mark reviewed it in September, and was delighted to get a chance to read it myself. My daughter is too young for this one as yet — Scratch requires basic literacy in order to really work with it. But reading it, I got very excited about the possibility of working with her on it in a year or two (for example, once she's mastered numbers and letter recognition, I'm sure we could have a lot of fun just taking the existing projects and modifying them with her art and voice).
I fell in love with Logo and BASIC games programming when I was 9, and reading through these projects really brought back the excitement. What's more, it feels like Scratch has all the stuff I wished Logo had built in when started out — for example, you can create if-then loops for sprites that evaluate whether a sprite is touching a certain color ("If I am touching orange, then…"), something that's used in a maze-navigation game where all the maze-walls are orange.
Scratch feels like the second coming of Hypercard, mixing graphics and drag-and-drop code-blobs, but Scratch is all free/open source software, so there's much less danger of a single vendor killing it off. There's even a nascent project to port Scratch to Android, which would be especially fun.