Skip to 0 minutes and 5 seconds In this short screencast, we’ll consider what we mean by computational thinking.
Skip to 0 minutes and 13 seconds 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.
Skip to 0 minutes and 49 seconds 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.
Skip to 1 minute and 37 seconds 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.
Skip to 1 minute and 52 seconds 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.
Skip to 2 minutes and 25 seconds 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 (with audio), 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.
How important, in your opinion, is computational thinking? How can it be encouraged? Please comment below.