Wednesday 16 August 2017

Week 5 - DIGITAL - Computational Thinking

(*My notes)
Computational Thinking
In his book 'Mindstorms', Seymour Papert (1980) stated that 'when a child learns to program, the process of learning is transformed. It becomes more active and self-directed. In particular, the knowledge is acquired for a recognizable personal purpose. The child does something with it. The new knowledge is a source of power and is experienced as such from the moment it begins to form in the child's mind." (p.21)
Computational Thinking is a problem solving process. It is a fundamental skill for everyone, and involves solving problems, designing solutions and systems to solve open ended problems based on multiple variables. We illustrate the concept in this week's session with the following quotes:
“Everyone should learn how to program a computer, because it teaches you how to think.” (Steve Jobs, cited in Sen, 1995)
"Computational thinking is a way humans solve problems; it is not trying to get humans to think like computers." (Wing, 2006)
What kind of thinking are we referring to?
Guess My Number
Number between 100-1
How many moves did it take?
What strategies did you use?
Which was the best one?
We might have adopted different strategies but we still used the same number of moves to get to the answer.
We adopted a problematic approach.
It only takes 7 guesses to find a number between 1 and 100 if you halve the range each time.
Computational thinking
   ... is a way humans solve problems; its not trying to get humans to think like                   computers (Wing, 2006)
What happens within a classroom is quite complex
- a classroom is a system
- a school is a system
- a cluster of schools is a system
- education is a system
To function within these systems you need a variety of strategies to help you manage the complexities withing the systems.
Solving problems by using- decomposition - breaking down data, processes or problems into smaller manageable parts.
- pattern recognition - observing patterns, trends and regularity in data
- abstraction - identifying the general principles that generate these patterns
- algorithm design - developing step by step instructions for solving particular problems (found in every day life - recipes, changing oil in a car) )
According to Google (n.d.), Computational Thinking Means Solving problems by using:
When you think about programming you must start from scratch, you can not assume that the computer knows anything
"Computational thinking is taking an approach to solving problems, designing systems and understanding human behaviour that draws on concepts fundamental to computing." (Wing, 2006)
Scratch for Computational Thinking
Last week we used Scratch with Makey Makey. This week we will be using Scratch for computational thinking. 
Pair Programming
Pair programming is a common technique in agile software development. One member of the pair is the ‘driver’ (does the typing, and focuses on tactics) while the other is the ‘navigator’ (can review and suggest, and focuses on strategy). When pair programming you should change your roles within the pair on a regular basis, and also change your partner on a regular basis.
"This combined effort, which requires frequent role changes between the two developers, and changes of pairing, has been argued to provide benefits such as improved team discipline, cohesion and morale, better code, a more resilient work flow and creation of better solutions. It raises the working knowledge of the entire code base by all the developers, and enables mentoring of team members" (Parsons, Ryu & Lal, 2008).
Scratch Examples 
With Scratch examples you can click the 'See Inside' button to see how the code was written and, if you want to, you can make a copy to modify yourself by pressing the 'Remix' button. This example shows repetition and selection
Digital Curriculum
The draft digital curriculum (MoE, 2017) emphasises computational thinking. We will be looking at part of this document in the session (pages 17-19).

Two areas that the Draft Digital Curriculum talks about focusing in on
    Computational thinking for digital technologies
     Designing and developing digital outcomes

The Maori version of the digital curriculum is not a direct translation of the English version, so the English translation of the Maori document is different to the English version.

Digital Computing
- doesn't involve actual computers/devices until much further down the levels




An optional after class activity is for you to respond to the curriculum content consultation process by filling in the survey at:  http://www.surveygizmo.com/s3/3628791/DT-HM-consultation
References:
Carnegie Mellon University. (n.d.). Center for Computational Thinking. Retrieved from https://www.cs.cmu.edu/~CompThink/
Google. (n.d.). What is Computational Thinking? Computational Thinking for Educators. Retrieved from https://computationalthinkingcourse.withgoogle.com/unit?lesson=8&unit=1
Papert, S. (1980). Mindstorms: Children, Computers, and Powerful Ideas. New York: Basic Books.
Parsons, D., Ryu, H. & Lal R. (2008). Better, Not More Expensive, Faster? The Perceived Effects of Pair Programming in Survey Data. In Proceedings 19th Australasian Conference on Information Systems, Christchurch, New Zealand. Retrieved from http://aisel.aisnet.org/cgi/viewcontent.cgi?article=1020&context=acis2008
Sen P. (1995). Steve Jobs: The Lost Interview, Retrieved from: https://itunes.apple.com/au/movie/steve-jobs-the-lost-interview/id632407040
MoE. (2017). Digital Technologies Hangarau Matihiko. Retrieved from https://education.govt.nz/ministry-of-education/consultations-and-reviews/digital-technology-consultation/
Wing, J. M. (2006). Computational thinking. Communications of the ACM49(3), 33-35.

No comments:

Post a Comment

Change in My Professional Practice

Week 32 Key change in my professional practice It is quite a nice way to finish the last entry in this collection of reflective blogs lo...