Let me show you some example first to better illustrate and put some context. Let us start with the most popular of them all -- Linux Torvalds (father of Linux ). One of the few remarkable ones are:
Linux Pull Request Meltdown
On this post you can see more details about the incident, wherein a contributor had submitted a pull request for some changes and unfortunately Linus find the changes not satisfying, this had caused him to utter words such as crap,shit and idiot.
Nvidia Fuck You!
Watch this video to see how Linus pulled out his middle finger during a public conference, facing the camera straight and saying "Nvidia Fuck You!"
Java is a horrible language
An interview with Linus by some fella turned into some ranting about Java.
Aside from those, there are other less-popular grumpiness we encouter in daily basis:
Social Media and Public Forums
There are lots of thread out there on which simply asking some question will be quickly retaliated with :
- "Let me Google that for you" link
- ironic/troll answers making the poster feel they had asked very stupid question.
- "dont ask us to do your homework"
- "maybe we should protect this thread from noobs" statements
There is also some popular Twitter account specially crafted to just mock "Clueless Managers" asking some stupid questions/statements
Few notable Tweets are:
The tweet seems implies the Manager is too stupid to not know that DevOps is not something you can just walk in to store to buy some of it.
Can we get a #DevOps? I have no idea what it is, but I keep hearing people talk about it. How much is a devop anyway?— Clueless Dev Manager (@clueless_dev) May 31, 2015
while this seems fun to read for some developers, people outside our profession doesn't find it funny.
IT/MIS Department/Technical support
Corporate/private organizations is not safe as well for those grumpiness from developers, specially on Manager-Developers relations and System Administrators-End Users conversations. This might come in many forms and usually not mean as you can find in public internet group/forums, but to some extent still annoying because of the way how sarcastic and "unfriendly" the approach the conversation is being carried out. Some interactions might not be mean on its word composition, but most of the time, we are getting this "pre-canned" responses which is not useful at all.
So why this is happening?
answer varies from different factors, but I could illustrate some key points that might be applicable in some cases in one way or another.
Medium of Communication
There is this popular phrase in this mail
Talk is cheap. Show me the code.
Unlike ordinary humans, wherein we use all sort of Interpersonal communications to communicate. Developers tend to think that written program code is the most effective way to communicate. This leads into making less verbally active developers, since they rather "showcase" their idea/thoughts via code rather than speaking about it.
To understand the reason behind that thinking, imagine if you are a director of a movie and you are showing it to your friends. You rather shut your mouth and let your friends see the good things about your work with their own eyes, instead of you telling them one by one what are the good things about the movie.
This shift of preferred communication medium from verbal to written codes is usually misinterpreted as grumpiness.
That is actually why most of the developers is silent and doesn't speak a lot, learn how to read codes and you will be surprised to find out that programmers communicates a lot!
Self-righteous flawed paradigm
In the age on which everything is getting digital, no matter what field it is, it will always boils down to having some programmer to write the codes for it in one way or another. For example, if you are a very specialized Financial Analyst, you cannot actually carry out your forecasting algorithms/solutions w/o having to be somewhat having to require a programmer to write the code for it so you can feed your data. Same with Military, Government, Astronomy etc. You cannot use paper/pencil anymore to do anything serious. This made Developers feel they are the most important people in the world. Thus causing unnecessary boost of ego. Knowing the how-to's made most of developers think their superiority can be directly translated into other aspects, causing a sense that one's beliefs, actions, or affiliations are of greater virtue than those of the average person. This causes developers to be often intolerant of the opinions and behaviors of others.
Respect is earned, not given
If you will notice in any community on which developers is chatting with each other, average developers is more susceptible to mean responses compared to developers who are known to have developed some popular library. This is in contrary to for example religious organizations on which they are very polite and courteous to newcomers. This is because most developers believes you have to "prove yourself" first, before they take you seriously.
Political Correctness is not important
Unlike in most traditional corporate environment wherein you are stucked with your boss or co-workers whether you like them or not. Most of the developers in open-source community or in Agile teams has the ability to pick which people they like working with. Thus there is no need to really be politically correct in terms of hierarchy and delegations.
Knowing more about reality has a huge price
If you recall Edward Snowden, a former contractor of NSA. Being a System Administrator makes you aware of all the wrong-doings of the government in terms of our privacy. Knowing all these details makes your view of the world different compared to just a mediocare person. This is somewhat similar to for example how when we are stil a child view the world as a friendly place, all people are good and everybody lives happily, but as you age and you read the history books, news and other medium. You'll become suddenly aware that the world is actually fucked up and thus develop hatred towards humanity in general. This is also happening in most IT professionals, for example looking at how untidy the codes are (things that normal end-users is not aware of) makes you mad at whoever wrote it, since its making your job harder.
Of course there are also some common causes such as being introvert and other sort of common things. But I did not emphasized them here, since those are actually common in any resource. Now that you know about this, use this to better understand developers so you don't develop hatred towards them. It just really takes time to build rapport with developers so you really need to pack a lot of patience. To my fellow developers, here is my advice:
As you age, you'll find yourself wrong on some things, right on some other things. But please, in the process of it, don't be arrogant.— Darwin Biler (@buonzz) January 14, 2016