Computational Thinking

What is Computational Thinking?

Computational thinking is the ability to solve problems by learning to think like a computer or a computer scientist. This involves analyzing a complex problem, developing possible solutions to the problem, and formatting the solutions so that they can be carried out by a computer (or a human). One example of computational thinking is baking a cake.

The core components of computational are:

  1. Decomposition: Break the problem into smaller chunks. For baking a cake, that might involve thinking about the components of a cake (frosting, decorations, and the cake itself).
  2. Pattern recognition: Identify similarities or patterns that can help you solve the problem. For baking a cake, you might need to think about how many repeating layers the cake will have.
  3. Abstraction: Remove any unnecessary details that don’t help you solve the problem. For baking cake, that might mean the order in which you prepare the ingredients is not important.
  4. Formatting a general solution: Once the problem is broken down accordingly, take those pieces, solve them individually, and put them together logically. For baking a cake, this can mean determining the steps to make the cake batter, frosting, and decorations, and then putting the completed components together to make the cake. For example, you wouldn’t decorate the cake before you frost it.

Although these are the core components, there are additional computational thinking concepts and approaches in the picture below.

Image courtesy of Barefoot Computing (
Image courtesy of Barefoot Computing.

How Can You Assess Computational Thinking?

We have two computational thinking tests designed for Grades 5-12 teachers and students. The tests were developed with the support of the Callysto Project and the Government of Canada (Innovation, Science and Economic Development Canada) CanCode program.

Researchers can freely use the tests to track and analyze changes in computational thinking among teachers and students, and publish their results (please see the proper citations at the end of each test). Teachers are also welcome to use these tests.

Want to Participate in Callysto’s Classroom Research Study?

If you're interested in using Callysto to teach data science and computational thinking in your classroom, and would be willing to contribute to a study about its effectiveness, fill out our research study form.