Computational thinking is careful reasoning about the methods of doing things. It’s clearly related to, but not identical with, mathematical thinking. Both [computational thinking and mathematical thinking deeply] are involved with abstraction, and reasoning with simplified models.
A number of workshop participants advanced the idea that computational thinking could be better understood as a fundamental intellectual skill comparable to reading, writing, speaking, and arithmetic. Functionally, these fundamental skills are all means of describing and explaining complex problems and situations to others, and computational thinking serves the same purpose. In other words, computational thinking is comparable to other basic cognitive abilities that the average person in modern society is expected to possess.
One participant quoted Niels Bohr, who said, “Science is not to tell us about the universe, but to tell us how to talk about the universe.” Along these lines, computational thinking is another language (in addition to written and spoken language, science, and mathematics) that humans can use to talk about the universe and the complex processes within it.
Roy Pea argued that “as soon as we think about the origins of computational thinking and computational literacies, programming has been at the heartland of the definition and the abstractions that are created as step-by-step algorithmic procedures.” Ursula Wolz supported the view that computational thinking is as essential a skill as reading, writing, and other basic language arts skills, pointing out that “programming is a language for expressing ideas. You have to learn how to read and write that language in order to be able to think in that language.” Mitchel Resnick concurred, arguing that “computational thinking is more than programming, but only in the same way that language literacy is more than writing. They are both very important. Yes, it’s more, but don’t minimize programming just because it’s more.” He went on to say that programming is a particularly important form of expression, and that “programming, like writing, is a means of expression and an entry point for developing new ways of thinking.” Eric Roberts also supported the idea that programming is essential to computational thinking and pointed out “a misguided assumption—that just because programming can be badly taught or that