« GitHub Repositories for XBRL Examples, Templates, Rules and Other Metadata | Main | Exploring Wolfram »

Computational Thinking is for Everyone

I wrote the paper Computer Empathy to explain, as best as I could, that in order to get a computer to do what you want you have to understand computers and how to get computers to perform work reliably, predictably, repeatedly, and safely.

As it turns out there is another term that conveys the same message: computational thinking.  There is actually a Center for Computational Thinking at Carnegie Mellon University.  The Center for Computational Thinking and Stephan Wolfram, in his blog post How to Teach Computational Thinking, provide good definitions of computational thinking.  I synthasized those definitions and other ideas into my own definition of computational thinking:

Computational Thinking is a thought process involved in formulating problems and their solutions so that the solutions are represented in a logical, clear, and systematic form that can be explained to and effectively carried out by a computer or human.

This five minute video provides an excellent explanation of what computational thinking is and why it is important. (Here is a playlist of 9 videos if you really want to dive in.)  This is an easy to read three page paper, Conputational Thinking written by Jeannette Wing. And finally, here is a 40 minute video that explains Computational Thinking.

Computational thinking is a process, a technique (set of skills and habits), a philosophy. Computational thinking combines aspects of logic, mathematics, engineering, systems theory, and computer science. Computational thinking helps you differentiate: what humans can do better than computers; what computers can do better than humans. Computational thinking is about leveraging computers as a labor saving device through automation of work.

Computational thinking is made up of four elements:

  • Decomposition: breaking a problem down into easy to manage parts.
  • Pattern recognition: spotting what different problems have in common and using what has worked before to help you solve a new problem.
  • Abstraction: focusing on the details that matter and ignorinig details that don't matter.
  • Algorithmic thinking: generate simple steps can be used to solve a problem.

Computational thinking is not just for computer scientists; it is basically for everyone.  Computational thinking is the new literacy for the 21st century.  If you are doing accounting, reporting, auditing, and/or analysis in a digital environment and you are not computational thinking enabled you may not remain relevant.

Computational thinking is about fundamental principles and concepts, not about technology.  Computer Empathy provides principles and concepts; but also digs into the details of how to get computers to perform work effectively.  Others call for essentially the same thing using different terms.  Some call for teaching logic to every high school student. Others use the term critical thinking.


Course in Computational Thinking for Educators

Computational Thinking, 10 Years Later

Computational Thinking Benefits Society


Posted on Saturday, September 22, 2018 at 12:36PM by Registered CommenterCharlie in | CommentsPost a Comment

PrintView Printer Friendly Version

EmailEmail Article to Friend

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
All HTML will be escaped. Hyperlinks will be created for URLs automatically.