What Works Today
I think about the Shiny Toy Syndrome every so often. A few years ago, I was being interviewed on a live stream, and the chat kept bringing up more technology Iâve heard of but havenât used yet. Itâs one of those nagging things in the back of your mind that you must catch up with the latest and greatest. However, having worked in software for the past decade, the latest and greatest is oftentimes obfuscated with what is known to work and what doesnât. Best practices take time to discover. Many corner cases are not covered. And sometimes the new shiny thing is hidden from your readers or customers, so you are cranking widgets over creating value.
I love playing with new toys. But there comes a point where to get anything done with that toy, you have to learn from YouTube tutorials, blog posts, and Reddit threads. After mindlessly scrolling through this, your brain is too tired to start. (Iâm looking at you Anki). Sometimes, itâs best to get started with what you already know today, and later pick up the tool if it meets your criteria.
If you know how to use Postgres and SQLite, use them! Are those new databases fun to play with? Yeah, I bet they are, but you know that will be time spent on learning that new tool. Iâve been in tutorial hell since starting my programming journey, and I realize itâs better to pick up a new tool when youâve got a project in mind. But be warned, it should be the only new variable. If you try to stack new technologies together, youâre in for one hell of a ride. Like if you want to use a new Database, caching layer, and server framework, good luck to you. I donât have the time or patience for that. Iâd rather spend my evenings working on enough knowns.
That brings me to the Should vs. Must. In Elle Lunaâs book, The Crossroads of Should and Must, she describes this pull of doing what you know in your gut is right. For her, it was painting on canvases in her private studio. I rarely think my pull is to learn R for the fun of it. Itâs typically with a different goal in mind, like using R for statistical methods to run on a specific dataset to help me determine statistical significance. With a more specific goal in mind, Iâm able to let go of my brainâs tendency to try and understand everything before getting started. An old co-worker of mine thinks about this like inertia. You need a certain amount of activation energy to get you started. When that goal is clearer in my mind, Iâm able to lower that activation energy and get the ball rolling faster.
- Donât know enough breadth? Call an expert to get you started.
- Donât know how all of these technologies might go together? Oh boy, thereâs an exciting new thing called Large Language Models that might be able to help make you a scaffold.
And many times, the technical aspects are the easiest. The harder part is the context in which youâre creating something. And understanding the market to validate your ideas. Or interviewing your customers to understand the needs of the customer.
Stick with the boring stack. In a recent episode of the Changelog, Kelvin Omereshone (K.O.O) talked about SAILS and being a boring stack. SAILS is a full-stack framework thatâs been around for over a decade. Itâs reliable. Itâs using technology thatâs been around for a while, hence âboringâ. But thatâs the point of being boring. It shouldnât be there to stop you from what youâre doing. It should liberate you to think about the next thing.
Just start. In An Invocation for Beginnings, Ze Frank talks about all the little ways we start or donât start. Starting looks different to different people. What you should steer away from is how an idealized version of starting should look like. Embrace the mess. Start with a brainstorm, a post-it note, or a lot of Post-it notes. Fill your desk and reject the idea everything has to be perfect-looking. Life is not a super well-organized bullet journal with neatly made gridlines. Itâs imperfect and full of unknowns and assumptions. Start the process before making the template. Donât edge towards a premature optimization. Just start.
Then, once itâs up and running, we talk about what will work tomorrow.
Written by Jeremy Wong and published on .