I generally don’t make New Years Resolutions. The entire process is so arbitrary and self-loathing, it plays into the whole annus horibilis bollucks. If you’re going to improve your life, just do so; Don’t wait for some arbitrary point to go this is the year I will be self fulfilled, all my dreams will approach realization, I will open my code chakras and purge my stale git stashes and finally learn how the hell to use Vim. If you’re constantly trying to learn new things you’re going to be better off then it you wait to be pushed by the last two digits of the date++.
At least pick more then one point in the year to fix ALL The Things. One thing a month. You’ll get continuous benefits for your life and won’t be exhausted from trying to change everything all at once. You don’t want to go through all the stress of making a change, just to suffer from a fit of Extinction Bursts all at once. Failing at multiple goals at once can lead to feeling like a children’s toy that’s been run over, by a leaking sewerage truck, in the rain: Useless, disgusting and prone to making gross squelching sounds.
However. It’s excellent blog credit to give a list of your New Years resolutions; Gotta get those views, that’s how you get that Internet Monies from the Internet People (Or so I hear). So instead of giving my resolutions, I’m going to make some suggestions that everyone else could adopt. Please feel free to give me all the credit for these, despite the willpower being expended by you and you alone. There’s going to be twelve in total, one for each month. Here are the first three, and I’ll publish the rest every quarter, just to kill off the temptation to start them all at once.
Improvement One: Learn a Tech
Learning a new technology has an obvious benefit: It makes you more employable. Personally I think this is the least beneficial aspect. Learning a new tech, especially one that is wildly different from what you do day-to-day, makes you better at your current job.
It’s been solid advice for a while, that learning a different programming paradigm makes your code better in all languages. I don’t actually buy this. “writes Java in Ruby” is the same as “acts Functionally in JS“; they’re both paradigm contamination. I think that practise makes you better, but that’s a very different thing.
No, the reason that I think learning a tech makes you better at your job is it lets you talk to other developers in their language, shows you the strengths of technologies that might make your own specialty more useful, and allows you to better boot-strap individual projects. A shinier prototype is more likely to be turned into a Real Project.
I personally really like Code School for learning new tech. I gave up on books because it’s difficult to know what’s worth reading and what isn’t, until you’ve enough experience to evaluate the content and, well… that experience is what you’re reading to build. I like Code School because it treats the viewer like an adult (unlike at least one competitor) and because it builds in logical, sensible ways. I’m not getting paid for this recommendation (although if Code School wants… call me!), I just like the product.
Improvement Two: Take a Step to Better Financial Management
Capitalism is pretty gross. It’s also widely entrenched in society and unlikely to be replaced by anything better before the AI post-scarcity uprising, and I hear that project didn’t meet its KickStarter goal. Money is here to stay, and Money roughly correlates with ability. Not ability to accomplish tasks; ability to get others to help (or at least get out of the way).
Spare funds give you the ability to quit and find a better job. Spare funds allow you to buy tools for your hobby and improve your mental health. Spare funds let you travel. Spare funds let you start a side project, that gets profitable, that makes you more spare funds. It’s kind of crap that having money makes it easier to make money. It makes life less stressful. It literally makes you less sad and maybe happier up to a point (The literature is mixed. This is a nice summary. TL;DR Money gives you options. Wow, what a familiar argument…).
This is not financial advice. I do not know what your goals are… But maybe you’re lucky enough that with focus and willpower, you can put yourself in a place with more ability to achieve them. Maybe start with an Emergency Fund?
Improvement Three: Be a Part of your Tech Community (more)
This one is pretty easy: Get more involved in a tech community. The cold hard reason is that it’ll serve as good networking. Screw that. Tech is (or should be) fun. Tech people are some of my favourite kinds of people. There are meetups for languages and tools and industries all over the world. Go to a conference (like RubyConf.au!) and deliberately talk to people you don’t know. Head to your local meetup. Join and post to some Open Source Mailing lists.
If you’re already involved, step it up. Pitch talks to conferences and meetups. Organize an event. Go to a longer event or workshop (Rails Camps are amazing). Mentoring is a huge benefit to our industry, so find a junior dev and offer. Help less-connected people get integrated by going with them to events and introducing them to others.
Especially try to find unique and interesting voices and share them with others. We can be faddy, prone to hero worship and appealing to authority. Mix it up! Share things you don’t often here, from people who aren’t often heard. Everyone gets better that way.
Postscript: Sorry to Preach
I really really can’t stand New Years Resolutions, which is why this post is deliberately delayed. All of these are suggestions of things that I’d like to accomplish myself, and may be helpful in your life. They’re not aimed at anyone in particular, nor do I warrant their practicality or easy. Any feedback, leave a comment below!