Mr. McGuire: I just want to say one word to you. Just one word.
Benjamin: Yes, sir.
Mr. McGuire: Are you listening?
Benjamin: Yes, I am.
Mr. McGuire: Plastics.
Benjamin: Exactly how do you mean?
Jump forward almost half a century and replace ‘plastics’ with ‘programming’, and a modern-day Benjamin Braddock might well be as equally bewildered.
Computers have found their way into almost every aspect of our lives and we now carry in our pockets mobile phones with more processing power than the fastest of desktop computers of a decade ago. However, over the past couple of decades, end-consumers of technology have been further and further removed from the inner workings of these machines. Little thought is given to what happens inside the machine when we ‘like’ something on Facebook, click on an icon, use a mobile app or any other function you might use your computer for.
This isn’t necessarily a bad thing. You don’t need to know how the internal combustion engine works to be able to drive a car. You get in the car, turn a key and can go places without giving too much thought to the fact air and fuel is combusted and converted to mechanical energy, somehow, magically, right in front of you under the bonnet. However, the benefits of being able to bend a computer to do what you want, rather than what an existing program thinks you want, can be tremendously useful.
I work on a computer all day but in a non-programming role. Most of my work can be easily done using existing tools: writing a document with Word, editing a website with a Content Management System (CMS), analyzing data using Excel… However, every so often, there’s a problem that doesn’t fit the usual mould that’ll need a bit of a workaround. For example, if something is not sitting quite right on a web page or requires a custom layout not already built into the CMS, I can quickly duck into the page source code and tweak the code to create a quick fix. Likewise, if I want to test out a quick concept using a new technology like HTML5, I can write up some markup and JavaScript and quickly have a working prototype.
I don’t think this just affects me. Most occupations nowadays involve at least some degree of computer interaction, so imagine what you could achieve if you upped your level of computer literacy. It’s an empowering feeling, thinking of something the computer could do to make your job easier and then making in happen. Wouldn’t you love to be able to write a quick script to automate some of the more repetitious parts of your job?
It’s not just about the direct benefits of being able to write your own programs. You’ll be exercising your brain in ways you haven’t before, and you’ll notice an improvement in your ability to:
- Solve problems
- Plan ahead and predict issues
- Deal with complexity.
And the great thing is, it’s never been easier to learn how to program. There are plenty of fantastic and free resources available online:
- Code Academy – Online programming course.
- Mozilla Developer Network – Collection of docs and resources for many web technologies.
- Learn Python the Hard Way – Online resource for the Python programming language.
- CS50.tv – Harvard’s Introduction to Computer Science.
- Smashing Magazine – Web development tutorials and articles.
Looking ahead as computers become even more pervasive in our lives, computer literacy is going to be the new, well, literacy – a skill that all employers will be looking for employees to have. And if you don’t have it, chances are you will be left behind. Or you could become a mechanic. My car keeps breaking down and I don’t have a clue how to fix it.



People don’t like wading through long pages of text online, so try to keep your writing as brief as you can. To quote George Orwell:
People tend to scan pages of text online rather than reading from start to finish. There are a number of ways you can break up your text to make it more ‘scanner friendly’. These include using:

