contributed articles

Doi: 10.1145/1592761.1592779

“Digital fluency” should mean designing,
creating, and remixing, not just browsing,
chatting, and interacting.

BY mitcheL ResnicK, John maLone Y, anDRés monRoY-
heRnánDez, nataLie RusK, eVeLYn eastmonD,
KaRen BRennan, amon miLLneR, eRic RosenBaum,
JaY siLVeR, BRian siLVeRman, anD Yasmin Kafai

scratch:

Programming

for all

WheN Moshe Y. Vardi, Editor-in-Chief of

Communications, invited us to submit an article,
he recalled how he first learned about Scratch:
“A colleague of mine (CS faculty),” he said, “told
me how she tried to get her 10-year-old daughter
interested in programming, and the only thing
that appealed to her 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 share their creations with one another.

Since the public launch in May 2007, the Scratch
Web site ( 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 1,500 new projects to the site, with source code freely available for sharing and remixing. The site’s collection of projects is wildly diverse, including video games, interactive newsletters, science simulations, virtual tours, birthday cards, animated dance contests, and interactive tutorials, all programmed in Scratch.

The core audience on the site is between the ages of eight and 16 ( peaking at 12), though a sizeable group of adults participates as well. As Scratchers program and share interactive projects, they learn important mathematical and computational concepts, as well as how to think creatively, reason systematically, and work collaboratively: all essential skills for the 21st century. Indeed, our primary goal is not to prepare people for careers as professional programmers but to nurture a new generation of creative, systematic thinkers comfortable using programming to express their ideas.

In this article, we discuss the design principles that guided our development of Scratch and our strategies for making programming accessible and engaging for everyone. But first, to give a sense of how Scratch is being used, we describe a series of projects developed by a 13-year-old girl with the Scratch screen name BalaBethany.

BalaBethany enjoys drawing anime characters. So when she started using Scratch, it was natural for her to program animated stories featuring these characters. She began sharing her projects on the Scratch Web site, and other members of the community responded positively, posting glowing comments under her projects (such as “Awesome!” and “OMG I LUV IT!!!!!!”), along with questions about how she achieved certain visual effects (such as “How do you make a sprite look see-through?”). Encouraged, BalaBethany then created and shared new Scratch projects on a regular basis, like episodes in a TV series.

References:

http://scratch.mit.edu

http://istockphoto.com

Archives