- Software as Career
- What do You Want From Your Career?
- Combining Software With Other Fields
- Does Education Matter?
- Personal Networking
- How to Become an Expert Developer
- How to Become an Expert Quickly
- Will Open Source Development Help Your Career?
- How to Become a Freelance Java Developer
- Don't Be a Herdie
- Learning is Hard But Don't Give Up
Don't Be a Herdie
The term herdie is my label for a person who exhibits herd-like behaviour. By herd-like behaviour I mean doing something just because everyone else does it without questioning it.
I used to laugh at how easily people are manipulated into following the latest fashion trends. Every year new colors, shapes, patterns, looks etc. No rational explanation about why this or that is now fashion. It just is, because somebody else says so. That is, until I realized that it is happening just as much in our own industry - the IT industry.
Since I started in this industry in 1998 I have heard and read developer say all kinds of irrational things. And yes, the statements often follow "fashion trends" in our industry. When I started it was the "waterfall process" vs. "iterative process" - shortly after relabeled to "agile methodologies". Since then it was "distributed objects" which turned out to be a disaster despite looking really cool. Then came SOAP, WSDL and SOA, and yet that turned out to be a disaster too. And there have been more along the way. "XML for everything", for one.
Today (2015) we have trends like AngularJS (which people are starting to turn away from), 2-way data binding, and "declarative is better than imperative" ) etc. and I am sure you can come up with more examples.
Herdies have certain traits that you can recognize them by - and thus hopefully avoid acting like a herdie yourself. Here is a short list which is by no means exhaustive.
Herdies Don't Question The Herd
You can recognize a herdie by how they talk about a given method, product, tool, brand etc. They are usually all praise with no rational arguments to back it up, except that "this or that is 'cool' ".
It is "cool" that AngularJS can automatically update the HTML when a variable changes (even though this is pretty easy to achieve in other ways).
It is "cool" that a Java application server can automatically move an EJB from one server to another if the server is busy (regardless of the fact that moving the EJB may be more expensive than the operation the EJB was requested to perform).
Herdies do not question what side effects a given technology, method or idea has, or whether the same could have been achieved in easier ways. They are in love with the herd praising the idea, and will hear no criticism of it. Herdies don't question the herd. They follow it blindly.
Herdies Follow Brands
Herdies tend to follow brands. Apple fans. Google fans. Microsoft fans. They like the technology because company XYZ made it. This one reason they often don't question the idea. They are in love with the creator. They want to be part of the cool herd or tribe. This is irrational behaviour. Nevertheless, our industry has plenty of it.
Herdies List Only The Pros
A herdie will typically only list the pros of a product and not the cons. In fact, they will tend to ignore the cons, or even try to argue why they are not cons at all, or do not even exist. Or maybe they even counter attack.
Herdies Counter Attack
Herdies are often very hard to argue with. Instead of listening to your rational arguments against a given idea, they will counter attack with arguments against whatever they believe your favorite idea is. They don't seem to realize that labeling some other idea as "bad" does not make their own beloved idea "good". If it sucks, it sucks regardless of how much other ideas suck.
Most of Us Are Herdies From Time to Time
Whether we want to or not, most of us act like herdies from time to time. We see some new piece of technology, and it's just sooo cool! We have to tell everyone else about it, and about how great it is compared to what else is out there.
Additionally, not being a herdie requires education and experience. The first time you hear about the idea of distributed objects it may sound incredibly cool. Until you have tried developing such a system and realize all the problems such an approach has. Therefore we are all more prone to being herdies in the beginning of our careers.
With experience we tend to become more skeptical though. Once we have been burned by an idea we believed in, we tend to be harder to convince the next time.
Be Skeptical - Think For Yourself
New technologies, methods and ideas are not always wrong. Sometimes they really are better.
When you do see a new method or technology that looks cool (I still do from time to time), don't be afraid to be enthusiastic about it, just because you don't want to act like a herdie. Be enthusiastic, but skeptical. Instead of saying "Wow, this is so cool - so much cooler than XYZ", say "This looks cool, but I wonder how cool it will be in practice".
Try to look at both the pros and cons of the technology, method or idea. They all have pros and cons. If you look at only the pros, you are acting like a herdie.
Not everything that shines is gold. But not everything new is crap either. Don't just be a herdie. Think for yourself.