Defining Computational Thinking, Take 2

Computational Thinking, Education, MSU MAET

In his book Mindstorms: Children, computers, and powerful ideas, Seymour Papert describes a vision of the use of computing and related thinking tools in education that is eerily prescient yet is far from being fully achieved. Taking into account ideas from Papert (1980), a broader definition of computational thinking can be reached than in my prior post: Computational Thinking is a mode of thought that is informed by or aided by computers. I view it now as not only problem solving skills, but also ways of building and authenticating knowledge or even as a different way of perceiving the world.

Through my readings, I’ve also come to realize what computational thinking (CT) is not. It’s not how computers think, since they don’t think in the sense that humans do, but how to pair human ingenuity with computer processing (Wing, 2006). Wing also points out that it’s not just computer programming, although software developers have used CT even before the term was coined, but a way of approaching problems.  Papert (1980) argues that the use of a computer so fundamentally changes how the mind works that it need not always be present, as it acts as “a carrier of cultural ‘germs’ or ‘seeds’ whose intellectual products will not need technological support once they take root in an actively growing mind” (p.9).

By considering learning through the prevailing constructivist theory that learners build their own knowledge through integration with prior knowledge, Papert (1980) argues that educators must provide the materials for mental construction. This could take the form ranging from textbooks to lab equipment used in open inquiry. He notes that a computer in particular can be a uniquely powerful material since it allows understanding to take place that would otherwise occur much later in a learner’s development, if at all (Papert, 1980). Papert places the burden on the culture in which this learning takes place, where some concepts are easily understood due to the wealth of materials available from an early age, while other concepts, such as the provided example of combinatorics, are more difficult to teach due to lack of materials. Having students create programs or algorithms that demonstrate solutions to problems that would otherwise be difficult to conceptualize at that age is a powerful way to harness CT.

What Papert (1980) refers to as “mechanical thinking”  (p.27) can then be added to the arsenal of thinking tools. While this algorithmic approach would not be appropriate in many ill-defined domains, students can still recognize situations where it can be helpful. There is a host of thinking skills that result from interacting with computers, including: decomposition, pattern recognition, abstraction and algorithmic design (“Exploring computational thinking,” n.d.). For young students, this could be as simple as following a recipe or providing directions on a map. As accessible languages and visual tools have proliferated, even elementary students can engage in programming computers to further develop CT skills.

Programming as a means for developing CT empowers students by providing greater ownership of their learning through the creation of useful projects of their choice (Papert, 1980). This resonates with my thoughts on using the maker movement within the classroom, since making provides greater freedom to students to direct their learning than many project-based learning approaches would. While the thinking skills found in CT can seem very analytical and rigid, the types of problems being tackled in computing typically have multiple ways to reach solutions, which can foster creativity if that freedom is provided to students.

Papert (1980) also points out that CT provides an opportunity for reflective learning. During my time in software development, we accomplished this through code review meetings, where we would debate the validity of proposed implementations. With students, this process can occur much earlier on as they struggle with an open-ended problem. Thought processes that would otherwise remain invisible become documented within a computer program and discussions that result.  Even when the best laid plans turn out to have flaws, this provides students with the opportunity to “overcome fear of being wrong” (Papert, 1980, p.23). Allowing students to fail (with a safety net in place) then discover what went wrong and how to correct it is a tantalizing learning opportunity that reflects real world practices.

Perhaps most significantly, the proliferation of computing and ways of thinking that result provide the means for transforming education (Papert, 1980). In what is sometimes known as transhumanism, humans are no longer alone in our ability to process information, but are aided by devices that fit into our pockets, are worn, or even embedded in everyday devices. Some skills are thus devalued, such as the ability to recall information, while others become even more precious, such as making empathetic decisions. Current curriculum does not often reflect this change, but by integrating CT skills, schools can begin to explore the implications.

This understanding of CT is still just a starting point for discussion in what is a relatively young field. Papert definitely takes that approach that programming is at the heart of developing thinking skills in computing, but I’m interested in exploring the topic beyond programming and discover the many ways we can find to integrate it into our teaching methods.


Exploring computational thinking. (n.d.). In Google for Education.  Retrieved from

Papert, S. (1980). Mindstorms: Children, computers, and powerful ideas. Basic Books, Inc..

Wing, J. M. (2006). Computational thinking. Communications of the ACM,49(3), 33-35.

Leave a Reply

Your email address will not be published. Required fields are marked *