The introductory programming language Scratch is on the cusp of having its 2 millionth project uploaded to its website. That's an impressive number, and one that points not just to the widespread adoption of Scratch by novice programmers, but to the growth of a vibrant community surrounding the programming language along with the stories and games that are built with it.
For those unfamiliar with Scratch, some background: Developed by the MIT Media Lab, Scratch is a visual programming language for children age 6 and up. Scratch is available free of charge, and the software runs on Mac, Windows, and Linux computers. (Scratch 2.0, which is currently under development, will bring the tool into the Web browser as opposed to being a download.)
TEACHING ABOUT PROGRAMMING
Scratch requires no programming knowledge, and as it's aimed at a young audience, its interface is, by necessity, fairly intuitive. With Scratch, users choose from a selection of blocks that govern motion, color, and sensors, for example and use these to built scripts. These scripts are what makes the program's objects (sprites) perform actions. These building blocks of the Scratch programming language all fit together -- quite literally -- making it easy for users to drag and drop the necessary pieces into their program.
TEACHING ABOUT CREATIVE COMMONS, REMIXING & SHARING
Since its release in 2007, over 850,000 users have joined the Scratch website and have shared, as noted above, almost 2 million projects — from games to animations. That sharing aspect has become a fundamental part of the Scratch community. The projects that are uploaded to the site are licensed under the Creative Commons Attribution Share-Alike License. That means that other users can download the graphics and the source code from these projects and are free to reuse and remix elements from them.
That sharing has led to some interesting responses from users, as Andrés Monroy-Hernández, MIT PhD Candidate and founder of Scratch's online community, has documented in his research (PDF). Monroy-Hernández tracked the responses to remixes from the originators of projects, and he found a wide range of reactions: people were just as likely to leave positive comments on remixes as they were to accuse these remixes of plagiarism.
One solution to this, while maintaining the openly licensed element of Scratch projects, would be to have a technological solution whereby the computer program automatically included some sort of attribution when a project was downloaded and remixed. But according to Monroy-Hernández's research, members of the Scratch community seemed to respond more positively when that credit wasn't automated but was manually given -- whether it appeared in the form of credits within a program or, more likely, as part of the description of the project on the site. Indeed, in some of the follow-up interviews that were conducted, it was this act of manually crediting that made the difference in many users' minds between a project that was a remix and a project that was plagiarism.
"Our fundamental insight is that while both attribution and credit may be important, they are distinct concepts and that credit is, socially, worth more. A system can attribute the work of a user but credit, which is seen as much more important by users and which has a greater effect on user behavior, cannot be done automatically. Computers can attribute. Crediting, however, takes a human."
The lessons gleaned from the Scratch community are applicable to other communities as well -- to classroom projects as well as to other social media sites. Scratch offers young people an opportunity to "imagine, program, share" as its slogan suggests. Often when we talk about Scratch, it's that middle piece -- the programming -- that's the focus. But there are clearly other benefits to participating in the Scratch community -- understanding what it means to build upon others' work and what it means to give credit to others when you do so.