Scratch is a graphical programming language for kids that was designed at the MIT Media Lab. To write a program in Scratch, you connect colored code blocks together. The neat thing about not having to type in lines of code is that you don't have to worry about spelling errors. Also, the blocks fit together only if they make computational sense, which helps beginners from making frustrating mistakes. (The inevitable bugs that do occur in Scratch end up being the interesting and educational kind). Scratch is free and available for most operating systems.
Super Scratch Programming Adventure is a comic book style introduction to Scratch that reveals the power of this deceptively simple programming language. It's possible to write sophisticated arcade-style games on Scratch, and as you work though the chapters of Super Scratch Programming Adventure, you'll be surprised at what the software is capable of. The book is written in the form of a story, in which cartoon characters are faced with increasingly dire predicaments that require Scratch programs to get out of. It's a fun way to learn how to program Scratch, even for adults.
My 9-year-old daughter loves Scratch, and she's learned a lot about sprite animation, variables, applying sound effects, interface design, and more. As Mitchel Resnick, the director of the MIT Scratch Team writes in his introduction, "As young people create Scratch projects, they are not just learning how to write computer programs. They are learning to think creatively, reason systematically, and work collaboratively [people can share their Scratch creations at MIT's Scratch site] -- essential skills for success and happiness in today's world."
The book also has a brief introduction to the PicoBoard, a microcontroller board that interfaces with Scratch so you can write programs that respond to light, sound, and other inputs. I'm going to buy a PicoBoard, because it looks like a lot of fun!
If you have a kid who likes video games, this book is a fine way for him or her to learn how games are created. I also recommend the book for adults who want to have creative fun with their computer.
Super Scratch Programming Adventure