Reflections on teaching computing science to KS2 pupils
In September 2012 I embarked on a new adventure to teach computing science in four schools. The challenge at the time was to build a new curriculum that included programming and understanding how technology works. Two terms in and we have a new draft computing curriculum that includes a substantial portion of computing science. During this time I have learnt the following things.
Programming is challenging and hard. At the CAS Wessex Workshop Miles Berry described it as ‘struggle ware’, this is an apt description. I can honestly say that in the last six months the learning opportunities and degree of challenge that I have provided have far exceeded anything I have taught in ICT over the previous 20 years. I have really enjoyed seeing pupils rise to the challenge.
Programming is very open ended, which is wonderful for pupils but can be scary for teachers who like to stay in control. There will be pupils in your class who have enough time on their hands to learn more than you. We need to embrace this, encourage them to extend their learning even further and harness their expertise to mentor others. This is one area where you are unlikely to be the expert for long. However far pupils extend their programming knowledge they will still need us to build a framework of computational thinking on which they can hang their new found knowledge and understanding.
The degree of differentiation can be enormous. Pupils enjoy a project so they download the software at home and complete the task outside school. Planning for this is important either by careful questioning that draws out the next step, having extension tasks to hand or new projects they can go on too. I often find by the end of a module of work in Year 5 & 6 that I will have small groups of pupils working on their own projects that have evolved from our common starting point.
It’s important not to be too rigid in our definition of those we see as high flyers and those we see as strugglers. As you switch from one type of programming to another, even within the same language, different pupils will shine as the new task grabs their imagination.
Pupils who have enjoyed the ordered sequence of a well thought out quiz may not be the same pupils who enjoy creating a racing game. Giving children a variety of different types of programming is important. Let’s not get stuck creating endless arcade games or we will lose some pupils interest. Programming is often seen as a male pursuit. I have not seen any evidence of this in the schools that I teach despite the fact that as a man I would expect that I am a stronger role model for boys. But then I do go out of my way to try and teach a variety of different types of programming.
Although at university level the greatest indicator of a person with an aptitude for computing science will be their maths aptitude, things are not quite as clear at primary level. Pupils with the greatest capacity for logical thinking do very well. Whether our maths and literacy schemes of work at primary have identified that capacity for logical thinking is open to question.
For some pupils, computation can be their first real taste of using mathematics in a real and applied way. Whether that is using decimal fraction to speed up a costume change or Cartesian coordinates to place objects accurately on the screen, maths is important. A smart teacher will harness their pupils’ new found interest in applied mathematics. We also don’t need to be put off by the advanced nature of some of the maths used. Pupils rarely need to understand every aspect to use it. They are adding another layer to their understanding which I believe will pay dividends in both disciplines.
We need to free pupils up so that they can make mistakes. Too much ICT is taught in a manner in which the correct outcome is expected first time. Pupils then come to believe that they should get everything right first time. The opposite is true in computing science. Most programmers will make mistakes; this is totally normal and part of the process of trial, error and debugging. For many pupils this is liberating to hear. When we combine this with the principles of debugging, finding and fixing their own errors, we enable pupils to be far more independent and have positive coping strategies to find and fix failure.
Some of the best learning takes place away from computers. In Year 3 we debug logo code, by stepping through shapes on the carpet whilst recording them using a whiteboard and pen and dance ‘Gangnam Style’ to help pupils appreciate repeat loops. In Year 4 we design algorithms for early morning routines. In Year 5 pupils write detailed instructions to program theirrobot teacher to create a jam sandwich. Some pupils moan when they realise they will not be using the computers but some of the learning in these sessions is invaluable. I have heard a few people talk about teaching computing science totally without computers, for me that would be boring but the judicious use of unplugged time is important.
Scratch and its new incarnation Scratch 2.0 is a fantastic block based programming that can be used in wonderful ways by primary pupils. It is possible for a few pupils to miss programming by concentrating on sprite and background creation. In a very small number of cases this is down to active avoidance of the programming as it is complex. In most cases it is down to the amount of time that can be taken up by this aspect of the program. I now try and negotiate limits to this side of Scratch. I suggest to pupils that they can create graphics and backgrounds at home if they want much beyond that which they can create quickly. However a teacher teaching the entire computing curriculum may wish to teach graphic manipulation through these aspects of Scratch.
Pupils work best where they can collaborate, magpie ideas and re-purpose them. They may be working individually but the importance of sharing ideas informally shouldn't be underestimated. A lot of programming starts with other people’s ideas that you use and adapt.
Phil Bagge
I work for elearn eteach on Fridays and can be booked to work with your school
I agree with many points you have raised in your blog, particularly with the teacher not being 'the expert for long'. In the classroom many children are much more confident with the technology and programs used. From personal experience peer tutoring and mentoring is a beneficial extension technique and creates a supportive learning environment.
ReplyDelete