The Long Term
It’s popular nowadays to bash javascript frameworks, especially if you’re outside of the javascript community. And I get it - and am guilty of it myself.
It usually goes something like this: the tooling and the ecosystem is an order of magnitude more complex than other approaches, and it seems to change rapidly every few years. It feels like a new reverse Moore’s Law - new build tool, new framework, new library every 18 months or so.
I find these debates socially unproductive, but professionally educational.
You see - we’ve been here before. This kind of cycle has been happening for years, if not decades. Before modern javascript, the hatred was directed towards Java, or J2EE. I don’t know what it was before that, because I was too young, but I’ll bet money it happened.
Amidst all of the emotion and vitriol online about this topic, there are a few things that come to mind.
Firstly - programming isn’t just a tool. We ultra-rational programmers like to think of technology as an impartial, totally unbiased tool. But it’s not. Languages dictate how we think, and often what we think and are able to think. This leads us into various directions depending on our language.
But more importantly, when we choose a stack, we are also choosing a community.
My second thought about this topic is that we can still learn how to make better technical decisions. If you’re new to the industry you might see lots of people essentially deciding what tech to use based on what they see others doing. Or what seems like the easiest.
Question that, dig in and hold yourself to a higher standard. Encourage the people around you to ask questions about the long term tradeoffs, the short term benefits, the recruiting pool, the long term cost, and more.
In the long term, all programming languages go the way of the dodo. COBOL is basically dead. Fortran is dead. Ada is dead. Pascal is dead. Smalltalk is dead. And so on. Your favorite language will die. And you will probably be around to see it.
How should we feel about this?
I think we should feel optimistic. This means that our perpetual search for novelty that so often screws up our decision making is still satiated over the long term.
If you’re worried about what happens to your career when your current favorite language or framework goes out of style, don’t be. Instead, go learn a new language. If you’ve only learned one language, this might seem daunting. But it’s really not as hard as it looks.
Next time you stumble upon a flame war about some tool or technology, instead of joining the mob, go learn a new language and see if you can apply what you learn to your job.