In the simplest terms, the Scratch language is a free programming language where you move blocks (also called bubbles) into a set order, then configure some of the blocks to create interactive stories, games, and animations.
The event-driven language is fairly easy for anyone to learn, regardless of age. Scratch rewards tweaking and playing, either from a blank slate or by modifying existing code. The language also has been adapted into new languages and inspired other languages.
Started in 2007, Scratch is a project of the Lifelong Kindergarten Group at the MIT Media Lab. Since the project started, 3.6 million people have signed up on their website and over 6 million Scratch projects have been shared with other members of the community. Scratch also includes a very active community of teachers, as well as support for parents helping kids learn the language.
What Makes Scratch Special?
While the Scratch language is fairly easy to use, fun, and addictive, the language is special for two main reasons, its community and how Scratch encourages kids to learn then take risks to adapt what they’ve done. While not everyone wants to be a programmer, everyone benefits from projects that teach creative problem solving. The ability to imagine, create, play, and reflect are critical skills regardless of your age.
The use of configurable blocks instead of traditional code makes it easier for people think creatively, reason systematically, and work collaboratively as they create their projects.
The community is the other half of Scratch. Their website makes it easy to share projects, as well as find projects other people have completed. The community provides support online. And the community extends offline in numerous classrooms, hackathons, and local groups that use Scratch to teach programming.
ScratchEd, the community for teachers, also is a very active place to share stories, share resources, ask questions, and find people to help.
Both the Scratch online community and ScratchEd are great resources for parents who want to work with their kids to learn the language. The Scratch team also has a web page for parents with lots of links.
Finally, Scratch is available in 40 languages and used in 150 countries.
How is Scratch Used?
I first learned of Scratch at a hackathon with a bunch of parents and kids using the language to build simple applications. Community turns out to be a huge part of how Scratch is learned and used. In the hackathon I attended, a few college kids who were Scratch experts wandered around the rooms and halls to answer questions, teach small lessons, and help the parents and kids design and complete their projects.
Scratch also is used in formal classrooms, from kindergarten through high school, K-12. The use of blocks people configure to create animations is well suited for teaching the language in short lessons.
And the online Scratch communities provide plenty of lessons, ideas, and support for parents and kids who want to learn the language on their own time.
Scratch MIT 2014
Twitter feed with stories, as well as video links to some key presentations.
Creative Computing with Scratch
Creative computing uses Scratch supports the development of personal connections to computing, by drawing upon creativity, imagination, and interests.
The History of Scratch
Why kids love Scratch: It lets them fail in a way their parents don't
Also a block (or bubble) language, includes an app for iPhone/iPad and Android, as well as online lessons.
Also a block (or bubble) language, Hopscotch is an iPhone/iPad app.