Scratch is a graphical programming environment from MIT. It teaches programming concepts to kids by snapping “code blocks” into place to form complete programs. Scratch is completely free.

Scratch Programming Playground is free to read online under a Creative Commons license. If you'd like to support the author, you can purchase a print or ebook.