Year of Code – What is software and how do you make it?

Posted by Uncategorised • July 25th, 2014

The Aspidistra office may be caught in the middle of a heatwave, but there are only five more pay days to Christmas, and that means we are more than half way through 2014 and the UK’s “Year of Code“. You may have heard of it back in February when the director of Year of Code appeared on Newsnight and admitted she couldn’t actually write code herself and then upset some people (me) by saying it only takes a single day to train a programming teacher. Not the best piece of PR, but that doesn’t necessarily make Year of Code a bad idea. The aim is to encourage everyone to learn “to code” and eventually make “coding” part of the curriculum at school. So what does that actually mean? It means we want our kids to make software.

But what is software, how do you make it, and why do we want kids to do it?

Wikipedia says software is “the non-tangible component of computers“, but in layman’s terms software is anything that “runs” on a computer, tablet, or phone: Windows, Word, apps, and web sites are all pieces of software. I used software to write this article, and you are using software to read it. It seems that software is pretty much everywhere, and so it is fairly obvious that we need people who know how to make it, or at least fix the old stuff when it goes wrong. People who make software are called “programmers” and we do it by typing in special languages or “code” that computers understand. Our Shopfront software is made up of 750,000 lines of code written by myself and colleagues over several years. That might sound a lot, but it’s not a particularly big number when you consider that Facebook is reportedly 61,000,000 lines of code.

So does Year of Code mean I’m teaching my own child to code? Well, not yet, she is only three. But that raises the question: who should learn to code? In 2012, the mayor of New York, Michael Bloomberg, suddenly announced he was learning to code, and over here we had Prince Andrew sitting in a programming classroom. Great publicity, but I don’t expect those guys’ CVs will be landing on my desk the next time we have a vacancy. The Year of Code people want kids as young as five to start learning to code. That sounds a bit young to actually start producing software, but there are plenty of ways emerging to help very young children grasp the basic concepts. Older kids should definitely be introduced to programming at school in exactly the same way that my generation were taught the basics of chemistry or woodwork. No one is saying that everyone should become a professional programmer, but when they leave school all teenagers should at least know enough to decide whether or not it is a career they want to pursue.