Computational thinking is a problem-solving process that involves various techniques and thought processes borrowed from computer science. It includes skills such as decomposition, pattern recognition, abstraction and algorithmic thinking, enabling individuals to tackle complex problems by breaking them down into more manageable parts, identifying patterns, and developing step-by-step solutions. Computational thinking is not just about programming; it is a fundamental skill that can be applied across various disciplines to enhance critical thinking and analytical abilities.
As technology continues to integrate into virtually every aspect of our lives, fostering computational thinking skills from an early age prepares students for the demands of the modern workforce. By integrating computational thinking into the curriculum, educators can equip students with the ability to approach problems systematically and creatively, making them more adept at navigating the challenges of the digital age.
Introducing Computational Thinking
Computational thinking is widely considered to have been derived in 2006 by J. M. Wing, who used the term in a 2006 essay in the publication Communications of the ACM. A similar phrase, “procedural thinking,” was used 10 years earlier by S. Papert, who was part of MIT’s department of mathematics and who helped develop the LOGO programming language in the 1960s.
While its modern definitions pertain to computer science, computational thinking has long been an inherent system of problem-solving used in our everyday lives in industries from science to art. However, it isn’t until more recently that this process has been defined and named.
With computational thinking being better defined and understood, teachers and other instructors can better enable students with tools and processes to solve complex problems in a more strategic, repeatable way.
Computational Thinking Definition
Computational thinking is the process of identifying a clear step-by-step solution to a complex problem. It begins with breaking down a problem into smaller pieces, recognizing patterns and eliminating extraneous, then creating a step-by-step solution can be replicated.
Computational thinking is termed “computational” because it draws directly from the core principles and methodologies of computer science. This approach involves framing problems in a way that a computer—or an algorithm—can assist in solving them, leveraging concepts such as algorithms, data structures and automation. It emphasizes the use of precise, logical steps that can be replicated and executed by a machine, making the problem-solving process more efficient and scalable. By thinking computationally, individuals learn to break down complex tasks into smaller, more manageable sub-tasks, recognize patterns and trends, and create generalizable solutions that can be automated, all of which are foundational elements in the realm of computing and programming.
This pattern of problem-solving is used in our daily lives not only in computer science, but also in language, history, science, math and art. While there is such a thing as “unplugged” computational thinking, modern computational thinking often includes a solution involving technology, such as a computer, to execute the algorithm.
4 Parts of Computational Thinking
Regardless of whether computational thinking is being used in computer science or another subject area, the process of computational thinking can be broken down into four parts or steps.
1. Decomposition
The first step in computational thinking is decomposition. While this may be called different names based on the school of thought, the basic process is the same: to solve a complex problem, you must first break it down into smaller, more manageable parts.
Decomposition is an important part of computational thinking because it helps make a problem more manageable (you’ve probably heard the expression that the “best way to eat an elephant is one bite at a time”). It also helps problem solvers to better define and understand the problem being solved while enabling them to simplify the problem through pattern recognition and abstraction.
2. Pattern Recognition
Part of computational thinking is also pattern recognition. This is the process of identifying patterns or connections between different parts of the bigger problem. The purpose of pattern recognition is to further simplify the problem by finding where details may be similar–or different–as well as building a continued understanding of the more complex problem.
3. Abstraction
Abstraction is the process of extracting the most relevant information from each decomposed problem. This helps to define, or generalize what, exactly needs to be done to solve the problem as a whole. This step of the computational thinking process helps students identify how these important details may be used to solve other areas of the same problem.
4. Algorithmic Thinking
The final component of computational thinking is algorithmic thinking. This is the process of defining a step-by-step solution to the problem that can be replicated for a predictable and reliable outcome. For the modern definition of computational thinking pertaining to computer science, this solution will be a step-by-step process that will be completed by a computer. However, this process can also be completed in part or in whole by humans.
Final Thoughts
Whether in the computer science industry or in everyday life, computational thinking can be an extremely helpful tool in defining and solving complex problems. Teaching and reinforcing computational skills in children’s education can help not only to promote career-ready skills such as computer coding, but also to better manage the challenges students will face in the future.
Learn more about computational thinking in our free eBook, “The Ultimate Guide to Computational Thinking for Educators.” Download the book now by clicking the button below.
This article was originally published in April 2022 and was reviewed, revised and updated in September 2024.
Learning.com Team
Staff Writers
Founded in 1999, Learning.com provides educators with solutions to prepare their students with critical digital skills. Our web-based curriculum for grades K-12 engages students as they learn keyboarding, online safety, applied productivity tools, computational thinking, coding and more.
Further Reading
Improve Student Performance on Online Assessments with Digital Literacy
Online assessments have become increasingly prevalent in education, especially with the rise of digital learning environments and the need for...
Overlooked Digital Skills Students Need to Thrive in a Digital World
As the digital landscape continues to evolve at a rapid pace, educators, parents and policymakers are increasingly focused on preparing students for...
Creating a Classroom Guide to “Netiquette”: Promoting Respectful Online Behavior
In today’s digitally connected world, the importance of teaching students how to conduct themselves online has never been greater. The term...