Here’s his story of a life in code…
I first realised the potential of code when the family computer started saying “There is an error in WIN.INI”. The idea that a single file could stop a computer from working intrigued me. I decided to delete the errant file from the computer only to be presented with a blank screen the next time the computer booted. It turns out it was quite an important file. My Mum took the computer back and got it fixed and, with a fresh install of Windows 95, my journey into coding began.
I initially played around with C and then, finding the command line rather unappealing, moved onto Visual Basic — which was a popular way to make Windows apps at the time. This was all around 1996, so the web was just starting to take off. I decided to create a website, with neon green letters on a black background. I honestly can’t remember what it was about. My main recollection is spending about a week trying to get it to work online before realising that I needed to rename my `Index.html` file to `index.html`.
By the time I was 16 I’d decided that I would do a Computer Science degree at Cambridge University once I finished my A-Levels. This, however, was not meant to be. It turns out that if you spend all of your free-time teaching yourself how to code, you don’t have much time for homework or revision. There was no way I was getting into Cambridge with my grades. Around the same time, having already applied for six different Computer Science degrees on my UCAS form, I discovered that Computer Science didn’t actually involve much programming and was mostly electronics and maths. It turns out that if you spend all of your free-time teaching yourself how to code, you don’t have much time to do the most minimal research about how to spend the next four years of your life. Or at least that’s what I told myself.
I took a “year out”, which consisted of sitting at home programming. I was still keen to go to university, but, no longer wanting to do Computer Science, I threw around various ideas including animation, psychology, and philosophy. I think largely due to a Douglas Adams reference in my personal statement, I was offered an unconditional offer to study Philosophy at the University of Aberdeen, so the decision was made for me.
So, five years later, with an undergraduate and masters degree in Philosophy, I decided it was time to enter the real world. I moved home and started looking for jobs. But this was near the end of 2008 when even someone with a useful degree might have struggled to find something to do. After not finding anything to do for a few months I started doing a few websites for mutual acquaintances. And so began my life as a freelance web designer.
I’ll be honest, it wasn’t a great start. I spent almost the entirety of my first year’s earnings on a copy of Adobe Photoshop. Partly that shows how much Photoshop cost, but also that I really didn’t earn much that first year. The next two years weren’t much better. It was only in my fourth year that I made more than minimum wage. If it hadn’t been for my Mum letting me stay at home rent free for three years I don’t know what I’d be doing now.
I learnt a lot during these first few years by taking on projects that I was ludicrously unqualified to take on. There’s a lot to be said for throwing yourself in at the deep end: it really focusses the mind. I took on projects involving technologies I’d never even heard of and then spent the first month of the project trying to work out what I’d signed up for. I’m still not entirely sure how I got away with it; but ever since I’ve always taken the attitude that I’ll only take on projects that involve some technology I’ve not worked with before.
I moved to Bristol in my fourth year as a freelancer and started charging more for my work. It was around this point that I moved more towards web-development as opposed to web-design. I love a good typeface, but design was never my strong suit. I realised that programming was both where my skills lay and also what I enjoyed doing the most. By my fifth year as a freelancer I’d given up the design side of things, although I was still writing HTML and CSS.
Moving to Bristol turned out to be a really good decision: the tech-scene here is really thriving and after making a few good contacts early on I never needed to search for work again.
One of my first big projects with a Bristol company was working for Aardman. They make lots of educational games for the BBC and they were struggling to get one of their first non-Flash based games working well. On my first day I got lucky and spotted a single line of code that was causing the game to run about 100 times slower than it needed to. Having impressed them with a 100x performance increase on my first day they offered me a 9 month contract to work on a new game from scratch. Those nine months were really amazing. As you can imagine Aardman is a really fun place to work and they were a very friendly bunch. When we were done we were all proud of the game we’d created.
I worked for various agencies in Bristol over the next few years on all sorts of different projects: some simple websites, some games, and some WebGL experiments. I also continued doing work for the University of Leeds, who had been one of my first clients.
A few years ago I started doing some one-off workshops for DevelopMe and a year later we began discussing running the Coding Fellowship. I taught a couple of weeks on the very first cohort of the Coding Fellowship and nowadays I teach five of the twelve weeks. In my spare time I’m mostly writing Haskell and macOS applications and studying for a maths degree with the OU. I also help run CodeHub, which runs hack nights and workshops in Bristol for people trying to get into coding.