My New Year’s Programming Resolution
It’s almost New Year and time for one of the oldest rituals I’ve participated in: making a New Year Resolution. However this isn’t the typical to-do (and to-give-up eventually) list that many attempt each year. This is a specialized list that is aimed at improving me as a programmer and an engineer.
I am sure other developers out there do the same thing every once in a while either consciously or subconsciously. I started when I switched careers 2 years ago and decided to work in the industry instead of being a hobbyist. My list back then was pretty simple:
- Build at least 3 projects and an online portfolio.
- Get a developer job/internship
- Study computer science
Pretty much finished those tasks (although studying CS is arguably an ongoing process). I made a more complex resolution for 2018 which ended with me picking up a couple of front end frameworks and learning new backend and DevOps tools like docker, GraphQL, AWS, and Neo4j.
Lessons learned from 2018:
I did promise myself to dive into machine learning but that never happened and I ended up honing my statistics knowledge instead. But I should not have put that on my 2018 list in the first place. Not a bad thing since now I know my knowledge and time limits better.
I learned that I am terrible at asking for help when I need it, i.e when I face a super weird error in my code and don’t find an answer online I hesitate to ask on StackOverflow or community forums. Even worse, I realized I would rather hammer at a problem by myself at work rather than ask a colleague. This was pointed out by my supervisor at work and I appreciate it because it has been keeping me back and I am working on being better at seeking help.
New Year’s Resolution for 2019:
Anyway, now that the reflection part of this ritual is done, let me look to the future now. I always try to keep the list short with doable and tangible tasks. Here is my list for 2019:
- Read at least 1 book about improving my coding style.
- Learn Go language (already started) and use a Go web server.
- Actually do a machine learning project and/or take a course in it.
- Finish at least one monetizable project.
- Redo and enhance my website in a JS framework.
- Work out more (the cliché every list needs).
And that’s it. It’s a simple annual process I now consider sacred and has proven to improve me as an engineer.
I would love for this habit to become a trend so that developers get into it and share online so that I can cheat and copy some of their list items into mine.