It’s been 20 years since I made my first website. I've been burned by the hype time and again. If you haven’t already I bet you will too. Below are some reasons why I’ve learned to ignore the hype.
It's so easy for what is popular today to turn into vaporware tomorrow. The project you are coding right now could require a complete rewrite down the line. Are we ever prepared for when that happens? Never! We probably won't be the ones cleaning up the mess, after all. Even when we do care, it's hard to make software development sustainable. When choosing a particular tool it's important to consider how hard it will be to transition away.
Sometimes it can take a while to learn a new tool. Is the ramp up time worth the reward? If you don’t have the time don’t feel like you are being left behind. Most likely someone else at another company is still coding on the same stack you are. #jobsecurity
If it ain’t broke don’t fix it. This ole adage may apply. Sometimes it’s OK to stick with tried and true methods that work. Does the hypey thing really make your work life easier in the long run?
It's easy to do what's popular, however the popular thing might not be the most performant, the most sustainable, or the easiest for an entire engineering team to understand.
It's much harder to do what is right, however what is considered a "best practice" can be subjective. It is important to back up your coding practices with analytical data, making the decision process objective. I find a short checklist helps start the decision making process:
Does this new thing
- allow you to write code that is human readable?
- produce code that is optimized for the environment it runs in?
- help reduce the size of the application?
- allow for the code to be portable and/or extensible?
- ensure longevity for the code I am writing?
- provide methods to easily test it's APIs are working?
It's hard to sift through all the Top 10 and this vs. that posts to understand what is important, what can make or break the next application you develop. The hype divides us. Instead of getting on that hype train take the time to learn web standards. If you are on the front end, learn vanilla JS. Learn different software development patterns and figure out what works. You'd be surprised nowadays how many browser APIs make features in JS libraries obsolete or seem superfluous.