**Computational Thinking**

decomposition - breaking down a complex problem or system into smaller, more manageable parts

pattern recognition – looking for similarities among and within problems

abstraction – focusing on the important information only, ignoring irrelevant detail

algorithms - developing a step-by-step solution to the problem, or the rules to follow to solve the problem

pattern recognition – looking for similarities among and within problems

abstraction – focusing on the important information only, ignoring irrelevant detail

algorithms - developing a step-by-step solution to the problem, or the rules to follow to solve the problem

(From Wikipedia) - Currently Computational Thinking is broadly defined as a set of cognitive skills and problem solving processes that include (but are not limited to) the following characteristics:

- Using abstractions and pattern recognition to represent the problem in new and different ways
- Logically organizing and analyzing data
- Breaking the problem down into smaller parts
- Approaching the problem using programmatic thinking techniques such as iteration, symbolic representation, and logical operations
- Reformulating the problem into a series of ordered steps (algorithmic thinking)
- Identifying, analyzing, and implementing possible solutions with the goal of achieving the most efficient and effective combination of steps and resources
- Generalizing this problem-solving process to a wide variety of problems

## Links Listed With Wikipedia

**Resources**

From Michael Gorman:

50 Resources for Computational Thinking

What is Computational Thinking: 10 Reasons Why

From Others:

Computer Unplugged

High School Code.org

16 Coding Competitions

15 Ways to Teach Coding

Ignite My Future

Makerspace Coding

How a Makerspace can Teach Coding

Teaching Coding

**Activities From Workshop**

Cookie Mining Activity From Workshop