Computational thinking refers to the set of reasoning and problem-solving skills and practices that fully exploit the power of computational tools and media. These comprise a varied and complex set of skills, including 1) facility with using computational tools such as models and simulations, 2) the ability to manipulate, visualize, and interpret datasets, and 3) practices such as programming, problem decomposition, and debugging in order to solve complex problems.
As computational tools have profoundly affected the way most sciences are conducted, some have dubbed computational thinking a new kind of essential literacy. Similarly, leading national reports have called for an increased focus on developing and enhancing computational thinking in America’s students and workforce so as to address critical shortages in the STEM areas.
Of course, for many, learning to engage in computational thinking is hard.
In some cases, these educational programming languages are coupled with external, inexpensive logic boards to create what are called tangible media. Here, learners can create programs to control external devices such as robots that physically demonstrate their program’s behaviors.
Some have argued learning with computational or tangible media can be more engaging, thereby broadening the pool of students typically attracted to these kinds of activities. And while they may be simplified for an educational context, they support students in grappling with complex and legitimate computational concepts.
At present, learning activities involving computational thinking are not well integrated into the standard school curriculum. Yet it is hard to imagine a single scientific or social sciences discipline that does not deeply rely on computation as a key methodology. This is also increasingly true in various aspects of the arts and humanities.
One vision is to develop school curricula and content standards built around engaging teams of students in computational activities that help them gain deeper understanding of disciplinary knowledge. Innovative examples of these approaches are increasingly common around the world, yet their implementations are often piecemeal and not well integrated with the school or districts curricula.
These example include having students:
- build models of biological phenomena in order to gain a deep understanding of processes at both individual and population levels,
- design wearable textiles that can be programmed,
- write programs to automate a digital or virtual pet.
Despite the calls for increased attention on promoting computational thinking, it still remains complex for many learners. Participation in these fields continues to remain low for many demographic groups, including girls.
It is also true that while recent hardware and software tools have continued to drop in costs, many schools do not have the necessary resources to purchase them. As a result, large inequities in access remain.
While organizations such as CSTA have curriculum frameworks for computer science courses, no such frameworks exist for teaching computational thinking, nor is there a widely accepted definition of the core set of skills.
Finally, in the formal school arena, it can be unclear how to integrate computational thinking into the curriculum. As such, many of the most promising educational innovations around computational thinking have taken place in after-school clubs or summer programs.
diSessa, A. A. (2000). Changing minds: Computers, learning, and literacy. Cambridge, MA: MIT Press.
Guzdial, M (2008). Paving the way for computational thinking. Communications of the ACM, 51(8), 25-27.
National Research Council (2010). Report on a workshop on the scope and nature of computational thinking. Washington, DC: National Academies Press.
Papert, S. (1980). Mindstorms: Children, Computers, and Powerful Ideas. New York: Basic Books.
Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3), 33-35.