In latest Wired Magazine (September 26, 2013) opinion piece, Forget Foreign Languages and Music. Teach Our Kids to Code, Brendan Koerner builds interesting argument for teaching computer programming in kindergartens and grade schools.
Extensive research has shown that because young brains are so adept at picking up languages, it’s best to introduce children to foreign tongues as early as possible. This is why so many ambitious parents are now clamoring for kindergartens that offer intensive Mandarin—they want to give their kids the best possible shot at learning a key language of the Asian century.What those parents likely don’t realize is that the same neural mechanisms that make kids sponges for Mandarin likely also make them highly receptive to computer languages. Kindergartners cannot become C++ ninjas, but they can certainly start to develop the skills that will eventually cement lifelong fluency in code. And encouraging that fluency should be a priority for American schools, because it is code, not Mandarin, that will be the true lingua franca of the future.
In the past five years, however, a number of groundbreaking projects have begun to prove that consensus wrong. Besides Gibson’s tic-tac-toe and graph theory lessons, there is Scalable Game Design, a curriculum developed at the University of Colorado that challenges kids to code their own versions of Frogger. At P.S. 185 in Harlem, children as young as 4 are using a language called Cherp to make robots perform household chores. And it’s happening overseas too: In Estonia an initiative called ProgeTiiger is striving to teach coding basics to all first graders.Perhaps you remember the turtle. In the early to mid 1980s, the Logo programming language, with its iconic turtle-shaped cursor, was the fad in American elementary schools. By using Logo’s simple commands to create intricate graphics, kids were supposed to develop mastery over the Apple IIe’s that had begun to appear in their living rooms.
But Logo seldom delivered on its lofty promise. The main problem was not the language itself but the lackluster way in which it was taught: Many instructors simply plopped students in front of computers for an hour a week and hoped for the best.
The resulting disillusionment coincided with the emergence of media that transformed school computers from exploratory tools into library aids. “CD-ROMs came out, then the World Wide Web appeared, so you didn’t need to know commands to interact with the computer,” says Yasmin Kafai, an education professor at the University of Pennsylvania. Programming vanished from elementary schools for decades, even as computer science became an ever more popular pursuit at the collegiate level. A cultural consensus seemed to spring up: Kids should be taught a nebulous set of “computer skills,” but programming—well, that was for grown-ups.
What all these initiatives have in common is an emphasis not on memorizing how to use specific tools but on developing familiarity with the general concepts that underpin all programming—sequencing, conditionals, debugging.
...Yet teaching programming is not just about creating an army of code monkeys for Facebook and Google.Just as early bilingualism is thought to bring about cognitive benefits later in life, early exposure to coding shows signs of improving what educators call “computational thinking”—the ability to solve problems with abstract thinking. And even for students who never warm to programming, whose innate passions lead them toward English degrees rather than software engineering, understanding code still has great value. -- Brendan I. Koerner