How do computers think?
This is precisely the question that brings us to an interesting branch of computer science known as computational thinking. Computational thinking is all about understanding how a computer’s “thought process” works and learning to think in a similar manner. In this blog post, we’ll dive into computational thinking and use some examples to illustrate its principles.
Let’s start with an example: A woman asks her husband to go to the kiosk around the corner and get some bread. She adds, “If they have eggs, bring six.” The husband goes to the kiosk, comes back with six loaves of bread.
In this scenario, the husband has understood the instructions a little too literally, just like a computer would. However, this is not how a human would generally react, because computers and humans work differently.
In computational thinking there are four major ways how to help solve a problem like a computer would solve it:
Here is a example: How do you make a cake? A simple task for us, but a challenging one for a computer.
Decomposition involves breaking a problem into smaller, more manageable parts. It encourages us to think about the individual aspects of making a cake; for example, cutting ingredients, putting in ingredients, mixing ingredients, baking the cake, etc. By solving each of these smaller problems, we can eventually solve the entire problem at hand.
Pattern recognition is all about identifying patterns and recurring elements in a problem. For instance, when making a cake, we notice that every cake requires ingredients in specific amounts, has a baking time and temperature, and ingredients are added in a particular order.
Abstraction is the process of taking a specific example and creating a generalized model. Instead of focusing on a specific cake recipe like Black Forest or strawberry cake, we create a generic cake model that has ingredients, baking time, temperature, and an order for adding ingredients.
Finally, the algorithm is a step-by-step set of instructions that utilizes our generic cake model to make the cake. It guides us through the process of assembling ingredients, following the order of addition, preheating the oven, baking for the required time, and so on.
When it comes to tasks that are simple for us, but complex for a computer, computational thinking allows us to break down problems into manageable components and find effective solutions.