Computational thinking

2,445 views

Published on

This slideshow explores definitions of computational thinking and associated concepts. It was originally developed for student teachers.

Published in: Education, Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,445
On SlideShare
0
From Embeds
0
Number of Embeds
478
Actions
Shares
0
Downloads
94
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Computational thinking

  1. 1. COMPUTATIONAL THINKING THINKING LOGICALLY AND ALGORITHMICALLY
  2. 2. WHAT IS COMPUTATIONAL THINKING?
  3. 3. “Computational thinking will be a fundamental skill used by everyone by the middle of the 21st Century. Just like reading, writing and arithmetic.” Wing (2011) Computational Thinking
  4. 4. SO WHAT IS COMPUTATIONAL THINKING? “Computational Thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent.” Cuny, Snyder, Wing (http://www.cs.cmu.edu/~CompThink/)
  5. 5. SO WHAT IS COMPUTATIONAL THINKING? “Well it is a collection of diverse skills to do with problem solving that result from studying the nature of computation. It includes some obviously important skills that most subjects help develop, like creativity, ability to explain and team work. It also consists of some very specific problem solving skills such as the ability to think logically, algorithmically and recursively. Computer Science is unique in the way it brings all these diverse skills together.” http://www.cs4fn.org/computationalthinking
  6. 6. SO WHAT IS COMPUTATIONAL THINKING? Computational Thinking is a problem-solving process that includes the following characteristics: • Analyzing and logically organizing data • Data modeling, data abstractions, and simulations • Formulating problems such that computers may assist • Identifying, testing, and implementing possible solutions • Automating solutions via algorithmic thinking • Generalizing and applying this process to other problems. http://en.wikipedia.org/wiki/Computational_thinking
  7. 7. 3 DIMENSIONS OF CT 1. Computational concepts Computational concepts that are common in many programming languages. Sequences, loops, parallelism, events, conditionals, operators, and data. 2. Computational practices Being incremental and iterative, testing and debugging, reusing and remixing, and abstracting and modularizing. 3. Computational perspectives Expressing, connecting, questioning. Brennan & Resnick (see „Further Learning‟)
  8. 8. WHAT IS AN ALGORITHM?
  9. 9. WHAT IS AN ALGORITHM? “An algorithm is like a recipe: it must be followed exactly, it must be unambiguous, and it must have an end.” Source unknown
  10. 10. CARD TRICK
  11. 11. LOGICAL AND ALGORITHMIC THINKING ACTIVITIES
  12. 12. SEARCHING ALGORITHMS Binary Search http://csunplugged.org/searching-algorithms
  13. 13. SORTING ALGORITHMS Quick Sort http://csunplugged.org/sorting-algorithms
  14. 14. LOGICAL REASONING Routing and Deadlock | The Orange Game http://csunplugged.org/routing-and-deadlock
  15. 15. WHAT IS DECOMPOSITION? “The ability to break down a task into minute details so that we can clearly explain a process to another person or to a computer, or even to just write notes for ourselves. Decomposing a problem frequently leads to pattern recognition and generalization, and thus the ability to design an algorithm.” http://www.google.com/edu/computational-thinking
  16. 16. WHAT IS ABSTRACTION? “The ability to filter out information that is not necessary to solve a certain type of problem and generalize the information that is necessary. Pattern generalization and abstraction allows us to represent an idea or a process in general terms (e.g., variables) so that we can use it to solve other problems that are similar in nature.” http://www.google.com/edu/computational-thinking
  17. 17. WHAT IS ABSTRACTION? “…the art of taking the details out of a problem so that you can make a solution work for many different things.” http://games.thinkingmyself.com
  18. 18. EXAMPLES OF ABSTRACTION 1. A daily planner uses abstraction to represent a week in terms of days and hours, helping us to organize our time. 2. A world map is an abstraction of the earth in terms of longitude and latitude, helping us describe the location and geography of a place. 3. In mathematics, we write generalized formulas in terms of variables instead of numbers so that we can use them to solve problems involving different values. http://www.google.com/edu/computational-thinking
  19. 19. FURTHER LEARNING Computer Science Unplugged http://csunplugged.org Computer Science for Fun http://www.cs4fn.org Computer Science Teachers Association http://csta.acm.org/Curriculum/sub/CompThinking.html Card Trick http://www.cs4fn.org/mathemagic/cardshuffle.php Centre for Computational Thinking http://www.cs.cmu.edu/~CompThink/ Thinking Myself http://games.thinkingmyself.com Brennan, K. & Resnick, M. (2012) New frameworks for studying and assessing the development of computational thinking AERA

×