The definition of insanity is doing the same thing over and over and expecting different results.
Some say this sentence has been first pronounced by Benjamin Franklin, others attribute it to Mark Twain or Albert Einstein. They all are wrong. But the quality of the people to whom this quote is ascribed should tell you something about its correctness.
There is also an ancient Latin maxim (by Seneca) that states a similar concept:
Errare humanum est, perseverare autem diabolicum et tertia non datur.
To err is human; to persist [in committing such errors] is of the devil, and the third possibility is not given.
[Thanks to Wikipedia]
With this premises I have to conclude that the Devil is causing so much insanity in the world nowadays. Take this as a general discourse but it seems to me that many people keep doing the same things in the same old way, facing every time the same problems and delays without understanding that things can go really better just changing few things in their way of acting.
Excluding supernatural interventions, in my experience, this kind of behavior is mainly due to four reasons.
1. (Bad) Laziness
Not that kind that makes you find the fastest solution to solve a problem. This laziness is absolutely harmful; it's the concept of comfort zone amplified to the maximum. "I don't wanna change!" and "I don't wanna learn anything new!" are his/her mantra.
Every change in procedures is considered a total waste of time and a new developing environment is simply useless. If you have a couple of people of this kind in your team, you can be sure that every innovation will be hampered.
To overcome this behavior you can try to propose a total revolution in order to obtain a small change.
"I'm sure I've made the right choice!" no matter if this decision has been made years ago and now the world has changed. By the way, the initial choice may have been wrong from the beginning but nothing can make him/her change his/her mind. Probably this has something to do with self-esteem.
It's quite impossible to work together with this kind of developers, since they will never admit their faults and they'll try to put the blame on others.
Sometimes a good strategy may be to suggest things as they have been proposed by the arrogant himself.
There's nothing bad in not knowing something. The problem is when he/she doesn't care about his/her nescience (see point 1), when he/she doesn't want to admit it (see point 2) or when he/she doesn't trust others' suggestions.
This last point may seem a little strange: if I don't know something, I have to trust on someone that is more informed or skilled than me, right? Unfortunately it doesn't work this way. If you need a demonstration, search "chemtrails" on Google.
I don't have a suggestion on how to minimize the impact of these guys in your team. Maybe a training can be useful but the risk is that they don't trust the teacher.
This is the worst, especially if referred to a manager. He/she doesn't care about the feeling of his/her subordinates. "There is no need they should be happy doing their job" and "It's not a problem if they spend more time than what's needed in trivial tasks that can be automatized" are his/her thoughts when someone is complaining.
I don't know if there is some sadism in this behavior, but it's quite frustrating. And it's very bad for the team and for the whole Company.
During my life, I've had the "opportunity" to work with people belonging to one or more of the above categories and I can assure that the last is the worst. You simply cannot team up with someone that doesn't care about you.
Suggested complementary read: Is Better Possible? by Seth Godin and this Dilbert strip by Scott Adams.
Cover image by Connor McKee taken from Wikimedia Commons licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.