With the holidays fast approaching, I am filled with just a little dread. Not only will my wife trot out the DIY jobs jar, but, as a father of teenage boys I know that after a few mornings sleeping in, a few days of playing the new computer game, will come that moment when the inevitable question gets asked, “What can I do now?”
But these holidays I am forearmed with an answer. Learning to code is all the rage: for good reason. Firstly – it is good mental discipline – the logical reasoning, attention to detail, the need to plan and move from the generality of pseudo-code to the specific syntax of whatever language you are using. I think learning to code teaches you a certain kind of mental precision that children used to get from having to learn Latin.
Secondly – I believe that it is a digital citizenship skill, something we all need to know for a future where being able to tweak your machine, modify your applications will not be seen as something geeky, but something as necessary as breathing. We are fast headed for a technological future where we will be interfacing with machines not as isolated events during a busy day, but on a constant basis. That future has two possible paths, one in which all the coding of those machines is managed by corporations, and we have little say in how we experience our environment, apart from choosing from a list of alternate “templates”, and another in which we are able to tweak the code ourselves, and can deliver more personalized outcomes. I believe it is imperative that we try our darndest to be ready for the second alternative – and that means learning to code.
It worries me that we seem to be producing a generation of consumers rather than producers. When I was young, computers came more or less assembled with nothing on them. You pretty much had to learn to program to be able to get them to do anything. Even to get the programs that were on them to work you had to learn to type in DOS commands! These days computers come with everything on them, and you don’t need to learn a stitch of code to work them. We need to get back to that spirit of showing your machine who’s in charge!
Thirdly – and perhaps most importantly, coding is fun. learning should always be fun, but especially during the holidays! It can also be an opportunity to experience learning together as a family. We don’t do enough of that. The natural order of things is that adults know more than kids, hopefully anyway! So learning tends to be about stuff your kids need to know, but you already know. Even if it’s stuff you’ve forgotten, like Algebra, it is never really a situation where the playing field is level. Coding, however, for most families will probably be a learning project the whole family can take on where all of you start as beginners.
So – here’s the challenge! Set up a challenge at the beginning of the holidays, a family project to code your own game for computer or mobile, learning to code as you go! This may sound like an impossible task, but actually the resources online are incredible, and make the task relatively painless. You can scale the ambition as you go. In many cases the tutorials and guidance is so good you can have a game going in 10 minutes! The rest is all about wanting to design your own game.
Here are some sites you can use (mostly free):
- The MIT App Inventor
- Code School – paid
- Tree House – paid, but has free trial
This list is not exhaustive, but represents some of the most popular sites.