My Year in Review - 2021
With this year coming to an end and Christmas recently gone, I felt it was time to look over my journey this year and share what I've learned.
I started 2021 in a full-time job working 6 days a week, in a toxic and controlling relationship I wasn't sure how to escape. I ended the year going full-time on my own projects and free from that relationship. This taught me so much:
- Use the tools you know, not the ones others pressure you into
- Don't feel the urge to make every micro-optimisation
- Keep your mind focused with clear goals and don't give up
- Anything is possible when you put your mind to it
- Escape your comfort zone, ship fast, and refactor later
- A healthy positive mindset is key to driving results
"When a workman knows the use of his tools, he can make a door as well as a window"
If this last year has taught me something major, it's that it's okay to use programming languages you already have experience with. The sad reality of "Tech Twitter" is the constant barrage of new frameworks and languages with added pressure to constantly use the latest and greatest.
I see each framework and programming language as a tool - in the end, they achieve the same result. Like a workman, a door can be built using a selection of tools, but they achieve the same thing. If you have experience with something, go for it if it's suited for the task.
An example is PHP - a programming language more than 20 years old. I've heard more jokes about this than I can count, such as how there are more modern solutions. I chose it for productivity, as I was often writing boilerplate code when using JavaScript solutions - recreating what comes out-of-the-box with Laravel.
If you're fluent with a programming language and wish to build a project - go for it. Don't let the pressure of others drive you into picking something because they told you to.
Focus on the Product, Not the Code
As developers, we often spend too much time optimising and tidying code, deviating from our end goal - the product. I've been hugely guilty of spending too long trying to optimise rather than building a solution and moving on.
I used to have the mindset that optimising and cleaning code was a must. While clean code certainly helps, it shouldn't be a priority for version 1 of your application. I was reading a blog post by Zach, an ex-Google engineer, who really changed my opinion:
There are two kinds of programmers, generally speaking. There are programmers who care more about code, and there are programmers who care more about product. The former - I'll call them "code-first" programmers - are obsessed with how code is architected, what tools, libraries and languages are used, how much test coverage there is - stuff like that.
I realised he was right. If I had to pick, I'd rather care about what my visitor sees - the product - rather than code which is never shown publicly. By doing so, you can deliver faster and refactor later if ever needed.
Releasing projects with code or UI that isn't to your standard is also beneficial to launching quicker. Focus on these when the time is right rather than delaying release because a chart isn't as nice as you want it to be.
A Healthy Mindset Can Achieve More
While there's certainly lots of positivity, there's also negativity that can knock your confidence. When someone on Twitter shares a project they've been working on, it takes seconds to reply with some gratification to show support.
As humans, we like to hear good things. There's no better feeling than to work hard on something and be welcomed with warming messages. That's not to say we shouldn't provide feedback - that certainly helps too. It all comes down to how it's worded.
What doesn't help are those looking to spread negativity - "oh but x does this" or "that's crap, nobody will use that." Comments like these often stem from jealousy and do nothing beneficial. They just make the person who worked hard feel like giving up.
It's best to ignore this and keep your head high. I had lots of self-doubt when building my previous business before selling it and quitting my job. However, setting your vision pushes you to reach targets, and you'll look back at the progress you made.
I also use an app on my iPhone called "Motivation" that sends me a daily quote in the morning. It has had a massive impact on my mindset - reading them certainly makes you want to achieve more.
Final Notes
If you haven't already, spend some time writing goals for next year. It provides a sense of accomplishment when each goal is met and helps with motivation.
For me, I'm focusing on growing and building my main project in addition to improving my overall health.
Go forth, be strong, and good luck next year. I'm excited for everything I have planned.