Welcome to Code for kids

Saluton Mondo! Hello world!

Anyone who has had at least an introduction to computer programming during their life will recognise that phrase. It is the greeting that all would be programmers will dutifully output to their computer monitors in the first steps on their journey through the syntax of their chosen programming language. However, my reasoning behind launching Code for kids, has much to do with the fact that very few young people who have received an education in Information Communications Technology over the last twenty five years, will recognise it.

It is a lamentable fact of the twenty first century that the Computing revolution of the 1980′s has been and gone for many young people of today. Sure, if one was to drag ten people of a certain age off the street and asked them to produce a rudimentary slide presentation using popular software, then seven out of ten would probably have a reasonable attempt at it and produce something of passable quality. I would also say that a similar statistical number could produce a poster made in a well known word processor, for little Jemimah’s school fete a week on Saturday, that would not look out of place in the window of the local newsagent. However, if those same ten people were asked to write a simple program in a language of their choice that takes user input of two integers, adds them together and displays the result to the screen, how many of them would be able to complete that task? Moreover, if 100 candidates, or even a 1000, were taken at random from “Joe Public” and given the same assignment, how many could do it?

The dilemma that the government of the UK faces is that the country is not producing the types of students that can fill the gaps that exist in the world of technology and moreover, some of the heavyweights of the Industry have recently been forthcoming in letting that fact be known. Eric Schmidt, chairman of Google, and the late, great Steve Jobs of Apple have both made their views public on where we are at with regard to the education system we have been nurturing in the UK.


Couple this shortfall of high quality graduates from the UK with the fact that both the China and India powerhouses are producing graduates with exactly those type of skills and the UK finds itself with a very worrying prospect for its technological future. However, these bitter pills have been swallowed to some degree in recent times, and Michael Gove, minister for education at the time of writing, has put moves in place to correct the situation. Don’t get me wrong, I know plenty of teachers of other subjects who could reel off a list of reasons why Gove has damaged the educational landscape that would be as long as your arm, but any ICT teacher with a modicum of grey matter would have to give him his dues on his ideas about the curriculum for ICT and Computing. Something had to change and those changes have been spearheaded by our friend Mr Gove. You can read his views in this speech he gave to the annual BETT show in 2012.


Gove commissioned a report regarding the games industry in the UK by Ian Livingstone and Alex Hope. Those of a certain age may remember the Fighting fantasy series that Livingstone wrote in the eighties when Dungeons and dragons was all the rage. Their research found that “the slump in UK’s video games development sector is partly the result of a lack of suitably-qualified graduates“. They also concluded that “the UK had been let down by an ICT curriculum that neglects the rigorous computer science and programming skills which high-tech industries need.”


My name is Christopher Hacking and I am a teacher of Computer Science. Much of my career has been spent teaching students aspirant for University, to make databases in a popular DBMS system and interact with them at a simplistic level with Visual Basic scripting and SQL. This is the same curriculum that has been in place since I went back to University myself in 2001 and before; I can remember talking to students back then who, when asked about their experience of Computing, rolled their eyes into the back of their head and said “Well, I’ve made a couple a databases in Access”.  And I was still teaching that same old content up until the point I left my previous teaching position in 2011. I cannot think of another subject that is as dynamic as ICT and Computing in terms of how quickly things move on and yet the exam boards who manage ICT and Computing curricula have a fixed mindset, happy to teach skills that are quite frankly “old hat”. The proposed changes to the National curriculum are a tonic to me, and others it seems. Let’s start teaching and examining our young people in the relevant skills that are required in the Industry today. School’s will always be a couple of years behind the times due to the financial constraints of keeping networks right up to date; I believe that Bill Gates mused that memory requirements double every six months, but let’s not allow our curriculum to wallow in the knowledge of yesteryear. Our young people deserve more than that don’t they? Code for kids aims to address some of these curriculum issues.

I have taught many programming languages to young people. My original studies were based in Java but the first language I taught to young people was Turbo Pascal. This was  followed by Delphi, a derivative of Pascal but with more capability in terms of windowing, and then VBA came to the forefront (Visual basic for Applications).  Anyone who has taught A level Computing will have nurtured a special or not so special relationship with VBA, an event driven language, that allows a developer to make Access and other Microsoft applications do things they cannot usually do, dependent on what has been clicked by the end user. I have also taught a little bit of Java to anyone who would listen and web based programming and scripting in the forms of Javascript and PHP.  But in all of that, I have not come across a language that is as easily picked up by young people as Python. It is a loose language; variables (if you can call them that) do not have to be declared as a type and can be cast easily. This can (and probably does) cause problems for the purist but for young people with no experience of programming it is a breeze. It has the capability to be object oriented if you so wish but in my experience, writing code in a procedural fashion is the way to go when starting students on their programming journey (this is purely my opinion, and there is mileage in getting kids to understand classes and methods; if you are interested, the Turtle module can be of use here)


Python is free. It is easily installed. It is ready for gaming, which always appeals to young people. You can get it too.


There are IDE’s (Integrated Development Environments) available for it, other than the one that comes with the language, known as IDLE. The one I use at school and at home is called Pyscripter and is available for free. Pyscripter also shows a code editor and an interpreter panel in the same window which is great for young people; they can run their code and see the results there and then and look back at their code and analyse what has gone on!


The majority of what I post here on Code for kids is aimed at KS3 and KS4, as that is the area of the curriculum where my interest lies.  After all, you are reading “Code for kids”. Feel free to use anything you find here for yourself or your own lessons.

So what is Code for kids about then? Its a playpen and a knowledge repository. It’s content has come about through the teaching of computer science to school children in key stages three, four and five, and is aimed at those with an interest in how computing is taught in the state system as well as those who teach it. I have included strategies that I feel have worked for me in the classroom or outside it, as well as any documentation I have found to be useful, whether published from a government source or elsewhere. Please feel free to leave a reply to my rattlings. I would be glad to hear what you think.

Code is most definitely poetry.

Christopher Hacking  LRWCMD,  BA (hons),  Cert. Ed. , MSc (Comp. Sc.)

Leave a Reply

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>