What is Computational Thinking?
Computational thinking (“computational thinking” seems to be a more appropriate term in Russian, but in RuNet it is the first option that is more common) is the concept of systematically approaching a problem in order to then create a solution that a computer can implement. Simply put, before teaching a computer how to solve a particular problem, a person must understand the problem itself and how to solve it, and computer thinking is a technique for precisely this. This concept was proposed by mathematician and computer scientist Seymour Papert in 1980 as a theoretical basis for more effective problem solving. In education, computational thinking as a concept began to gain popularity following a note by computer science professor Jeannette Wing in 2006, who proposed introducing computational thinking into children's education as a fundamental skill that all people should have.Four Pillars of Computational Thinking
Computational thinking as a technique is based on four key methods.-
Decomposition.
Dividing a complex problem into a number of smaller and solvable problems.
-
Abstraction.
Focusing exclusively on information important to the decision and ignoring unnecessary details.
-
Pattern recognition.
Search for similarities between the problem under consideration and others that have already been solved in order to transfer already proven approaches to it.
-
Algorithms.
Developing a step-by-step solution to a problem or rules for solving it.
Application of Computer Thinking in Life
By and large, computer thinking as a method goes far beyond programming, and its components are constantly used by most people when solving problems of varying levels of complexity. A classic basic example: you need to get from point A to point B in an unfamiliar city. To decide which path to take, you:- You divide this task into a number of smaller ones (decomposition): study the map and possible route options, choose a method of travel to point B, etc.
- You then rate the attractiveness of different routes based on their length, the presence of points of interest along the way, or ease of travel (an abstraction).
- Then you think about your options based on past travel experiences in other cities that are most similar in size and urban landscape (pattern recognition).
- Based on all this, you choose the most suitable route and method of transportation (algorithms).
Learning and developing Computational Thinking skills
As for the study of computer thinking as a technique and discipline, today there are quite a lot of materials available on this topic for those interested. Thus, the International Society for Technology in Education (ISTE) offers everyone a free course, Computational thinking , developed with the support of Google , intended also for technical specialists. You can also find a free course on computer thinking on the Coursera resource, for example. Programs in computational thinking, both for students of different levels and for teachers, are also offered by the Academy of Robotics at Carnegie Mellon University . And finally, in computer thinking one of the dominant roles is played by logic. To train it, it will be useful to regularly solve problems and puzzles , for example. Below is a simple, basic approach to learning, developing, and consistently using the four basic computational thinking techniques.-
Decomposition practice.
Just try to apply this principle (if, of course, you are not already doing this) to various kinds of tasks and problems that need solving. The trick here is to train your mind to use this approach on an ongoing basis without conscious concentration. Despite the fact that dividing one problem/task into a number of smaller ones is a rather banal solution for many (especially in programming), not everyone knows how to apply it and does it regularly.
-
The practice of abstraction.
Abstraction is simply focusing on the information that is most relevant and important to solving a specific problem. It works in conjunction with decomposition, where you break a problem down into a number of subtasks and focus on them one at a time, looking for only the information you need to solve the problem at hand.
-
Practice pattern recognition skills.
As you practice computational thinking, which begins with decomposition, your pattern recognition skills will also develop. The approach here is the same as for decomposition - just practice looking for similarities with other, already solved problems. Pattern recognition allows you to solve problems faster by using thought patterns that are already practiced and familiar to your brain.
-
Practice the skill of forming algorithms
Here, again, the key is adapting the brain to use this system. Our lives are filled by default with algorithms that we call habits. You just need to pay conscious attention to the formation of algorithms. Moreover, this applies not only to work or training, but also to many other everyday things. For example, the basis of the fight against procrastination , which we talked about recently, also, by and large, lies in the conscious formation of algorithms (along with pattern recognition).
GO TO FULL VERSION