Does it make sense to teach programming to first-graders? Estonia is about to find out.
We've discussed before the debate about whether pretty much everybody in the workforce should learn programming. John Verity's answer was that it doesn't make much sense. Gary Stock explored widespread programming literacy in the context of startups and other entrepreneurial efforts.
Estonia is taking the notion of universal programming literacy even farther. According to a story by Richard Wilson in UbuntuLife.net, that country plans to offer courses in creating Web and mobile apps in every school in the country, beginning at first grade. The initiative, dubbed "ProgeTiiger," is being spearheaded by the Tiger Leap Foundation in Estonia. The organization "saw how many companies struggle to find decent programmers" in the country, according to UbuntuLife.com.
The plan is to train teachers in a number of pilot elementary schools this month, then have them deliver lessons in programming to "primary school students" -- grade level is not specified. Then next year, programming hobby groups would be added for middle-schoolers. Those in high school would have access to "selective courses." Study materials for all of these levels are in the process of being created. The program would be expanded to all schools in grades 1 through 12.
Besides the unknowns of (a) the desirability of teaching programming techniques to a wide variety of people, and (b) the feasibility of teaching such material to young children, Estonia has added (c) teachers who do not necessarily know the subject matter. A month or two of training in an elementary-school curriculum does not a programmer make; far from it.
If Estonia goes ahead with this plan, I have no doubt that they will learn a great deal about the practicality of such a program. So will the rest of the world, to the extent they choose to share their results.
Code literacy programs have been spreading in the US and elsewhere, especially over the last year. The Mozilla Foundation has been sponsoring Summer Code Party events to teach Web development to youth. In addition there are Hack Jams organized by older youth, under the umbrella of the Hive Learning Network.
According to Wired, Mozilla executive director Mark Surman believes that the age range from 8 to 10 years is a critical one: it's when kids decide whether they want to be consumers or creators. To address these kids, Mozilla has developed Hackasaurus, which provides tools for mixing and remixing Web sites in order to learn how they are put together.
Within a couple of years we should have good data in hand as to how well young kids are able to grasp the fundamentals of programming. Within a decade we should be seeing the fruits of these experiments out in the wider world, for good or ill.