Computational Thinking

Computational ThinkingTeachers of ICT (Information Communication Technology) in England are in the midst of recreating the subject they teach. The UK Government has announced that the current programme of study will not have to be taught from September 2012, and teachers have the freedom to teach ICT how they want during their lessons. So, what should they teach?

You could be forgiven for assuming that a typical ICT course in an English classroom tends to focus on using software. There are some elements of control, and other non-software based learning, but in the main, children are taught how to use software to produce a piece of work that can then be graded. It is a convenient way to meet statutory targets, and the work can be easily assessed by the teacher.

With this disapplication of the curriculum, some teachers are taking advantage, and suggesting that the programme be widened and other elements of Computing be taught as well. Coding and programming in the classroom has caught the imagination of the press, but many teachers think that more can be done. There is a great opportunity here to teach students valuable and useful computing based skills that can be used effectively in any line of employment they choose to go into. Skills based more in Computer Science, than ICT.

Coding and programming are not skills that are suit every student – however, the logical thought process, the ability to spot mistakes, and a willingness to solve a problem that comes from learning to code does form the basis of a solid set of employable traits. (I suspect that many teachers have been teaching these skills for quite some time, even if they referred to it as something else. I also suspect, however, that there are some teachers that have not taught these skills, simply because they didn’t know how to, or because they didn’t have to. The change in the UK ICT landscape could mean that teaching these skills become the norm, rather than the exception.)

The new programme of study in England could be based on Computational Thinking, a term that is credited to Jeannette Wing (Carnegie Mellon University). What is Computational Thinking? Is it just logical thinking and programming? Or is it more than “breaking down a problem into a sequence of operations to solve it” (A McLean, http://yaxu.org/computational-thinking/)?

Is Computational Thinking the ability to separate problems from abstraction? Is it a method for dealing with huge amounts of data? And is it a skill for the few, to be used in specific situations – or is it a skill for the masses, to be used in everyday life? I would argue, it is the latter.

Computer Science for Fun says that Computational Thinking “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/)

Computational Thinking has allowed many other areas to develop in new ways. Science, for example, has made huge developments, thanks to computers being used to analyse massive amounts of data, distributed programming, and data-mining. New ways of organising data has allowed new questions to be asked. Facial recognition, semantic search, and user interfaces have all been influenced by Computational Thinkers. As well these practical applications, Computational Thinking has also helped develop hypothesis and other theoretical work.

The above shows the effect Computational Thinking has already made in society. It has already made its impact, and will continue to do so. There is no doubt that students need to learn how to use software, as they already do, but it is also clear that they are also missing a huge amount as well. They are only being exposed to one side of the coin.

Teaching Computational Thinking will support students to think for themselves, to become independent, to trust their judgements, to be able to identify which problems are easier to solve, to explain concepts clearly, the ability to see things from an alternative perspective, and many others.

This can all be quite abstract, and raises another question. In England, ICT is taught to all children up to Year 9 (14 years old). Is this the kind of subject that can be taught to all children? Or is it a case of those who have a naturally tendency towards Computational Thinking will be fine, and others will struggle?

 

There is much more to discuss. I am looking forward to seeing how ICT in schools will be taught.

 

Image courtesy of Flickr, dierk schaefer

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.