What is Scratch?
Scratch is a block based programming language. It is an honest to goodness programming language. You can do anything with Scratch that you can do with any high level programming language. Scratch is suitable for kids and adults. In fact, many universities use Scratch as an introduction to programming before launching into high level programming languages. Scratch was started in 2003 and has been the inspiring programmers young and old. Here is a history of Scratch, made with Scratch!
Here is a short tutorial about Scratch, made with Scratch.