Almost everyone has heard of the Hour of Code at this stage, haven’t they? If not, take a look at code.org when you get a chance! This initiative took place from 8th – 14th December last year and was part of the global initiative by Code.org to raise awareness of the beauty and potential of computer science as an academic subject. This was its 2nd year running and Code.org claim that it has now reached nearly 5.5 million people in the UK alone and almost 100 million worldwide. Quite an achievement! There are numerous tutorials now available throughout the Web to teach the Hour of Code and for the majority of these, little knowledge is required of either the teacher or the pupil in order to access the fun and achievement of completing the tasks involved. The two tutorials built by Code.org themselves, based on Angry Birds/Plants vs Zombies (HOC 2013) and the Disney film ‘Frozen’ (HOC 2014) have been extremely popular, built in such a way as to be progressively challenging, yet possible for even the most novice participant to finish inside an hour. Not only this, but these tutorials give a flavour of some very advanced aspects of computer programming like functions and fractals, without ever appearing intimidating and always appearing fun. But what about afterwards? What about a structured scheme of work suitable for schools based on the Code.org model? An Hour of Code is not a scheme of work that will work for a whole year, never mind a whole school. Enter the ‘Code Studio’ courses, the 100% free resource from Code.org.
There are 4 courses, each of them structured in such a way as to build up a child’s (or adult’s!) computational thinking skills so that they can understand the logical way that computer programs work. The first half (and maybe all) of Course 1 is definitely accessible to Year 1s. After that, you can pitch each course at whatever year group you deem them appropriate for. Sequencing is a hugely important element of the early courses, followed by loops. By the time the children move on to Course 3, they are dealing with the algorithmic thinking behind nested loops, conditionals, while loops and functions! And what’s more, if the teacher has little or no knowledge themselves, they can easily work their way through the activities themselves and teachers have access to answers should they need them. The teachers have access to a dashboard that is crucial for assessment, easily showing who has completed what and how efficiently they have completed the tasks.
Dark green indicates perfect completion of a task while light green indicates that a task has been completed but that the solution could be improved upon. White indicates incomplete tasks. There is huge potential for independent learning because pupils can work at their own pace and the teacher can track their progress at the end of every lesson. As can be seen in Figures 3 & 5, each task shows the recommended number of lines code needed to complete it. This further enhances its potential for independent learning as it is self-correcting. It is possible to complete all tasks without adhering to the recommended targets, but the more motivated pupils will always want to achieve a dark-green tick rather than a light-green one.
It could be argued that the best people to teach Computing to primary school pupils are teachers that are only learning as they go along themselves because they are spotting the learning points as they go. When you have recent experience of that Eureka moment yourself, then you are best placed to pass on the teaching points that led to that moment. People who are already well versed in computer science might easily forget what it was like to know little or nothing and so they cannot elate to the pupil who simple can’t see what appears to be elementary to them. All teachers also need to have the humility to allow themselves to be overtaken by their pupils and the enthusiasm to understand that they are benefiting from this new body of knowledge themselves.
The real beauty of the Code.org courses is that each task is set up with only the blocks of code that are required to complete the tasks. This way, there is greater chance of success and less intimidation. We don’t teach children how to do jigsaws with 1000 piece sets – we start with 4 piece and 8 piece jigsaws that teach the child the process of working their way through the puzzle. Scratch, the best programming language to teach children, is like a 500 piece jigsaw – children can only make sense of the blank stage and script editor when they understand how all of the elements fit together into something meaningful. Code Studio is like a 4 or 8 piece jigsaw that leads to easy victories. Success breeds success. The Code.org courses are like cloze exercises in English. If you want to teach adjectives you might take them out of a block of text and give the pupils a word list. If you want to teach sentence structure, you might jumble the words of some sentences. We wouldn’t ask children to write a short story before they have mastered basic sentence structure and have a mastery of basic vocab. Scratch is like a blank writing pad with a reference sheet (the palette) containing all of the various elements that they might need grouped together in an organised way. It still requires a huge amount of skill to turn these into something meaningful, with little or no guidance. It shouldn’t be assumed that the Code.org courses are too simple or too structured. Each course builds on the last, reinforcing previously learned concepts and introducing ever more advanced concepts in a scaffolded, well-organised manner. There is also ample opportunity for specific debugging work, which is a key component of the new UK Computing curriculum. As a matter of fact, if we look specifically at the new UK Computing curriculum subject content and more specifically, at the first three objectives of each Key Stage, it can be said categorically that the Code.org courses address all of this, to a hugely satisfying degree!
The charge could be made that these courses offer no opportunity for creativity, but this would be unfair. There are various opportunities at the end of the ‘Artist’ stages for pupils to practice what they have learned (e.g. with functions or nested loops) to create some very impressive artwork. These can then be shared via the school VLE for wider consumption. See a live example at studio.code.org/c/49676351 (Figure 5 is a still)
Ideally, these courses would be used in a scheme of work where they were dovetailed with work in Scratch so that the pupils could practice applying what they have learned in a more creative way, using their own sprites and backgrounds. Each stage is manageable in 30 minutes to 1 hour with careful planning and of course, pupils could carry on at home as it is entirely web-based. There are excellent ‘unplugged activities’ available throughout the courses that reinforce key concepts in a fun, real world way. For many of the early activities with younger pupils, schools with tiled floors will be able to put the on-screen activities into real life quite easily, activities like in Figure 5.
The supplementary activities (shown in Figure 1) are ideal for early finishers and the extra keen. The Flappy Code activity is especially popular and children can easily share their own Flappy Bird game with their classmates through the VLE. Watch them go wild with excitement at trying out each other’s games and making their own versions as wacky and as difficult as possible!
But there’s more! Pupils can earn a beautiful certificate for completing a course and Code.org have made it extremely easy on the teacher to print these out in bulk. I can’t finish without mentioning the three types of logins. For older pupils, they can log in in the traditional way, email/username and password. For younger pupils, there is the facility of a class ‘foyer’ where they click on their own name and then enter their ‘secret words’, two simple words assigned by Code.org. Very simple!
But what about the very young pupils? Code.org have looked after them too.
Instead of secret words, they need just remember their ‘secret picture’ and sign in. It really is so simple and is a great way of introducing the idea of a password of their own, something not to be shared with someone else, without the hassle of constantly forgetting it. And the pupils love it!
Also, on the topic of passwords, these courses also contain excellent Digital Citizenship lessons that make use of the brilliant commonsensemedia.org resources that are freely available on the web.
I cannot rate these courses highly enough and would encourage any and all primary school teachers to jump straight in and enjoy the learning ride yourself. You will be delighted at the quality of the resources and crucially, how engaged your pupils will be. As a final note, my own advice would be to set up a school landing page (Figure 9) with links to each ‘foyer’ so as to avoid the need for pupils to type in the URL of their own foyer during each lesson. This has worked extremely well for me in my lessons.
Please make contact if you would like help with any of the above.