BEYOND CODING: HOW TO ACTUALLY TEACH COMPUTATIONAL THINKING IN SCHOOLS
Computational Thinking Is Not Coding
CT is commonly misunderstood as being equivalent to the practice of programming. However, the reality is far from this as CT is more of a pre-coding problem-solving paradigm, as proposed by Wing (2006).
Wing argues that CT is a fundamental form of literacy, just as reading, writing, and arithmetic, essential for navigating modern scientific and societal complexity (Wing, 2006).
What is important to educators is not the value of CT, but the question of how to teach CT in a systematic way.
The Plugged versus Unplugged Computational Thinking Paradigm
Another commonly held fallacy is the idea that CT inherently involves computer-mediated activities. Empirical evidence suggests the opposite: Unplugged CT provides a foundation before computer-mediated activities occur (Galanti & Holincheck, 2024).
Unplugged CT (Cognitive Foundations)
Plugged CT (Automation & Simulation)
Unplugged CT reduces cognitive load and promotes abstraction before the introduction of formal coding instruction.
Integrating Computational Thinking (CT) within the Engineering Design Process (EDP)
CT is not to be taught as an independent computer science course. Its power is realized when the entire cycle of the following engineering problem-solving methodologies is considered:
Identify → Design → Create → Test → Improve
The Engineering Design Process naturally incorporates algorithm design, debugging, and other aspects of computational thinking (National Research Council, 2009; Galanti & Holincheck, 2024).
Model-Eliciting Activities (MEAs): Translating Reasoning
Model Eliciting Activities (MEAs) challenge the student to create models for real-world clients, thereby making the student’s reasoning processes visible and transportable across disciplines.
Example: Countdown Timer Project
MEAs promote persistence, tolerance for ambiguity, and skills in system modeling, which are all aspects of a way of thinking called computational thinking.
Block-Based Programming as a Cognitive Scaffold
Environments like Scratch or Blockly are block-based programming environments that help eliminate the complexity of programming language syntax, allowing the student to focus on logic rather than programming language details.
The blocks in Scratch correspond to the following fundamental computer science (CS) concepts:
Use → Modify → Create Framework
Such a progression enables the learner to make a shift from a passive technology consumer to an active computational creator.
Recommended by LinkedIn
The Four Pillars of Computational Thinking
It is recommended that teachers should explicitly teach students about the cognitive architecture of computational thinking:
- Decomposition: This is the breaking down of complex problems into their various, more manageable parts.
- Pattern Recognition: The recognition of patterns to guide solution strategies.
- Abstraction: The process of eliminating unnecessary details to emphasize important features.
- Algorithmic Thinking: A process for defining sequential processes that can be executed by both humans and machines.
Collectively, these pillars comprise the mental operating system that underlies contemporary STEM cognition.
Debugging as Cognitive and Affective Competence
This is because debugging redefines failure in terms of information content. A bug identifies a discrepancy between the desired action and actual system response, which is a basic assumption in scientific epistemology, according to Wing (2011).
Intentional debugging strategies in which pre-embedded errors are addressed promote student resilience and epistemic confidence.
The OSSM: A Conceptual Model of Education in Computational Thinking
I propose the OSSM as a way to conceptualize CT education as a stratified system with four interconnected layers:
Layer 1: Cognitive Systems
Layer 2: Pedagogical Systems
Layer 3: Technological Systems
Layer 4: Societal Systems
In the OSSM model, the traditional view of CT as a single subject is replaced by the view of CT as a multi-layered cognitive-pedagogical infrastructure.
The Bottom Line
Computational thinking is the cognitive operating system of the AI era.
References
Galanti, T. M., & Holincheck, N. M. (2024). Integrating computational thinking in elementary STEM using the engineering design process. School Science and Mathematics, 124(4), 279–286.
National Research Council. (2009). Engineering in K–12 education: Understanding the status and improving the prospects. National Academies Press.
Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3), 33–35. Wing06-ct
Wing, J. M. (2011). Computational thinking—What and why. The Link Magazine.