Let’s Teach Kids to Code
MIT’s Mitch Resnick speaks to the TED audience about the advantages of teaching kids to “code”. “Coding” is short for computer programming. Traditionally, when one thinks of programming, one imagines a complex system of computer scripts; a system of symbols only a small number of people have the skillset to control and manipulate. Resnick’s announcement that we need to teach our kids to code certainly raises several questions in teachers, questions such as: How do we teach kids to code when we ourselves are unfamiliar with the skill? What are the benefits of teaching our kids to code? What curriculum areas will coding address?
Coding in SCRATCH
Resnick proposes that we use SCRATCH, a program created for children as young as 8 years old. SCRATCH software is free to download for home use, and children will be able to learn some coding basics through a highly visual interface. SCRATCH is different than more traditional coding programs since blocks are connected together in order to code in SCRATCH. Programming instructions include repetitive controls, variables and action handlers.
In a review of SCRATCH posted in Common Sense Media by Carla Thornton it states, “Kids can learn to make their own animations, video games, art, and music videos with Scratch’s visual block-based form of computer programming. It may seem easy to stack blocks using commands such as “move 10 steps” or “turn 15 degrees,” but kids can quickly learn valuable programming concepts like loops and conditionals, as well as bottom-up problem solving. Collaboration is encouraged, and fellow Scratch kids can give helpful comments on each other’s projects.”
Resnick argues that as students become fluent with new technologies, they will be able to express themselves using those technologies, moving them from passive consumers of technology to creators and critical thinkers. As students learn to code, they will code to learn.
Other ways learning code benefits kids include:
- learning about variables within meaningful contexts, as opposed to questions posed in a textbook;
- experience with the process of design, how to experiment with new ideas, and how to fix bugs when something isn’t working;
- students develop the ability to think creatively and systematically;
- it encourages self-expression.
All these benefits make a strong case for educators to try SCRATCH for themselves.
I myself have attempted to play with SCRATCH on a number of occasions, and until I sat down and actually viewed several tutorials, I really couldn’t do more than get the object on the screen to make funny noises and walk a few steps. However, once I sat and watched this tutorial available on YouTube, I was able to create a moving aquarium.
My 8-year old son watched the tutorial with me, and was also able to easily create a moving aquarium, drawing the background himself rather than using pre-existing images. All in all, we had some fun doing this, but we were also able to experience some very simple programming. Once we had a basic idea of the rules and conditionals one must follow to get the desired action, SCRATCH was a lot of fun! I was so excited when I was able to bring my characters to life by setting up a system of commands. I can appreciate the experience it provides for young students to learn how variables and conditionals work together to create a desired effect. This is truly bottom-up problem solving at its best, as kids move from one step to the next in order to complete their project according to a desired end-product.
In Ontario, our Math curriculum places a great deal of emphasis on the importance of students developing problem solving skills where they are able to see patterns and connections among the various Math strands, and apply them in every-day situations. Critical thinking is also at the core of our Literacy programs, where students are expected to make connections and inferences about texts they have read and media they have viewed. Having taken the time to explore and learn to use SCRATCH, I understand and agree with Resnick – coding is a great way for students to engage their critical thinking skills and develop problem solving abilities. It seems that learning to code will provide our students with transferable skills that can be applied in all areas of curriculum.
Also, visit 10 Places Where Anyone can Learn to Code in order to find other programs suited to your students’ age, ability, and interests.
This video originally appeared on TED and can be found by clicking here.
Mitch Resnick’s TED profile can be read by clicking here.