I took part in an interesting #CASChat (every Wednesday 8-9pm) last week which focussed on the transition between year 6 and year 7 for computing. One of the questions, by Andy Colley (@MrAColley) asked if text coding should be introduced at KS2 and whether block based programming should be dropped at KS3. As a primary specialist I will focus primarily on the first part of the question. I will start with some context, to explain where I expect children to be at year 6.
In my current role I teach across the age range, right from EYFS to year 6. Typically, I will introduce the concept of instructions to EYFS, using physical devices such as bee-bots which then progresses to the bee-bot app. My focus is very much around securing computational language at this stage and encouraging children to experiment to find solutions to problems.
In KS1 I consolidate understanding of bee-bot by introducing more complexity and encouraging children to deconstruct solutions to levels. I also introduce block based programming using the excellent Scratch Jr. My aim is that by the end of KS1 all children can confidently program an animation involving multiple characters, repeats and sensing blocks.
When children reach KS2 I introduce them to ‘full’ Scratch at the earliest opportunity, so that by the end of year 6 they are confident ‘Scratchers’ and can design, build and test their own projects. This is the cornerstone of the KS2 curriculum I teach, but by no means the be all and end all.
I am a firm believer that children should be exposed to a wide variety of coding experiences to broaden their problem solving skills – apps like Lightbot and Bee-Bot are great for this. With this in mind, I do introduce text based programming in year 6, and depending on the cohort, sometimes in year 5. My reasons for this are:
– Scratch is great for problem solving, but does not help children understand what is happening under the hood
– Text based programming teaches children the importance of accuracy in programming. The earlier this is introduced the better
– It promotes good keyboard skills (although a lack of these can inhibit progress)
I start by using a bridge between block based and text based programming. There are a number of great free resources for this, each with a slightly different focus. Here are some ideas (all free) for managing the transition:
– Hour of code – a Microsoft sponsored site which guides children through block based projects. However, unlike Scratch, you get to see the code behind the blocks
– Barclays code playground – a fun site where you can change parameters to change the way the objects in the site behave or appear
– E.A.K. (Eraseallkittens.com) – this is a brilliant site which guides children through game levels which they complete through coding. It offers more freedom than hour of code and Barclays code playground, and does a really good job of making debugging easy and accessible. As a bonus, the kitten theme really appeals to girls whilst not turning off the boys.
– SonicPi – another amazing resource, which uses coding to create live music. The great thing about Sonic Pi is that you can either start from scratch (pardon the pun) or edit existing projects. The great benefit is the live aspect, meaning children instantly see results as code is changed.
– Mozilla x-ray goggles – shows you the css and html code behind websites, enabling you to edit text and pictures to create your own version of a website.
All of these sites demonstrate that there is actual code behind everything they see on a screen, with the first three maintaining the link with block based programming to smooth over the transition.
Using these means that when you move on to something like Python, children are already familiar with writing lines of code. This demystifies the process and prepares them for more complex concepts, and hopefully helps ease the transition between years 6 and 7.