What is computational thinking? It’s a way of thinking we can adopt from computers to solve analytical tasks with ease. Why would we want to think like computers, you might be asking? And how do we teach it to children, be it in the classroom or at home? We’re here to offer you the basics!
First things first – what is computational thinking?
While coding is a phrase and catchword that usually steals the spotlight – and rightfully so, as it is the new bread and butter of modern education – we often forget that coding is only the application of skills that one must first learn. How? For instance, by embracing concepts that lead one to understand what coding is all about. One such concept is computational thinking.
Think of what computational thinking is as a kind of prerequisite to coding, or as the theoretical lessons on driving that you need before you sit into a car and start turning the wheel and stepping on pedals. Or, better yet, the language you must first learn in order to read a book written in it.
So how does an engine or a language work? In other words, what is computational thinking all about?
More than anything, computational thinking is a problem-solving thought process or a way of analytically examining issues at hand that helps us understand the complex world of technology step-by-step. It’s not overly complicated, but neither is it an all-round solution to every problem related to tech. But most importantly, it’s a skill children can easily grasp with the right kind of approach – and even without any electronic tools being required (but they can be used too).
Let’s break what computational thinking is into smaller components.
The approach itself consists of four steps:
2. Pattern recognition
4. Algorithm design
Decomposition is when a problem, like a mathematical equation or a musical sheet that needs to be played, is broken down into smaller bits that are easier to digest. Pattern recognition is the part when one looks for commonalities in the bits, or a repeating trend. This note was used here and is used there again, therefore, we’ll use similar keys and position our hands on the piano the same way! (You get the idea.) Or, alternatively, it encourages students to search for experiences from their past and think of how they solved or approached those.
In the abstraction part, students are encouraged to identify general principles while filtering out the unnecessary or disturbing bits. Don’t focus on the details, take a good look at the whole picture. Don’t think of all the details you’re going to use in your essay, write an outline! Don’t think of all the little pieces of LEGO, look at those pillars that can help you build a stable base of your next construction. Lastly, the algorithm design section refers to a moment when the individual steps to solving a problem are compiled to form a succinct road to a solution.
Now, this all sounds nice and clear, but how do you teach it to a five- or even nine-year-old?
Believe it or not, each of these concepts can be incorporated into your every-day classroom (or, if you’re an ambitious parent with some teaching skills, in your home), and with, more or less, ease.
You can start teaching decomposition by introducing your students to various problem-solving scenarios. Imagine any practical or impractical problem – from building a sandcastle to planning a tea party – and ask them to list the things they make to achieve their goal. What do you need to build a sandcastle? Who do you need to call and what do you need to buy for a tea party? How can you prepare a tea feast? Children are naturally inclined to think of problems as a one-at-a-time issue, but you can effectively motivate them to imagine the step-by-step scenario as well. Start small and eventually progress to more complicated goals. Help them practice to either visualize or verbalize the process they’re describing to be able to imagine it better and to solidify their ideas into reality as they speak them out loud.
Pattern recognition is the key to any type of analytical thinking, and especially to coding. Reading through long lines of code and finding mistakes, key components or even a new interesting approach to solving a particular coding problem requires one to have thoroughly practiced their pattern recognition skills. But we’re getting ahead of ourselves with the long lines of code. For starters, ask your pupils to find common features in common objects they have around them. Ask them to describe their properties, ways of use, modality, help them see the trends. From household appliances to natural objects – there’s order in everything, one only needs to look closely enough to recognize it. What do these plants have in common? What about those cars? If abstract thinking is still a challenge, ask your pupils to draw their object of interest as well as their findings (common features). Help them understand that they are not that different in their key aspects.
Once you graduate from this relatively challenging lesson, get to the most challenging by far – abstraction. Abstract thinking is something humans develop as they grow, and while children have an incredibly impressive imagination, those two things are not quite the same. While imagination can run wild, abstraction calls us to picture things and problems from the real world in new patterns and settings in our head, which, on command, is not exactly easy. But in a way, it’s what we do when we read a book (no matter at what age) and manage to extract a plot line, theme, motifs, and perhaps even a takeaway from all those long lines of text and dialogue. We are able to sort through the heaps of information to extract a specific pattern or relationship between the data and put a name on it. Ask your pupils specific questions about the content you just discussed in class, or have them fill out exercises after reading, and increase the complexity of their tasks as their abilities develop.
Lastly, algorithms. This might be a scary point – after all, aren’t algorithms extremely complex? Well, not if you break them down (see what we did there – decomposition!). Algorithms can be most easily broken down as sort of recipes. In other words, a list of specific actions given in a specific order that yield a specific result. You can’t get the amounts and steps wrong, otherwise, you won’t end up with a cake but with a weird object whose consistency will remain the eighth wonder of the world. Sequence, details, results. Ask your pupils to break up literally any activity into an order. What do you do to get ready in the morning? How would changing the individual steps change the overall results? What about leaving some out? Adding new ones?
Many teachers face challenges when trying to implement computational thinking in their classrooms. Tech tools and resources are not available to them or to their students, and often, they thus lack the means to learn about these concepts themselves before they can pass them on to students. What is even more unfortunate, people think complicated tools are required to teach coding or, for example, understand what computational thinking even is, but as we’ve just established, that is simply not the case. Teaching these skills is actually a widely interdisciplinary affair and can be achieved through the resources that every teacher has in their class and school – such as books, everyday objects and most importantly, their pupils’ wild imagination.
Further resources, like our professional Robo Wunderkind curriculum, which are available online, can also help. One does not need to immediately start working with complex robotics tools to get started. As educators, we have the duty to help children understand and grasp concepts they will need in their future careers and professions, ones that they are at any case attuned to adopt as the digital natives they are.
If you look at the benefits, it’s not difficult to see why. So what are the benefits of learning computational thinking for elementary school students? For instance, deep analytical skills, a profound understanding of not just technology but the functioning of the world around them and how things relate to one another, a more easy-going attitude towards technology, and confidence when interacting with it. These are skills children will need in their future careers, and it’s best to start teaching them early.
Now that you know what computational thinking is, it hopefully looks much less intimidating to you. Remember: you absolutely have the resources to teach it; in fact, why don’t you start practicing now? Take steps 1-4 and apply them to whatever activity you did right before you started reading this article.