University of Colombo, Sri Lanka
IT department
When Moshe Vardi, Editor-in-Chief of CACM, invited us to submit an article about Scratch, he shared the story of how he learned about Scratch: A couple of days ago, a colleague of mine (CS faculty) told me how she tried to get her... more
When Moshe Vardi, Editor-in-Chief of CACM, invited us to submit an article about Scratch, he shared the story of how he learned about Scratch: A couple of days ago, a colleague of mine (CS faculty) told me how she tried to get her 10-year-old daughter interested in programming, and the only thing that appealed to her daughter (hugely) was Scratch. That's what we were hoping for when we set out to develop Scratch six years ago. We wanted to develop an approach to programming that would appeal to people who hadn't previously imagined themselves as programmers. We wanted to make it easy for everyone, of all ages, backgrounds, and interests, to program their own interactive stories, games, animations, and simulations-and to share their creations with one another. Since the public launch in May 2007, the Scratch website (http://scratch.mit.edu) has become a vibrant online community, with people sharing, discussing, and remixing one another's projects. Scratch has been called "the YouTube of interactive media." Each day, Scratchers from around the world upload more than 1000 new projects to the site, with source code freely available for sharing and remixing. The collection of projects is wildly diverse: video games, interactive newsletters, science simulations, virtual tours, birthday cards, animated dance contests, interactive tutorials, and many others, all programmed in Scratch. The core audience on the Scratch website is between the ages of 8 and 16 (with a peak at age 12), though there is a sizeable group of adult participants as well. As Scratchers program and share interactive projects, they learn important mathematical and computational concepts, while also learning to think creatively, reason systematically, and work collaboratively-essential skills for the 21st century. Indeed, our primary goal is not to prepare people for careers as professional programmers, but rather to nurture the development of a new generation of creative, systematic thinkers who are comfortable using programming to express their ideas. In this article, we discuss the motivations underlying Scratch, the design principles that guided our development of Scratch, and future directions in our efforts to make programming accessible and engaging for everyone. But first, to give a sense of how Scratch is being used, we describe a series of projects from a 13-year-old girl with the Scratch screen name BalaBethany.