Computational thinking (CC) is a problem- solving approach that allows individuals to solve problems using the basic concepts and methods of computer science . This way of thinking involves the application of systematic, logical, and algorithmic methods to solve problems. In her article published in 2006, Jeannette M. Wing defined CC as a way of thinking that everyone can use the basic concepts of computer science, and emphasized that this approach is important not only for computer scientists but for all disciplines .
BİD enables individuals to break down complex problems into smaller , more manageable pieces, recognize patterns among these pieces, focus on important information by abstracting away unnecessary details, and develop step-by- step solutions. This process helps solve problems more effectively and efficiently and develops skills such as critical thinking, problem solving, and creativity.
An image representing computational thinking (Created with artificial intelligence.)
Components and Sub-Dimensions
The CC consists of various sub-dimensions, representing different stages of the problem-solving process. Each sub-dimension helps individuals analyze and solve problems more effectively.
Decomposition
Decomposition is the process of breaking down a complex problem into smaller, more manageable, and understandable pieces. This approach allows each component of the problem to be addressed separately and solution strategies to be developed in a more focused manner. For example, in a software development process, dividing the project into different modules allows each module to be designed and developed separately . In this way, the project management and debugging processes become more efficient.
Pattern Recognition
Pattern recognition is the process of identifying similarities and repetitive structures between different problems or data sets. This process helps develop strategies that can be used to solve new problems based on past experiences. For example, the ability to solve different problems in mathematics using similar solutions is a result of pattern recognition. This skill helps individuals develop faster and more effective problem-solving skills.
Abstraction
Abstraction is the process of focusing on important and relevant information while ignoring details that are not necessary to solve a problem. This approach facilitates understanding of the basic structure and essence of the problem. For example, showing roads and important points on a map and removing unnecessary details is an example of abstraction. In this way, users can access the information they need more quickly and effectively.
Algorithm Development
Algorithm development is the process of creating step-by-step instructions for solving a problem. These instructions describe the path to follow to achieve a desired result, starting from a specific starting point. Algorithms are used in computer programming as well as in solving problems encountered in everyday life. For example, the steps in a recipe can be thought of as an algorithm. This process allows problems to be addressed in a systematic and orderly manner.
Generalization and Transference
Generalization and transfer is the process of evaluating the applicability of a solution developed for a problem to similar problems. This approach allows the knowledge learned and the skills developed to be used in different contexts. For example, the ability to apply a mathematical formula to different problems is a result of generalization and transfer. This skill develops the ability of individuals to think flexibly and helps them adapt to different situations.
Validation and Testing
Validation and testing is the process of evaluating whether the developed solution achieves the desired result and its effectiveness. This process is necessary to increase the reliability and efficiency of the solution. For example, testing a software in different scenarios is important to identify and correct possible errors. This approach provides quality control in solving problems and offers continuous improvement opportunities.
Educational and Social Importance
Computational thinking (CC) aims to enable individuals to not only interact with technology , but also to make sense of it, manage it, and use it productively. In this respect, it is not limited to the field of informatics; it provides a framework that develops the problem-solving capacity of individuals in every discipline, from mathematics to science, from social sciences to art and design .
Teaching computational thinking skills, especially at preschool and primary school levels, is important for cognitive development. Parsing, pattern recognition and algorithmic thinking skills acquired at an early age help children learn faster, think analytically and produce creative solutions in their later lives.
BİD supports critical thinking skills. Questioning the cause and effect of a problem, analyzing alternative solutions, and following logical processes when making decisions are direct products of this structure. At the same time, abstraction and algorithm development processes contribute to the individual's development of creative solutions.
The correct use of the opportunities brought by the digital age depends on individuals being not only technology users but also conscious producers and directors. At this point, BİD guides individuals in areas such as digital literacy, safe technology use, and interaction with artificial intelligence . This ensures the formation of a more conscious society and a participatory digital culture.
Interdisciplinary Applications
Computational thinking is a tool that enables the analysis, decomposition and structuring of complex structures in different areas. These skills are applied in different disciplines.
• Mathematics: CAT is indispensable in areas such as analyzing formulas, solving problems by dividing them into stages, and recognizing patterns. Algorithmic flowcharts or code-like thinking skills in problem solving form the basis of mathematics education.
• Science: Scientific processes such as designing experiments, controlling variables, and testing hypotheses overlap with the decomposition, abstraction, and evaluation dimensions of computational thinking. Additionally, artificial intelligence and data analytics are increasingly finding a place in contemporary science education .
• Social Sciences: Analysis of historical events, establishing cause-effect relationships, and interpreting data sets are supported by pattern recognition, abstraction, and transfer skills. Maps, population data, and historical documents can be analyzed within an algorithmic structure .
• Art and Design: Pattern recognition, algorithmic editing and creative abstraction are at the forefront in areas such as digital art production, pattern creation, interactive interface design. BİD is important in these areas in terms of both technical equipment and creative mind development.
Computational Thinking Today
In developed countries and Türkiye, computational thinking has begun to be at the center of education policies. The Ministry of National Education included coding and algorithm-based training in the curriculum in 2018. The basic sub-dimensions of BİD are included in the “Information Technologies and Software” courses at the primary school level. At the same time, modules for these skills are being developed in teacher education programs. Institutions such as ISTE (International Society for Technology in Education) and CSTA (Computer Science Teachers Association) publish guides to integrate computational thinking skills into education programs at the global level. Many countries have developed BİD-focused programs in line with these standards from kindergarten to university. The need for a technology-focused workforce has ensured that BİD has found a place not only in education but also in employment policies. In many professions such as software development, data science, engineering, and finance , algorithmic and abstraction-based problem-solving skills are among the competencies sought in candidates.
Computational thinking is a set of mental skills that are considered fundamental within the framework of digital literacy in our age. This way of thinking, which appeals not only to computer scientists but to all individuals, provides the ability to perform systematic analysis, develop solutions, transfer learned information to different situations, and produce creative syntheses.
Introducing it at an early age not only helps students become successful individuals, but also helps them become productive members of the digital society. Computational thinking, which can be applied in a wide range from education to industry, from art to engineering, is a strategic key in building the society of the future .