There’s been a lot of debate recently about the place of computer programming in our children’s education. Rory Cellan-Jones, BBC technology correspondent, wrote an article that described coding as ‘the new Latin’, a phrase that suggests to me that children would be learning an obsolete language or skill if they learned to program. In fact, they’re usually learning ICT instead of computer programming, and while it is important for them to have an understanding of how Word, Excel, PowerPoint and Access work, it’s much more important to show them that these tools are not the limits to what they can achieve with a computer.
Most of the people calling for better computer science education probably grew up (technologically, if not literally) in the 80s. Back then, everybody had a rough idea how programs worked. You switched on a computer and it wouldn’t do anything until you typed in a command, even if that command was just to load up your favourite platformer. Most people tried typing in programs from magazines, a cheap source of software, and quite a few had a crack at writing their own programs too. Just about everyone in the playground had a rough understanding of what programs looked like.
Now, it’s very different. You don’t switch on a computer any more and see a command prompt. You have to really go out of your way to see anything resembling program code. In most cases, you need to buy commercial software or download free software to help you create your program, and the code seems so much more foreign because it’s not a part of the machine’s user interface.
Of course, there are lots of advantages to the computers we use today. You don’t actually need to know how to program any more, and that means everyone can engage with computers in a way that was impossible when they required you to remember and type in instructions to get them to do anything. But just because you don’t need to do something, doesn’t mean you shouldn’t be able to do it. Once you get past reading, writing, and ‘rithmetic, pretty much all education is stuff you could probably survive without, but languages, humanities, arts, and sciences help people to fulfil their potential. Computer programming can too; it gives you new thinking tools, and new creative possibilities.
One reason that HTML5 is exciting to me is that the entry barriers are much lower than they are for most programming languages. HTML is basically marked-up content, and we’ve all got content, whether it’s holiday photos or diary entries. Learning the basics of marking it up for structure doesn’t take long, and, crucially, doesn’t require any special software.
The next step is to make money with programs. Back in the 80s, you could post off your program to a magazine on tape, and they would publish it, and post you a cheque. I had a few programs published back in the 80s, which was by far the most profitable part of my mini business empire, which also included a couple of newspaper rounds and working in a market.
Alternatively, if you had software to sell, you could advertise in the back of the magazine, but these ads rarely did spectacularly once computer games could be bought in every other shop on the high street.
Now, we have app stores, which enable everyone to get their app out there, without even having to pass the gatekeepers of the editorial or advertising team on a magazine. You can get your apps stocked in the same stores that sell the bestselling software today. You can use a tool like the Intel AppUp Encapsulator to turn your HTML5 into a standalone program that can be sold through app stores powered by the Intel AppUp center.
Every few months there’s a story in the paper about a whiz kid teenager who’s managed to create his first app and get it into a store, but these tend to be the highly committed hobbyist programmers. Clearly, young people have a good understanding of the kind of apps they want to use. If we don’t give them a good understanding of programming, we’re cheating them out of the opportunity to shape their own futures and the software that will play a part in it. Programming is as important as most other things on the curriculum. To leave it out just doesn’t add up.
This blog post is written by Softtalkmobile, and is sponsored by the Intel AppUp developer program, a single channel for distributing apps to multiple devices, multiple operating systems, and multiple app stores.