Near the end of 2019 I deleted every line of code I had on my laptop. During the contemplation phase of that idea I reasoned with myself that I needed to focus my efforts. Spend less time learning little bits about every language and framework that crossed my feed, and instead invest my valuable time into improving my depth of knowledge in the technologies I wanted to work with most.
Recognizing the coding burnout
Sometime during the summer months I started to realize that I had to reason with myself to get work done. I was becoming increasingly worse with being satisfied with the codebase I was working within. Not that I didn't like the project, but I started getting overly critical of the language it was built with, how it was partially inferior to the offering of X other framework or Y language's benefits in a niche pitfall that has arisen.
I stopped being interested in the craft of development and instead got lost in the options. Architecting the "perfect" solution became more important to me than actually writing the solution and iterating on it. I stopped pushing things to production and instead became consumed in the R&D world.
Though I'm extremely interested in the Research and Development happening in tech, I wasn't producing any tangible results of anything. Just spinning my tires and learning new approaches to problems I'd already solved previously in my career.
Setting my sights
First and foremost I knew that I didn't want to clip my wings by forcing solutions with the wrong language choices.
My favorites ended up including:
- Kotlin (optionally with Ktor)
- TypeScript (w/ Node)
- PHP (Laravel)
- React (w/ TypeScript)
- React Native (w/ TypeScript)
This gives me a complete range of coverage on both front and back ends. I already feel comfortable with REST APIs so I also want to continue on my path with GraphQL.
Building apps with these languages as my first choice will push me to learn specifically these languages. Last year this list extended to include Crystal, Ruby, Java, Vue (though this isn't entirely off the table with v3 around the corner) and a selection of others that seemed to change depending on what day you asked me.
I've successfully held myself accountable for my own technology stack shrink-wrapping previously but this one is a bit tighter than usual. My current MyOSRS micro-services sampling project has been a fantastic at keeping me focused on TypeScript code. As has the supplementary NPM package
This post intentionally is also meant to help focus me on just what I've talked about above.
It's time for me to get way more serious about my languages of choice.