At one of last years Rails Edge conferences I was in a game of Werewolf with Chad Fowler and Dave Thomas. Given the current information I decided that Chad and Dave were in fact the werewolves. Of course, I was not even close to certain, but of the options, it was the one that made the most sense. I started explaining my thought process and suddenly there was a vote to see if I should be killed. This did not surprise me. In life you will generally be better off taking the side of Chad Fowler and Dave Thomas if you find yourself in a situation where they both disagree with me. But, this time, I was right, they killed me and the game ended all villagers dead.
Interestingly, this exact pattern often plays out in software development also. People are afraid to challenge leaders in general. Unfortunately, some of the best solutions are found because leaders are challenged. There's no question that I owe quite a bit of credit to the various team members I have had that wouldn't take my first solution as 'good enough'. I'm a better developer because of them, and the resulting code (some of which is available as Open Source) is higher quality.
Some leaders do not take criticism well. Please do not let that stop you from challenging them. If they are truly good leaders they will recognize that by challenging them, you are doing them a favor. If they do not recognize that, it's important for everyone else to be exposed to your ideas, so that a crowd can overturn an unfit leader.
So don't be afraid to challenge leaders, everyone will benefit from it.
Jay,
ReplyDeletePerhaps your post should be titled "becoming a better leader".
If people spend time always challenging the leader then nothing gets done. This can be cancerous and damaging, especially in an agile environment. Compounding the problem is that people don't know what they don't know. Generally, the one "leading" has the most experience.
So in becoming a better leader, the leader should elicit the opinions of their team during the decision making process. However, once the decision is made, it is time to move on.
Yes, but you ended up dead ;-)
ReplyDeleteLocal software developer found murdered in home, police report describes "Pickaxe-related injuries".
ReplyDeleteI kid! :)
I find submitting patches to code/books a positive way to go about "challenging leaders" or really anyone of course.
ReplyDeleteJust investigating a new project/gem? Submit a patch and see if you're on the right track.
I submitted a bunch of prototype patches recently but they got rejected and I got educated on what/where prototype was going, etc.
I challenged, and I learned. OSS is awesome that way.
This reminds me of Crucial Confrontations though I haven't really thought of it in the context of challenging a software design.
ReplyDeleteDisobedience, in the eyes of anyone who has read history, is man's original virtue. It is through disobedience that progress has been made, through disobedience and through rebellion. -Oscar Wilde
ReplyDeleteI live by it ;)