Last year, I went to Nigeria with Mark Zuckerberg. One of the first stops on the trip was a program that taught kids how to code.
When Zuckerberg entered the room, many of the young students had a hard time pulling themselves away from their projects, even to gawk at one of the world’s richest men. Facebook’s founder instead came to them.
“What are you making?” he’d ask. And they would proudly say, “A game!” or whatever it was, and begin showing him how it works. Zuckerberg would stop them. “Show me the code!” he’d say, because, well, he’s Zuckerberg, and any occasion is ripe for an ad hoc programming review. And that’s when the kid would click on a menu that toggled from the game to the LEGO-like building blocks of a Scratch program.
This happened several times, with kids ranging from ages 8 to 15. In every instance, the maker of a cool project could clearly show this famous visitor how he or she had methodically implemented a plan. Zuckerberg was clearly impressed. As we headed up the stairs to leave the building, Zuckerberg called out to me, “Scratch! Have you heard of this?”
Oh, yes I had. Though it was not yet released to the world when Zuckerberg left Harvard to launch his quirky little startup, Scratch (developed just a couple of T stops away) is quickly becoming the world’s most popular computer language for kids taking their first bite of programming.
Last year, over 120 million people came to its site, and many of them built and shared projects, at a rate of a million a month. “It’s the gateway drug for Silicon Valley engineering,” says Fred Wilson of Union Square Ventures, a Scratch supporter.
But I also knew that Scratch, celebrating its 10th anniversary this month, was something more than training wheels. A product of the MIT Media Lab, Scratch is steeped in a complicated set of traditions—everything from educational philosophy to open source activism and the pursuit of artificial life. The underpinnings of this tool subtly, and sometimes not so subtly, convey a set of values through its use.
So while those kids in Nigeria were hopping onto a stepping stone to a computer science career, they were also absorbing a very specific and in some ways quirky set of values that could be called hackerish, in the classic sense. These values include reverence of logic, an unshakeable belief in the power of collaboration, and a celebration of the psychic and tangible rewards of being a maker.
Scratch’s supporters, which include a number of funding programs, a cadre of passionate adherents in the education world, and an entire foundation devoted to its distribution, might disagree with my conclusions. But as I looked into Scratch’s success in its first decade, I found that the coolest part of the story was not how it effectively prepares kids for “real” coding (though that’s pretty cool). What really impressed me was how it taught kids to think like hackers.
Mitchel Resnick came to MIT to be close to Seymour Papert, a legendary figure whose treatises on computer science and education virtually established the way people think about that combination. “I really believed in his mission and his dream,” says Resnick. “Computers should not be used just to deliver information, but to empower kids to express themselves and engage with powerful ideas.”
One of Papert’s most noted contributions was Logo, a simple computer language for kids. Though Resnick loved the language — he introduced a variation of it in his PhD thesis — eventually he came to bemoan its limitations. “Logo hadn’t kept up with the times,” says Resnick, who by the 1990s was heading a group at MIT’s Media Lab charmingly dubbed the Lifelong Kindergarten Group.
One of his projects was establishing a series of after-school “Computer Clubhouses” in low-income communities, a program eventually funded by Intel. “We saw that lots of kids wanted to create their own interactive stories, games, and animations, but there weren’t good tools to do it,” he says. So in 2003, he and his team wrote a National Science Foundation request that proposed a beginner’s programming system that improved on Logo in three ways:
- More tinkerable. “Logo was too fussy — like most text-based programming languages, getting the syntax and punctuation right was very important,” says Resnick. But you could build Scratch projects by dragging and dropping blocks that represented functions, building a program very much like a LEGO structure. This wasn’t surprising, because Resnick’s group had been instrumental in helping LEGO come up with the ideas and technology that would lead to that company’s Mindstorm products.
- More meaningful. Scratch is based on doing things. This jibes directly with the Papert mission of helping kids express themselves with technology, as a way of helping them learn about the world and themselves. The best way to do this, figured Resnick and his team, was to give Scratch access to the rich media kids encountered online — music, photos, voice, and video.
- More social. “If you’re creating things, you want an audience,” says Resnick. So from the get-go, with a single click on a prominently placed button, Scratchers could put their work online and get feedback and shoutouts from the community, and even make friends with potential collaborators. At the same time, they would be inspired and informed by what others were creating.
Like the hacker culture that sprang from MIT decades earlier, Scratch reflected the mindset of the small community that built it. They designed their values into it. “We were doggedly idealistic,” says Karen Brennan, who joined the team soon after launch, and now, as an associate professor at Harvard, studies Scratch and helps teachers integrate it into their curriculums. The open-source mentality was built deep into Scratch, which has always been free to anyone. And anything made with Scratch is automatically part of the Creative Commons.