# Exploring Computational Thinking

**Exploring Computational Thinking** is one of Google’s latest endeavors in K-12 curriculum. Computational thinking (CT), according to Google, involves a set of problem-solving skills and techniques that are commonly used by software engineers to write computer programs.

Several of this computational techniques are the following:

- Problem decomposition: the ability to break down a problem into sub-problems
- Pattern recognition: the ability to notice similarities, differences, properties, or trends in data
- Pattern generalization: the ability to extract out unnecessary details and generalize those that are necessary in order to define a concept or idea in general term
- Algorithm design: the ability to build a repeatable, step-by-step process to solve a particular problem.

Several mathematics teachers and Google engineers collaborated to create lesson examples on how to incorporate CT in K-12 curriculum. Some of these lessons have incorporated Python programming.

A related talk to this topic is Conrad Wolfram’s teaching kids real math with computers.