Blogs

Computational Thinking - What is it and how do I assess it?

By Phil Wickins posted 09-09-2024 09:27

  

Computational Thinking… is it saying ‘DOES NOT COMPUTE!” in a loud monotone voice? Does it mean doing the ‘robot’ dance while acting out children’s’ algorithms? Or is it… dare I say it… ‘thinking like a computer’???

You’ll be glad to hear it is none of these things. Computers don’t even think (not yet anyway, despite the recent surge in projects and products titled ‘AI’ – they are still running programs created by humans and are not sentient...yet!). So what is computational thinking? It’s mentioned in the Computing Curriculum, so therefore it must be important, I must have to teach it and therefore assess it!

In fact, that’s a great place to start; the National Curriculum for Primary Computing. This happens to be the best sentence in the whole primary curriculum (in my opinion!):

“A high-quality computing education equips pupils to use computational thinking and creativity to understand and change the world.”

National curriculum in England 2013
Computing programmes of study: key stages 1 and 2

Nowhere else does it mention pupils changing the world, and for very good reason: almost all future careers now involve the use of computers. Computing is now becoming analogous with reading. And if you’re not sure what that means, join the club, I had to look it up! It is essentially saying that computing is as important as reading when it comes to being able to access other subject areas, other areas of interest, future education, vocations, jobs, careers… our pupils need to be in an environment where computing is prioritised to provide them with the best future opportunities. If you can’t read, you won’t get very far. In these times, if you can’t use a computer, the same applies.

Before we go any further, there is a fantastic short online course from the NCCE all about this topic: Assessing computational thinking in primary schools – free to all teachers in state schools in England.

You’ve probably heard it said that we are preparing children to solve problems that aren’t problems yet, in jobs that haven’t been thought of yet, using tech that hasn’t been invented yet. A primary school friend of mine is an app developer for smartphone platforms. If you’d have told us back then that’s what he’d be doing, well, you can imagine our disbelief. So, computational thinking, above all things, is an approach and a skill set that allows the transfer of knowledge and skills not only laterally across different hardware, software and environments, but is also future-proof – allowing children to adapt to new technologies as they appear. 

Let us define what computational thinking is then, before we can begin to teach and assess it:

Computational thinking skills are the set of mental skills that convert “complex, messy, partially defined, real world problems into a form that a mindless computer can tackle without further assistance from a human.” 
Simon Peyton-Jones 2014

In other words, computers only do what they are told. Exactly what they are told. So if we’re going to use them to solve problems, we have to feed them the correct instructions. But in order to create the correct instructions, we need to think about all the details, what order they need to be in, what we actually want to achieve. For example, we can’t tell a computer to simulate rolling a die for us, until we tell it how many numbers are represented on a die and which numbers they are, and that there is only one of each number. 

We as humans, are great problem solvers. We could apply logic, sequence and all manner of similar approaches to achieve a goal. But then harnessing the power of computers in the outworking of the solution, that completes the process of computational thinking. There are some cornerstone skills that are considered the backbone of computational thinking and they are: Algorithms, Decomposition, Abstraction and Generalisation. These have been added to in some instances to also include Evaluation and Logic.

If you look at the fantastic poster by Barefoot Computing, you’ll notice these listed as concepts down the left hand side:

It’s very important to understand that computational thinking is much more evident and easier to spot in the journey of a computing project, rather than in the final product. When you look at a child’s Scratch program, it is very difficult to see the processes that went on in its creation. However if you can combine the final product with the algorithm the child used to plan and design the project, showing how they decomposed the task, maybe showing edits where they revisited the plan and tweaked it, then even that would be a fantastic piece of evidence showing computational thinking. Here is an example of an algorithm for a maths quiz program; observe how the pupil has also highlighted the elements she does not yet know how to do:

In creating this design, the pupil has essentially made an algorithm. She has decomposed her problem into sections, ready to be programmed into the computer. A conversation could then be had around generalisation; recognising the pattern that each question will have the same code structure and so can be re-used. Planning projects on paper either using a template or allowing children to create their own styles is a great tool for teaching and assessing computational thinking. Again, check out the NCCE course for more information and practical guidance on how to assess computational thinking

Another great way to practise and hone computational thinking skills is using the Bebras Challenge. Bebras run an annual competition that is worldwide, this year it’s 4th – 15th November 2024. You can also complete tasks and challenges from previous years at any time of the year, with a teacher account. 

Do you have any experience of computational thinking? Have you found a great way of teaching or assessing this in your classroom? Please let us know in the comments!

#computational_thinking #LeadingPrimaryComputing #primarycomputing #Algorithms #ProgrammingKS2 #Bebras

0 comments
24 views

Permalink