Technology in School

Learn to Code, Code to Learn

By Mitchel Resnick     May 9, 2013

Learn to Code, Code to Learn

Is it important for all children to learn how to write?After all, very few children grow up to become journalists, novelists, orprofessional writers. So why should everyone learn to write?

Of course, such questions seem silly. People use writing inall parts of their lives: to send birthday messages to friends, to jot down shoppinglists, to record personal feelings in diaries. The act of writing also engages peoplein new ways of thinking. As people write, they learn to organize, refine, andreflect on their ideas. Clearly, there are powerful reasons for everyone tolearn to write.

I see coding (computer programming) as an extension ofwriting. The ability to code allows you to “write” new types of things –interactive stories, games, animations, and simulations. And, as withtraditional writing, there are powerful reasons for everyone to learn to code.

The recent surge of interest in learning to code, reflectedin sites like codecademy.com and code.org, has focused especially on job andcareer opportunities. It is easy to understand why: the number of jobs forprogrammers and computer scientists is growing rapidly, with demand faroutpacing supply.

But I see much deeper and broader reasons for learning tocode. In the process of learning to code, people learn many other things. Theyare not just learning to code, they are coding to learn. In addition to learningmathematical and computational ideas (such as variables and conditionals), theyare also learning strategies for solving problems, designing projects, and communicatingideas. These skills useful not just for computer scientists but for everyone,regardless of age, background, interests, or occupation.

Six years ago, my research group at the MIT Media Lab launchedthe Scratch programming language and online community in an effort to makecoding accessible and appealing to everyone. Since then, young people (ages 8and up) have shared more than 3 million projects on the Scratch website, withthousands of new projects added every day. Scratch is used in many contexts(homes, schools, libraries, community centers), at many age levels (from elementaryschool to college), and across many disciplines (math,computer science, language arts, social studies). 

We’ve been amazed with the diversity and creativity of theprojects. Take a look at the Scratch website and you’ll find animated stories, virtualtours, science simulations, public-service announcements, multimedia artprojects, dress-up games, paint editors, and even interactive tutorials andnewsletters.

As an example, let me describe some of the projects createdby a young Scratcher who I’ll call BlueSaturn. When BlueSaturn started usingScratch, one of her first projects was a Christmas card with cartoon images ofSanta and his reindeer. Each reindeer was holding a musical instrument and,when clicked, played a different part of the song “We wish you a merryChristmas.” BlueSaturn sent her friends a link to the project as holidaygreeting.

As she worked on the Christmas card, BlueSaturn realizedthat what she enjoyed most was creating animated characters. So she developed aproject that featured a series of different animated characters: dinosaurs,dragons, flying horses. In the Project Notes, she encouraged other members ofthe community to make use of her characters in their own projects – and sheoffered to make custom characters upon request. In effect, BlueSaturn wassetting up a consulting service. We had never imagined that the Scratch websitewould be used this way.

One community member wanted a cheetah for his Scratchproject, so BlueSaturn made an animated cheetah, based on a video that she sawon a National Geographic site. For another community member, BlueSaturn createda bird with flapping wings – and then she posted a step-by-step tutorialshowing how she had created the animation.

BlueSaturn became well-known in the community, and she beganto receive requests to join collaborative teams, or “collabs” as they are oftenknown in the Scratch community. In one collab, BlueSaturn worked with fourother young people from three different countries to produce an elaborateadventure game. BlueSaturn created animated characters while other members ofthe collab developed game scenarios, created music and sound effects, and drewbackgrounds.

In the process of working on these projects, BlueSaturncertainly learned coding skills, but she also learned many other things. She learnedhow to divide complex problems into simpler parts, how to iteratively refineher designs, how to identify and fix bugs, how to share and collaborate withothers, how to persevere in the face of challenges.

We find that active members of the Scratch community startto think of themselves differently. They begin to see themselves as creatorsand designers, as people who can make things with digital media, not justbrowse, chat, and play games. While many people can read digital media, Scratchers can write digital media.

Scratch community members also begin to see the world in newways. As one 11-year-old Scratcher wrote on a public blog: “I love Scratch. Wait, let me rephrase that –Scratch is my life. I have made many projects. Now I have what I call a ‘Programmer'smind.’ That is where I think about how anything is programmed. This has gonefrom toasters, car electrical systems, and soooo much more.”

It has been excitingto watch what young people are creating and learning with Scratch. But this isjust the beginning. This month, our research team is launching a new generationof the Scratch programming language and online community. This new version movesScratch into the cloud, enabling people to program, save, share, and remix Scratchprojects directly in a web browser. The new version also adds many new featuresto enhance opportunities for creativity and collaboration.

But we are awarethat new features and capabilities are not enough. The biggest challenges forthe future are not technological but cultural and educational. Ultimately, whatis needed is a shift in mindsets, so that people begin to see coding not onlyas a pathway to good jobs, but as a new form of expression and a new contextfor learning.

Mitchel Resnick is Professor of LearningResearch at the MIT Media Lab

Technology in School

Learn to Code, Code to Learn

By Mitchel Resnick     May 9, 2013

Learn to Code, Code to Learn

