Introduction
Computational thinking is a process of problem-solving and thinking. More specifically, when we meet a complex problem that we cannot address directly, we need to understand the problem and find solutions. Computational thinking can be involved in this process. Indeed, not all problem-solving processes involve computational thinking. There are four critical cornerstones to computational thinking:(BBC 2023, page.1)
-
Decomposition
Breaking down a complex problem or system into smaller, more manageable parts.
-
Pattern recognition
Looking for similarities among and within problems.
-
Abstraction
Focusing on the important information only, ignoring irrelevant detail.
-
Algorithms
Developing a step-by-step solution to the problem, or the rules to follow to solve the problem.
The importance of computational thinking
Computational thinking is not just unique to computer science; it can be closely related to our lives. One of the four critical cornerstones - decomposition - can be widely used in our daily lives.
For example, when I began this coursework, I found this process complicated and needed to know which part to start. At this time, I remembered that computational thinking is a way to solve complex problems, so I started to break this task into several parts: writing content, user interface design, and making webpages using HTML and CSS. Each part has similar patterns: establish a basic structure, divide contents into separate parts, and put these parts into different sections according to structure and importance.
It is also essential for students who are studying computer science for some reasons as following:
- Computational thinking provides a structured method to help us solve complex problems. We can think more clearly and systematically by using computational thinking skills.
- Computational thinking can help us develop the ability of algorithm design, which is the core ability in the computer science field. I will study algorithms and data structures in the spring semester, and computational thinking is a cornerstone for learning algorithms.
- The ways we decompose a complex problem can be different. However, we can find the most suitable way by considering factors, including time complexity and space complexity, to make the solutions efficient.
I want to be an algorithm engineer in the future, and computational thinking provides me with a structured way to think, fosters my creativity and allows me to develop the ability to solve problems. It also helps me express my ideas more systematically when communicating with my partners in teamwork.