There is something about New Year’s resolutions that seems to make me less likely to stick with them than any other promises. It is almost as if labelling a promise as a New Year’s Resolution gives me an excuse to not stick with it: “Oh, it was just a New Year’s resolution”. Yes, I would like to lose weight, sleep more, spend more time with my family, learn a foreign language and do all the other things we like to have as “the usual resolutions”, but these are hardly smart goals. 

This year I have been thinking more in terms of what I would like to learn. I am in a lucky position in my life where I have time to stop, think and look at some new things. I want to use that time well. In that spirit, I have set myself three learning goals for the first quarter of the year. 

Learn to program in CodeIgniter

I was never a good programmer, but I got by. I built a few reasonably complex web apps and made changes to other people’s code. Eventually, I hired far better programmers than me who begged for me to stay away from code, and I lost the limited skills I had. 

I now have some time on my hands, a head full of ideas and no engineering resource. It feels like a good time to learn to code again. This year I would like to get to the point where I can make changes on a few projects I am working on, and prototype new ones myself. Nothing too complex, just enough skill to keep projects moving along without waiting on external developers.

I have chosen CodeIgniter as a framework to initially focus on. It’s PHP, so I hope that it is still somewhat familiar to me, but most importantly it is well-rated for its documentation (which I anticipate using a lot). 

By the start of Q2, I would like to be comfortable in CodeIgniter and able to put together simple web app prototypes myself without having to refer to the documentation for every line of code. 

Improve my understanding of the practical applications of Blockchain

I’m really keen to start exploring Web3 in more depth in 2022. The web is on the cusp of change again and decentralisation, likely through blockchains, is going to play a key part in that change. Whilst I am comfortable with the concepts of blockchains and have been doing some learning around smart contracts and Solidity, I am far from an expert. I’d like to close that gap. I’m particularly interested in improving my understanding of how blockchain can be used beyond cryptocurrency. It can be hard to cut through the whole “Rocketship to the moon” hype around anything Blockchain, but once you do there are some amazing projects around that I feel could fundamentally change the way we use the internet. 

This is a difficult learning goal to quantify as I am still at the stage of “not knowing what I don’t know”. By the end of Q1, I would like to feel more confident around these topics and have a clearer plan for what I want to learn through the rest of the year.

How to run again

I may never have been great at writing code, but I am still more of a programmer than I am a runner! Having actively avoided running for most of my life, I did finally start enjoying it a few years ago. I had been doing a few short runs a week and was just getting to the point of occasionally enjoying one of them when I got diagnosed with cancer. Running, along with pretty much everything else in my life, stopped on that day. 

I’m now at a worse starting point than I was before, but it would be good to start again. It would obviously benefit my health, but there is also a touch of “fuck you cancer” attached to me wanting to start again. Is this a learning goal? Arguably not, but I’m including it.

The goal here is simpler: 5k runs by the end of Q1. 

Goals set – let’s see how I get on

Hopefully writing these goals out in black and white will make me accountable. Let’s see if I do better with three goals in 3 months than I usually do with new year’s resolutions.