Skip main navigation

Computational thinking

Screen cast about computational thinking
In this short screencast, we’ll consider what we mean by computational thinking.
Computational thinking is at the core of the programme of study for computing. It is the process of recognising aspects of computation in the world that surrounds us, and applying tools and techniques from the computing to understand and reason about the world around us. Computational thinking provides a powerful framework for studying computing, but has a wide application beyond computing itself. It allows pupils to tackle problems in systematic and structured ways, and achieve desired outcomes, as well as unexpected outcomes.
There are plenty of examples in the realm of science fiction in which humans have been outwitted by computers. The idea that they’ll one day take over the world is interesting, but probably rather farfetched. This is because human thinking is possible with incomplete information, while computers need a full set of information to act. It might be possible to programme computers to work on inferences, but the human mind infers things all the time. This is one of the reasons why writing effective computer code is such a skill, because it needs to be free of inference. And humans need to train themselves to be good at spotting this, to read and understand the programmes they create in a literal way.
In primary schools, pupils engage in playful experimentation to start with, but as they get older and more experienced, their computational thinking becomes more systematic, and they debug in planned ways.
In secondary schools, there is both a focus on more complex debugging, and also on evaluating programmes. Pupils begin to consider the effectiveness of the code they create, and compare the use of different types of programming languages in different contexts, as what as beginning to work with textual programming languages. They understand more detailed code, both in terms of how it is structured, and in understanding the impact of changing things, like variables, within a programme.
I’d like to thank Mike [? Quanchel, ?] CAS Master Teacher, for the inspiration for this screencast. If you want to know more about computational thinking, you could try reading a book where many of these ideas again, Seymour Papert’s Mindstorms. Or if you’re looking for something a little more left-field, try Jeremy Kubica’s Computational Fairy Tales. Neither of these are compulsory reading for the course, but you may find them interesting.

In this short screen cast, the idea of computational thinking is explained in terms of both primary and secondary pupils. The aim is just to introduce you to this idea if you have not encountered it before. There are two books as ‘suggested reading’ linked below, if you want to pursue the idea.

Seymour Papert’s groundbreaking book Mindstorms, about how computing develops thinking. This is optional reading

Jeremy Kubica’s Computational Fairy Tales, a quirky but interesting read. This is an optional reading for the course.

This article is from the free online

Teaching Computing

Created by
FutureLearn - Learning For Life

Our purpose is to transform access to education.

We offer a diverse selection of courses from leading universities and cultural institutions from around the world. These are delivered one step at a time, and are accessible on mobile, tablet and desktop, so you can fit learning around your life.

We believe learning should be an enjoyable, social experience, so our courses offer the opportunity to discuss what you’re learning with others as you go, helping you make fresh discoveries and form new ideas.
You can unlock new opportunities with unlimited access to hundreds of online short courses for a year by subscribing to our Unlimited package. Build your knowledge with top universities and organisations.

Learn more about how FutureLearn is transforming access to education