Is it important for all children to learn how to write?After all, very few children grow up to become journalists, novelists, orprofessional writers. So why should everyone learn to write?

Of course, such questions seem silly. People use writing inall parts of their lives: to send birthday messages to friends, to jot down shoppinglists, to record personal feelings in diaries. The act of writing also engages peoplein new ways of thinking. As people write, they learn to organize, refine, andreflect on their ideas. Clearly, there are powerful reasons for everyone tolearn to write.

I see coding (computer programming) as an extension ofwriting. The ability to code allows you to “write” new types of things –interactive stories, games, animations, and simulations. And, as withtraditional writing, there are powerful reasons for everyone to learn to code.

The recent surge of interest in learning to code, reflectedin sites like codecademy.com and code.org, has focused especially on job andcareer opportunities. It is easy to understand why: the number of jobs forprogrammers and computer scientists is growing rapidly, with demand faroutpacing supply.

But I see much deeper and broader reasons for learning tocode. In the process of learning to code, people learn many other things. Theyare not just learning to code, they are coding to learn. In addition to learningmathematical and computational ideas (such as variables and conditionals), theyare also learning strategies for solving problems, designing projects, and communicatingideas. These skills useful not just for computer scientists but for everyone,regardless of age, background, interests, or occupation.

Six years ago, my research group at the MIT Media Lab launchedthe Scratch programming language and online community in an effort to makecoding accessible and appealing to everyone. Since then, young people (ages 8and up) have shared more than 3 million projects on the Scratch website, withthousands of new projects added every day. Scratch is used in many contexts(homes, schools, libraries, community centers), at many age levels (from elementaryschool to college), and across many disciplines (math,computer science, language arts, social studies). 

We’ve been amazed with the diversity and creativity of theprojects. Take a look at the Scratch website and you’ll find animated stories, virtualtours, science simulations, public-service announcements, multimedia artprojects, dress-up games, paint editors, and even interactive tutorials andnewsletters.

As an example, let me describe some of the projects createdby a young Scratcher who I’ll call BlueSaturn. When BlueSaturn started usingScratch, one of her first projects was a Christmas card with cartoon images ofSanta and his reindeer. Each reindeer was holding a musical instrument and,when clicked, played a different part of the song “We wish you a merryChristmas.” BlueSaturn sent her friends a link to the project as holidaygreeting.

As she worked on the Christmas card, BlueSaturn realizedthat what she enjoyed most was creating animated characters. So she developed aproject that featured a series of different animated characters: dinosaurs,dragons, flying horses. In the Project Notes, she encouraged other members ofthe community to make use of her characters in their own projects – and sheoffered to make custom characters upon request. In effect, BlueSaturn wassetting up a consulting service. We had never imagined that the Scratch websitewould be used this way.

One community member wanted a cheetah for his Scratchproject, so BlueSaturn made an animated cheetah, based on a video that she sawon a National Geographic site. For another community member, BlueSaturn createda bird with flapping wings – and then she posted a step-by-step tutorialshowing how she had created the animation.

BlueSaturn became well-known in the community, and she beganto receive requests to join collaborative teams, or “collabs” as they are oftenknown in the Scratch community. In one collab, BlueSaturn worked with fourother young people from three different countries to produce an elaborateadventure game. BlueSaturn created animated characters while other members ofthe collab developed game scenarios, created music and sound effects, and drewbackgrounds.

In the process of working on these projects, BlueSaturncertainly learned coding skills, but she also learned many other things. She learnedhow to divide complex problems into simpler parts, how to iteratively refineher designs, how to identify and fix bugs, how to share and collaborate withothers, how to persevere in the face of challenges.

We find that active members of the Scratch community startto think of themselves differently. They begin to see themselves as creatorsand designers, as people who can make things with digital media, not justbrowse, chat, and play games. While many people can read digital media, Scratchers can write digital media.

Scratch community members also begin to see the world in newways. As one 11-year-old Scratcher wrote on a public blog: “I love Scratch. Wait, let me rephrase that –Scratch is my life. I have made many projects. Now I have what I call a ‘Programmer'smind.’ That is where I think about how anything is programmed. This has gonefrom toasters, car electrical systems, and soooo much more.”

It has been excitingto watch what young people are creating and learning with Scratch. But this isjust the beginning. This month, our research team is launching a new generationof the Scratch programming language and online community. This new version movesScratch into the cloud, enabling people to program, save, share, and remix Scratchprojects directly in a web browser. The new version also adds many new featuresto enhance opportunities for creativity and collaboration.

But we are awarethat new features and capabilities are not enough. The biggest challenges forthe future are not technological but cultural and educational. Ultimately, whatis needed is a shift in mindsets, so that people begin to see coding not onlyas a pathway to good jobs, but as a new form of expression and a new contextfor learning.

Mitchel Resnick is Professor of LearningResearch at the MIT Media Lab

From our Guide

Give Your Kids a Most Excellent Coding Adventure

Give Your Kids a Most Excellent Coding Adventure

further reading

STAY UP TO DATE ON EDTECH
News, research, and opportunities - sent weekly.
STAY UP TO DATE ON EDTECH
News, research, and opportunities - sent weekly.