Yesterday I posted my personal goals for 2021. During the course of drafting that post, I realised I had some goals that were very specifically relevant to my career as a software developer, and therefore my ability to earn income, and some that were not.
Those that were specific to my career, and either directly or indirectly affect my ability to earn income, are probably the ones that I’m more likely to focus on and complete, so I thought it might be useful to separate the two.
If nothing else it provides me two “recap” posts to write towards the end of the year. ;-D
Test Driven Development
In 2019 and 2020 I made a conscious choice to learn how to write proper test suites for my code. I’m still not an expert, but I’m finally comfortable enough with PHPUnit, the Laravel and WordPress Plugin testing environments, and the CodeCeption testing framework, that I have no more reason not to write tests for all of my code.
In 2021 I want to focus on improving my Test Driven Development (TDD) practice. My goal is two fold; I want to make sure that any new code I write first has tests in place for the expected outcomes, and I want to make sure that any existing code I touch, either already has tests in place, or I add them first, before making any changes.
My developer mantra for 2021 is “testing, testing, testing”.
I’ve had the Zend PHP Certification on my radar for years now. Last year I purchased the study guide, and so this year I’d like to try and complete the certification. It probably doesn’t mean too much in the general scheme of things, but I’ve already learned a few new bits of information from the first few chapters, and it would be nice to add to my professional credentials.
Python is a general-purpose programming language I’ve wanted to learn better for the past two years. There’s a lot of code out there written in Python, much of it in open source projects I’m interested in, but it also has direct relevance to my position at Castos. I’ve started a few Python courses, so this year I’d like to pick one, finish it, and actually be comfortable hacking on some Python code.
CS50’s Introduction to Computer Science
Back when I studied programming, the college where I completed my diploma advertised that the 2 year diploma course, once completed, would be equivalent to the first two years of a 3 year BSc degree in Computer Science. This meant we could take that final year at university, and complete the degree.
Sadly the college didn’t actually keep up to date with the requirements to allow this, so when I enrolled, I wasn’t able to take that option.
I’d still love to properly learn the fundamentals of a computer science degree. The Harvard CS50’s Introduction to Computer Science course is a great and free way to do this, so I’d like to try and complete it during the course of this year.
This doesn’t have a direct impact on my earning potential, but I do feel the fundamentals I can learn from this will help with in my daily problem solving.
This is one of the few areas where my personal and professional goals are similar. I thoroughly enjoy writing, possibly sometimes more so than development. 2020 was not a good year for me for professional writing gigs. My freelance writing through Skyword essentially stopped at the end of 2019, and I’ve not had the time to actively write for other online publications. So in 2021, I will be looking for more opportunities for paid writing.