Remix.run Logo
imiric a day ago

> you chase every new shiny thing and you write a product or service in that shiny thing

That is a choice you make. Software development doesn't have to be that way.

In fact, it's saner for your productivity, ease of maintenance and onboarding new team members, and ultimately for your users, that you choose boring technology over the shiny new thing that just launched, or that is currently trending. Sure, you won't be able to add yet another buzzword to your CV, but you will deepen your knowledge of the stable technology, won't have to keep track of a constant stream of updates that may or may not break your application, and will have a much better chance of finding developers familiar with the boring tech. Most importantly, you will subject your users to fewer risks, since the product will be built on stable ground.

Developers often forget that the reason we write software is to solve a problem, and not to serve our own nerdy desire to play with tech. Enjoying your work is important, and the choice of tech plays a role in that, but the main motivation should come from solving a problem first, not from the tech itself.

This reminds me of a heated debate I had recently[1] about a popular project that was rewritten multiple times for little reason beyond the developer "felt like it". This is insane to me, yet for some reason, many people don't mind.

The criteria I prefer to use when choosing a tech stack is:

1. Pick the right tool for the job. Depending on your requirements, narrow down your options to those that would be most helpful for building the product, whatever "helpful" means in your context. I.e. if you need it done fast, learning how to use it wouldn't be a good idea.

2. Pick the boring, battle-tested, and proven tool. Discriminate. Do you really need all the features of tool A? Err on the side of simplicity.

3. And other things like: what does the company/environment already use, what is the team most comfortable with, and so on. Consistency and familiarity are important.

But I agree with others here. As much as I lament the current state of the software industry, a lot of it has to do with the sheer explosion in popularity of the field, not with us losing anything. The same people who were building awesome stuff decades ago, are still doing it today. They just have to deal with a lot more bullshit now.

[1]: https://news.ycombinator.com/item?id=45251375#45254607