Computational thinking is crucial in today’s society, yet it is largely absent from school curricula. What is it, how should it be incorporated and is it important for education’s overall purpose?
What’s unique about computational thinking is the immense power of modern computation. It’s a highly definitive set of methodologies – a system for getting answers from questions, one rapidly gaining in power and applicability each year. Since the mid-20th century, the rise of mechanised computation is arguably the biggest underlying driver of human progress, and there’s much more of it to come.
But what is it?
Here’s the summary: it’s a four-step cyclic problem-solving process of firstly – Step 1 – defining questions, so – in Step 2 – they can be translated into an abstract form ready for “computation” – Step 3 – to be applied to get an answer, albeit one that – in step 4 – needs interpreting into a real, human answer for the question you’d originally defined. And if your answer isn’t sufficient then you need to iterate through the cycle until it is.
The main point of computational-thinking education should be to empower everyone to creatively and cleverly drive this powerful tool of computation – with the essential machinery of computers – as a key approach to ideas, challenges and opportunities they encounter. The broader and more instinctive its use becomes, the better.
Where is maths in all this? Shouldn’t it be the “computational thinking” subject? Yes, but both in curriculum content and in brand (applications of maths are rarely branded with the m-word), it isn’t remotely meeting the real-world need. The focus of maths education on teaching how to do calculations by hand might have made sense when that was the sticking point in applying maths in life: because if you couldn’t do the calculating, you couldn’t use maths or computational thinking.
Today, it’s the other three steps of the computational-thinking process that more critically need human expertise. Tomorrow’s mainstream maths subject cannot be primarily for gaining experience in uncontextualized, pre-computer application of the computational process. Why? Because that’s so very different from the needs of today’s faster-paced, experimental approach for real, messy problems that can only be solved with a computer.
Paradoxically, the latter requires richer human qualities of creativity and conceptual understanding and must be the primary educational purpose; the magic is in optimizing how process, computer and human knowledge can be put together to solve increasingly tough problems.
Coding, like real-world maths, relies on computational thinking, but again, it isn’t the same subject or a complete route to it. You need computational thinking for figuring out how to extract problems to code and get the computer to do what you want, but coding is the art of instructing a computer what to do; it’s the expertise needed for being the sophisticated manager of your computing technology which includes speaking a sensible coding language, or several, to your computer.
Do other school subjects need to adapt?
Computational thinking is applicable to a very wide range. It is a particular way of thinking that’s highly effective for solving problems. Whether in design (“How can I design an efficient irrigation system”) or history (“What was the key message each president’s inaugural address delivered?”) or geography (“What will be the population of my country in 50 years’ time?”), every subject should envelop a computational-thinking approach.
An important practical question is, can that happen without a core educational subject of computational thinking itself?
Much discussion in the U.S. appears to assume it can, but I don’t think so – not at school level anyway. That’s because the computational-thinking approach needs knowledge of what’s possible, experience of how you can apply it, and know-how of today’s machinery (concepts and tools) for performing it. I don’t think you can only learn this in other subjects; there needs to be an anchor where these modern-day basics (learned in a contextualised way) can be fostered.
This is a profound change; not one that teachers can affect alone.
Politically, there are two primary ways to achieve it: introducing a new core subject or transforming an existing one. Either is a major undertaking, with just-created coding or long-established maths as the only possible existing school subject contenders for the transformational route.
Maths, of course, is a ubiquitous subject; well-resourced, it occupies a big part of the curriculum. But today’s subject is hard to so dramatically reform, not helped by its name becoming rather toxic. Coding is the new kid on the block; too narrow, not fully established and with far less time or money but with a zeal to go to new places.
Make no mistake. Whatever the politics or naming, whoever wins or loses – someday a core, ubiquitous school subject in the space I’m describing will emerge. The first countries, regions, schools that manage this new core and its cross-curricular application will win. And win big.