By Sheena Vaidyanathan
“I think I fixed it, can I upload my program?” “Can you test my app?” “I just need to add a help menu.”
These are not remarks at a Silicon Valley technology startup, but from an animated conversation in a classroom of 10- and 11-year-olds in the Los Altos School District in California. These fifth- and sixth graders are experiencing the excitement of computer programming through Scratch, a tool designed by MIT. They are creating their very first fully functional program.
As part of a district-wide program called Digital Design that I teach, every student from fourth through sixth grade is exposed to computer programming in addition to 2D and 3D design. The first assignment this trimester was to create a drawing program – a computer version of the popular Etch-A-Sketch toy. Students learned some fundamental programming concepts, then wrote their own programs. The project was deliberately open ended and the creative results surprised me.
Most of these students have never programmed before, and certainly did not think of themselves as computer experts. But in less than two hours (three classes), they created programs with help menus, keyboard shortcuts, menus to change colors, brushes, paper and more. Imagine what they could do with a little more time and experience!
Drawing Programs Samples
The second project was to create a simple video game, and it was constructed in five classes. Students learned programming concepts such as iteration, conditionals, and variables in the context of game design. As before, the the students showcased their originality.
Here’s an example: Use arrow keys to collect bananas without touching the dino.Learn more about this project
About 900 students have learned programming through Scratch in the last 2 years via the Los Altos School District’s Digital Design program. The examples shown are just a small sample taken from the last trimester. More Scratch projects can be found on the Digital Gallery on this website.
What is particularly remarkable about these projects is that every student in the public school district takes this class. The projects are not just made by students who are already predisposed to computers – the “wanna-be computer geeks.” One student told me right at the beginning that she does not like computers. The class also includes English language learners who just transferred to the school district. There are also several special education students who are mainstreamed for this program. This is a case of everyone learning programming in school, not the select few who know that they want to and can afford to take an expensive computer camp.
These students may not choose to be computer scientists, but they have learned computational thinking, an important digital-age skill. (See more on computational thinking on the ISTE website). They will be able to use these skills to solve problems in a wide range of fields in the future. There has been much written about the need to go beyond teaching the use of computer programs and to actually teach how to make computer programs. Douglas Rushkoff makes a good case for learning programming in his book Program or Be Programmed: Ten Commands for a Digital Age: “When human beings acquired language, we learned not just how to listen but how to speak. When we gained literacy, we learned not just how to read but how to write. And as we move into an increasingly digital reality, we must learn not just how to use programs but how to make them. ”
The most exciting part for a computer scientist and Silicon Valley resident like myself is that some of these kids are now passionate about programming. They are working on Scratch projects during recess and at home (Scratch is a free download from MIT).
Eventually, one of these kids may go on to create the next Hewlett Packard, or the next Apple or the next Google. I like to think that the future of Silicon Valley is in good hands; this new generation of creative computer programmers will keep our innovative spirit alive.
This article was posted on Digital Art for All by Sheena Vaidyanathan, who teaches 3D design and computer programming to students in the Los Altos School District in California.
Watch Rushkoff’s video about the importance of learning to program: