It seems that everyone wants to code. They are in luck because there are lots of places to learn. Type in “learn to code” in your search engine and you’ll get literally millions of hits.
The obvious answer is that learning to code is a doorway to computer science and perhaps a career in one of the many, many fields that computer science leads to.
But there is another reason to learn to code.
Dr. Michael Resnick of the Media Lab at MIT uses the analogy with reading. First you learn to read, then you can use reading to learn. So you learn how to code and then you code to learn. And as he explains, it’s not just that you learn about computers. You learn about how to take a germ of an idea and turn it into a fully developed game. ((http://www.ted.com/talks/mitch_resnick_let_s_teach_kids_to_code).
The Media Lab has been around since the 1960s, even before there were “personal computers,” and it has been at the forefront of thinking about how computers can be used to learn. What they found was that the computer is a more powerful learning tool when the child programs the computer than when the computer programs the child.
It was at the Media Lab that the programming environment called LOGO was developed in 1968 under the guidance of Dr. Seymour Papert, a mathematician with a keen interest in how children learn.
He saw the child as a builder. How else could it be that children learn so much before they even go to school? They learn to speak, they learn the intuitive geometry that enables them to catch and chase thrown balls. They learn the rules of games and even make up their own games. But of course, a builder needs materials from the environment. A child learns to speak by drawing on the oral language it hears all around him or her from birth. But our culture is often lacking materials for building particular kinds of knowledge. Our culture is quite math- and science-phobic for example. You often hear people saying, “I am no good in math,” or “I am not a scientist,” but you never hear anyone admitting to being poor at reading.
Papert saw the computer as a way to create an environment that was rich with models and metaphors that children could use to build their own understandings and not just in math and science.
In school the child is told that this is the way that you solve a certain kind of problem and then is give some problems of that kind to solve. The next day the problems are graded and the student finds he has missed half of them. His work is wrong. “Try harder the next time.” Since he doesn’t know what he did to get the wrong answer, it will be difficult to act on the advice, “Try harder.”
In the computer environment in contrast, the child begins to work on the problem. Something doesn’t work. But it’s not “wrong;” it’s something for him to fix. When the child is fixing the problem he is also learning what he hadn’t understood which had led to the misstep. The computer environment allows the student to work at learning while he is doing the work.
One of the exhibitors at the SCCMS 2014 STEM Summit in Spartanburg on September 28-29, was Google CS First (http://www.cs-first.com). Google CS First provides an opportunity for schools in South Carolina to set up coding clubs that can be conducted in school, after school and/or during summers for students in grades four through eight. The programming language is Scratch that was developed at the MIT Media Lab by Michael Resnick and his colleagues.
The school does not need to have a Scratch expert to run the club since Google CS First provides scripted lesson plans, especially designed in Charleston for South Carolina schools and students. The school or individual teacher simply needs to contact Google CS First and establish a club. The clubs don’t need to be full year clubs. The materials the lesson plans provide about four weeks of materials so that students could complete a full project in that time. Of course, the clubs can be longer.
The curriculum materials help students design video games, computer music and sound. You can view 6,500,000 examples of the kinds of projects that can be done with Scratch at http://scratch.mit.edu!
You can find more information about setting up a Google CS First Club at your school by visiting the Website at http://www.cs-first.com/content/about-cs-first. You can get your questions asked at CSFirst-Info@google.com.
You can also email JamieSue Goodman, the Technical Program Manager of CS First at firstname.lastname@example.org.