DEV Community


Posted on

Programming "Flavors of the Month": Why I feel We Need Them

React, Vue, Angular, Ember, Typescript, TensorFlow, PowerBI, Blockchain, Machine Learning, Neural Networks, NoSQL, and the list goes on...and on...and on. So, other than to prove the long-hypothesized theory that you most certainly can unite developers of all areas into a worldwide riot with a simple list of 12 recent technologies, why did I lead with that list?

The reason is two-fold. 1) I want you to be either grinding your teeth or cynically chuckling to yourself right now, and 2) Because I think you need to take a look at that list again whether you want to or not.

But why? Well, because that list and our reactions to it make a strong point that speaks to one of the greatest strengths and weaknesses of the development and engineering community: bias. It does not matter if you are biased for or against a technology. What matters is that we, as developers, seem to be simultaneously driven by a desire to create change and avoid change.

It is my honest opinion that we need buzzy, flavor-of-the-month technologies in our daily lives. Allow me to illustrate this point using a product most of us have heard of: ShamWOW. For those of you who don't know, the ShamWOW was a stupid microfiber shammy like many others that had a really creepy guy demonstrate its use in a commercial, QVC-style. When this commercial was flooding our lives every time we turned on the TV, most of us went through the natural reaction cycle we all do with products like that:

1. Good commercial, but I wouldn't get on an elevator with that guy, let alone buy something from him.

2. Okay, this is getting annoying. I get it: "You followin' me camera guy?", just enough with it already!

3. Do you really think it actually does get half the cola from the rug with no pressure? I totally doubt it.

4. You know what? I'm thinking of buying that stupid thing just so that I can put a video on YouTube that shows what a load of crap this is.

5. Hey, my ShamWOW is here.

6. Huh. It actually is really absorbent.

7. This cleans fingerprints off my tablet and phone really well too...

8. [You now own a drawer full of cheap microfiber shammies for screen care that you never would have thought twice about otherwise]

Weird right? See, while many people get annoyed by things but are capable of letting it go, problem-solvers need closure on an issue before it leaves their mind. As developers, we are lifelong problem solvers who like to get answers for ourselves rather than rely on the word of others. Sometimes, we see the value in something and want to test it to see if it lives up to expectations. Other times, we think something is stupid and simply want to test it out so that we can report to the world just how stupid.

Regardless of our reasons, the result is the same. What other industries innovate, change, and back away from failures as quickly as modern Software? Even Microsoft, the Methuselah-sloth of admitting a product is a lost cause, is rumored to be calling it quits on Edge in favor of a Chromium-based browser.

In contrast, Ford Motor Company still uses live-axle rear ends on their Mustangs. And sure, we all love a car that goes sort of fast in a straight line, then bursts into flame when you turn the wheel to corner before rolling down a hill and exploding. But maybe there is a better set up? You know, like the kind of set up used by every other performance car for the past 25 years?

My point is that I believe we need to have a constant interchange of ideas. While annoying, I think being bombarded with constant assertions that this new way of doing things will "change the face of software", encourages us to attempt to either prove, or disprove, this assertion. This, in turn, breeds discussion (argument) which forces those on both sides to take a deeper look at the technology in question. In doing so, the project gets forked, its weaknesses improved, and a new flavor of the month is born.

In short, love it or hate it, the new hotness is good for Software. Not because it really is better than everything else, as it claims. But rather, because it inspires millions of problem solvers to stand up and test the assertions of its creators, thereby improving the product. It also allows those problem solvers to learn how to solve the same problems in a totally different way, making them better problem solvers for the next time a new JS Framework claims it makes Time Travel possible.

Top comments (0)