Monday, 4 May 2015

Computational thinking

Back in Weeks 1 and 2 we began to explore the concept of computational thinking however, this week it was revisited in more depth.  According to Stephenson & Barr (2012) "computational thinking is a problem-solving methodology that can be automated, transferred and applied across subjects."  The Australian Curriculum states that through computational thinking students can develop transferrable knowledge and skills across curriculum areas and their personal life (ACARA, n.d.).  Through utilising this kind of thinking "students become not merely users but tool builders" (Stephenson & Barr, 2012), putting their critical and creative  thinking skills into action in order to solve problems they become actively involved in the process as opposed to being static users. 

Computational thinking is a key term throughout the Digital Technologies curriculum, in particular the thinking processes involved which are:
  1. Decomposition - taking problems and breaking them down into more manageable sections
  2. Patterns - grouping according to similarities and differences
  3. Abstraction - taking details of a problem to make a solution work for many different problems
  4. Algorithms - a set of instructions for completing a task (ACARA, n.d.; ThinkingMyself, 2011)
By utilising the processes listed above students can devise a solution to the problem as they have used critical thinking skills to consider the most effective way to complete a task.  I thought that the image below was a simple way to explain computational thinking concepts and approaches.

Sourced from: http://barefootcas.org.uk/barefoot-primary-computing-resources/concepts/computational-thinking/

So what could computational thinking in the primary curriculum look like?  It can take many forms and does not have to be completed digitally it can also be used for 'unplugged' activities for example in science where children may be doing a unit on the weather  and be required to work out what types of clothes they need in winter or summer (decomposing) (CAS Barefoot, 2014).  They may then need to create a set of instructions for someone to follow in order to adequately get dressed (algorithms) (CAS Barefoot, 2013).  We completed an 'unplugged' activity in our lecture this week which was programming a robots emotions using three facial features (eyebrows, eyes and mouth) with five different options for eyebrows and eyes and three for the mouth labelled A, B, C, D and E.  We first cut out three strips (eyebrows, eyes and mouth) and then inserted this into the robots three slits which were carefully cut into his face following the red lines.  This allowed us to freely move the strips in and out to programme the emotions so that they could become interchangeable - see images below.

This is the paper robot and its emotion machine.  As you can see above the robot is happy which is represented by the code AAA however, this can be changed to portray a range of emotions using this simple coding system (see below).
 

 To program angry the code would be BEB
 
 
To program sad the code would be ABB

 
To program surprised the code would be EAC

This coding required use of the computational thinking processes, in particular creating algorithms and code in order to represent the different emotions.  I found completing this activity was simple and fun and I think it would be an engaging activity to complete with students in the classroom to introduce them to 'unplugged' ways of coding and realise it does not only have to be completed using digital systems.  From the activity above it is clear that computational thinking is therefore not only a valuable skill to have for computer programming, but it is one which can be utilised across a range of different activities and subject areas and is a beneficial tool to enhance students problem solving skills.

No comments:

Post a Comment