Mitch Resnick has been working on how to give students new avenues of creative expression for over a decade. His Lifelong Kindergarten group at the MIT Media Lab develops Scratch, one of the most popular coding programs for kids, which is based on the seminal work of Seymour Papert, who died in 2016. When Resnick thinks about the guiding philosophy behind Scratch, he thinks of one of its users — Ipzy.
Ipzy started using Scratch when she was 11. She loved to draw and heard that Scratch might help her animate her art. Her first Scratch project was a simple animation where the eyes and ears of her drawing moved subtly. “You can almost see her here dipping her toe in the water of something new,” said Resnick during a presentation at the International Society for Technology in Education conference.
Over time Ipzy started making more complicated projects in Scratch. She created the Lemonade Time game in which players wander through a world gathering the ingredients to make lemonade. She started to become well-known in the Scratch online community as someone who made things other people liked, and people started asking if they could use her artwork in their projects. That led Ipzy to rebrand herself as Ipzy Studios, but she freely allowed others access to her artwork, with permission to modify, as long as they credited her.
“She was becoming a good citizen,” Resnick said. “In additional to sharing her artwork she was also beginning to share the things she was learning about programming.” Ipzy, like so many other kids passionate about a topic, began making tutorials about how she did things like make a scrolling background. She not only shared her code, but she also commented on it to point out tricky things. And, she started to get comments and feedback, which she actively responded to, sometimes even changing a game or project by popular demand.
Resnick loves the story of Ipzy because her evolution within the Scratch community illustrates the four key ingredients his team thinks are integral to a great experience: projects, passion, peers and play. Ipzy wasn’t using Scratch because someone told her coding would be an important skill for her future. She was using it to express her creativity in new ways.
“We created Scratch to give people new ways to think about things,” Resnick said. For him the project is at the center of that goal. “A project is a way to put your idea into action. As kids work on projects, they learn core ideas in a meaningful context.”
The project reflects kids’ passions, but also what they are learning. One kid made a Scratch project to accompany his reading of Charlotte’s Web. In his animation, the pig gets smaller as it moves away. That shows his learning about perspective, as well as math, because in order to make the code do that he would have had to multiply by a fraction. Resnick loves that projects allow kids to integrate their knowledge across disciplines in natural ways.
As coding programs for kids have proliferated, Resnick believes even more firmly in the project as the foundational unit because it springs from kids’ creativity and is not constrained by the program. He worries about coding software that emphasizes the syntax of the code rather than the creativity of the project. He acknowledges that many of these puzzle-based games are fun and kids like them, but he wishes kids had more freedom of expression within them.
“I really question whether kids doing this are going to be creative with the technology and learn to really express themselves,” Resnick said.
He believes strongly in the power of passion to drive learning and cites motivation research showing that when external rewards like badges are introduced they may give an initial boost of excitement, but long-term motivation diminishes.
That’s why collaborative, peer-to-peer learning is so important to the Scratch developers. In many ways creating for and alongside other people helps provide the internal motivation that an external reward cannot stimulate. Resnick likes to point out that Ipzy started coding because she loved to draw and wanted to add animation to her craft, but she stayed because of the Scratch community.
“We launched the programming language and the online community at the exact same time,” Resnick said. “To us they are inextricably linked. Being part of a community is part of that creative learning process.”
People tend to expect collaborative learning environments in the physical world, but have a harder time creating them in the digital world. Ipzy’s Lemonade Time game is a good example of how powerful an online community can be. Her game was viewed over 15,000 times by other users, so she had an audience, which motivated her. Several thousand indicated they loved the game, and perhaps even more flattering, dozens of people made variations on her project.
There were comments, suggestions, and questions about why she’d made certain choices. Ipzy engaged with these comments and made changes based upon them, illustrating how something becomes better when people think about it together.
The Scratch team puts a lot of effort into moderating the community to maintain the type of positive, safe environment where kids like Ipzy can play — not just to have fun, but to take risks, test boundaries and try new things. The blocks themselves are easy to set aside and pick up later, so there’s no negative consequence to trying something new. That playful spirit is cultivated and carefully nurtured.
Using this history of projects built on passions, in community and with a playful spirit, the Scratch team is gearing up to release a new version of Scratch. They’re integrating feedback from educators and users by making teacher accounts, learning resources, in-person communities and several new features to the actual program.
The new version of Scratch is being designed to work on mobile devices, so it will be lighter and more flexible. The developers are redesigning the blocks to be more finger-friendly and to look more horizontal, akin to the Scratch Jr. blocks, which can be used for the lighter, smaller projects likely to be created on a mobile device.
The team is also working on a way to integrate the physical world with Scratch using what they’re currently calling a “Scratch Pad,” but whose name could change. Its design is intentionally minimal, just a small round object with a knob, a button, a slot and sensors inside.
— Katrina Schwartz (@Kschwart) July 13, 2017
“We want to make it easy for people to build around it,” Resnick said. The team is currently thinking the slot would allow cardboard to be the universal connector, and kids could build from there. The simplicity of the hardware means it can become part of anything, a controller for a game, an accelerometer, anything a kid might want to program.
“We see Scratch as a type of building,” Resnick said. “Kids are building programs with Scratch, so we really want to give them the experience of building in the physical world and in the computational world.”
The developers are testing these new features out on a separate ScratchX site, where they’ve posted open-source code for the various extensions that could work with other types of physical devices like Lego WeDo, Arduinos or even text-to-speech. The idea is to make it easier for kids to write programs in Scratch that control or manipulate things they have built in the physical world.
“We also want to make it really easy for other people to add their own extensions,” Resnick said. “We don’t want to be the bottleneck.” Other developers have already posted some of those extensions to the ScratchX site. Resnick hopes to have an alpha version of Scratch 3.0 running by early 2018 so a wider community can begin playing with it on the ScratchX site. Then later in the year they’ll integrate the 3.0 version with the existing Scratch website and community. The developers hope, but aren’t promising, that everything will be ready for the start of school in 2018.
Scratch developers demonstrated how kids could use many kinds of materials to build physical objects around the “Scratch Pad,” which could then be programmed with Scratch. (Katrina Schwartz)
“We put the tool out there, but we continue to be amazed and delighted by ways teachers and kids and parents are making use of it in ways that we would never have imagined,” Resnick said. “We hope the new version will continue to lead to more creativity.”
Scratch started as a tool for kids, not as an ed-tech tool built for classrooms, so managing Scratch projects has been challenging for some teachers trying to use Scratch in the classroom. Now, teachers can create a teacher account, signified by a purple bar at the top, and then can create classes. From within the class, the teacher can send a sign-up link so students can sign up for the class and create an account within the class. This process does not require separate email sign-ons for each student, a process Scratch developers heard from teachers was very challenging. The class accounts ask for less information and are more managed by teachers. Students cannot link their existing personal Scratch account to the class, but they can keep it separate for their own use.
Within class accounts, teachers can manually change student passwords, assign work, send updates and moderate student behavior. If a student does something against the policies of the Scratch community, moderators at MIT will send an email to the teacher. Teachers can also create studios, like assignments, and all students in the class will automatically be followers of the studio, receive updates and be able to add to it.
It’s important to know that if a teacher closes a class, all the accounts associated with it will close, too. And there’s not an easy internal way to transfer projects from a student’s class account to his personal one. However, he could download the project and re-upload it to his personal Scratch account in order to preserve the work after the school year is over.
“When we were doing our initial exploration, some teachers really wanted a walled garden,” said Kasia Chmielinski, the product lead for Scratch at the MIT Media Lab. They wanted their students to use Scratch without being part of the wider Scratch community. “Our philosophy at Scratch is that the community is a really important part of the learning,” Chmielinski said. “They come for the coding and stay for the community.” That’s why the developers decided not to offer a walled garden option. The closest thing to that functionality would be working in offline mode, which will still be available. Teachers can email the Scratch team to convert their personal accounts to teacher accounts.
Scratch developers at MIT are also trying to build up the supportive materials they offer to teachers who want to get started using Scratch in the classroom. They’ve built Learning Resource Cards that are downloadable and modifiable so teachers can change them to suit their needs. They’ve also invested in a coordinator to support in-person meetups of people who use and love Scratch. While the online community is robust, they see value in supporting people to meet, play and program face-to-face as well.
The changes to Scratch 3.0 indicate the developers value input from the educator community, and see teachers as a core user group of their product. They don’t want to lose their core philosophy around projects, passion, peers, and play in the process, but rather spread those ideals to schools and classrooms that use Scratch.