Previous Communications viewpoints have discussed the crisis in school computing teaching.1,4,5 In many countries, school computing lessons have degenerated into the teaching of office skills, often by unqualified teachers. Students typically found this boring and uninspiring. There is a worldwide movement to tackle this problem, manifest in the U.K. by the Computing at Schools organization (CAS), the Royal Society report Shutdown or Restart?6 and Google Executive Chairman Eric Schmidt's McTaggart Lecture at the 2011 Edinburgh Television Festival.
It is important to create a community of toolmakers rather than just tool users. To achieve this we must teach schoolchildren to program, but this is not sufficient. Students also need to think computationally: to use abstraction, modularity, hierarchy, and so forth in understanding and solving problems. It is also necessary to employ a pedagogy that is informed by the latest research into the most effective ways to teach computing.