John Naughton’s suggested syllabus for teaching computing

This morning I read John Naughton’s great Observer article on “Why all our kids should be taught how to code”

John Naughton is professor of the public understanding of technology at the Open University and what I loved about the article, aside from his obvious love for wanting to share and impart knowledge, was the following suggestions for what we should start teaching.

Here’s what he suggests:

  • Algorithms (the mathematical recipes that make up programs)
  • Cryptography (how confidential information is protected on the net)
  • Machine intelligence (how services such as YouTube, NetFlix, Google and Amazon predict your preferences)
  • Computational biology (how the genetic code works)
  • Search (how we find needles in a billion haystacks)
  • Recursion (a method where the solution to a problem depends on solutions to smaller instances of the same problem)
  • Heuristics (experience-based techniques for problem-solving, learning, and discovery)

That’s a pretty tasty and hefty list and I can immediately see that some of the topics will require a minimum age group e.g. Computational biology, Heuristics and I suspect that I’d argue that these are subjects that could be considered “Further learning”.

If we’re going to radically overhaul the way computing is taught we need to get the balance right and not put anyone off the subject and that’s a really important part of this exercise.

There are many comments on the online Observer piece that articulate just that concern but this will be a work in progress and all things considered I think we have to dive in and see how the children respond.

In my short, experience as a father, one thing I know for sure is that you should never under estimate a child’s ability to learn something new quickly – quicker than probably you or I would! No-one likes being condescend to so let’s start this project by not doing that 🙂