Stephen recently came and conducted a talk for Mums In The Wood. Below, is a summary of the talk.
Coding is not new. It has been around since the days of the first computers (and before). However it is a new subject in our schools and one that has become relevant to children only very recently. In the past only a very small number of children played around with coding (or programming as it is also, more accurately, called) and an even smaller number of adults learned it — they went on to work for software companies and similar tech jobs. Programming is however rapidly becoming a skill that goes beyond writing software for other people to use: more and more professions require some knowledge of coding as a basic skill. There is a possibility that most jobs would require coding skills by the time our children are ready for the adult world.
So, what is programming? The short answer is that is a form of communication between humans and computers in which we (humans) tell them (computers) what we want them to do. We already have programs on our computers and phones that allow us to get the computer to do things, but with this software we are limited by whatever the programmers who wrote that software wanted us to do. If we want to go further, we need to write our own programs, and as professions become more specialised, off-the-shelf programs are not likely to be suitable.
Coding is no longer a subject that is relevant only to become a software developer (as it was in the past) in the same way that we want our children to learn and do well in Maths even if they will not become professional mathematicians in the future. Programming requires good problem-solving skills, attention to detail, logical reasoning; these are all skills that are very relevant beyond writing computer code.
Unlike almost any other subject our children learn, for most parents (and teachers) coding is an obscure subject, poorly understood. We might not be experts at every subject our children study at school but we can usually understand them enough to help our children, at least in primary and early secondary school. However children often know more coding than their parents even if they’ve only had a single lesson!
Which leads to a question I’m asked often:
How can I help my child if I have no idea what’s going on?
My advice: learn it with them. In the early stages of learning how to code, many parents will be able replicate what the children are learning and use coding as an activity to do together, one in which the child will often genuinely be able to teach the parent. You might even find you enjoy it.
Coding is new for schools and teachers as much as for the parents. Although it is now part of the curriculum, schools clearly cannot magically transform their staff into programming experts. For this reason most schools cover only basic coding skills. Very often software meant for young children (such as Scratch and similar) is used for older children too because it is simple enough to teach even with no or limited coding knowledge. Unfortunately this prevents children from learning real coding and they often get bored of Scratch after a while, with the risk that they will be put off coding. I often compare using Scratch for older children to reading board books with three-letter words in Year 6: it’s just not good enough.
My view is that starting from age 7 or 8, children are ready to start moving on to ‘grown-up’ coding using a language such as Python, and by the age of 10 they should no longer be using Scratch at all. Neither of these happen in most schools. We also see coding being “taught” a lot through various activities such as robotics and other gaming environments. Although this is great for engaging students, it can (and often does) distract from the basics of coding. It also means children cannot carry on coding at home unless they have the same hardware and specialised software. Straightforward programming (with no gimmicks or gadgets) only requires you to have a computer, nothing else.
The provision of coding varies immensely between schools. Some try to do as little as possible because they don’t have the expertise, others think that by using Scratch they are doing enough, while others prefer to bring in external people to run workshops throughout the school year. The latter approach seems to be the preferable one for now, until coding matures as a subject taught in schools. Experienced programmers can deliver sessions that are fun and engaging by improvising based on what the children suggest, which is clearly not possible when following a planned task rigidly. Programming should be about being able to implement anything you can think of and we need to encourage children to do so as they learn coding. A common issue with programming is dealing with errors – even a simple program can have dozens of different types of errors that need to be found and corrected. This is part of programming, of course — indeed an important part. An experienced programmer will spot such errors within a second of looking at the children’s code and hence they can devote their time guiding the pupil to find and correct their own error rather than looking for the error.
It will take some time before coding as a school subject settles into an established one. Schools have been teaching Maths and English for a very long time, coding only for a few years. The great thing about coding though is that once children, and adults, learn the basics (preferably by learning them well) and gain some proficiency, they are then set to carry on learning independently. And this is the best way to learn how to code.