Some time ago I read something that seemed at the moment very funny on the lucene mailing list: There were a few spots open for a conference so the community had to decide on the speakers. To quote the essence of it: “We need to decide on speakers, which means we need to decide on how to decide on speakers.” (Grant Ingersoll)
While seemingly funny, the question is really much deeper than it seems initially. Making decisions for yourself is pretty easy and for the most part is done subconsciously influenced by various factors in your life/work.
But how does a group make decisions? That’s a whole different matter.

Signpost - lots of possibilities
There are two ideal cases, as to the length of the decision making process, within a group that makes decisions:
- They all immediately propose and approve of the same idea. In my opinion this happens very rarely. Each person is different by definition and having a single “hive-mind” in the group would be perfect but rarely happens.
- One authority figure proposes something and all the others follow like sheep and approve of it. Unfortunately this happens too often. It happens often because the authority figure is seen as the “manager”, “senior developer” or some other fancy title when in fact the accurate title is “Dictator” and the rest are sheeple.
So the two quickest ways to make a decision are not the best for the purpose of the project, lunch order, camping trip organization or whatever. One rarely happens and the other means some people are dumb and one is taking advantage of the others.
Marginally better is to set up a committee of trusted members and have them decide. This is better but there may still be people upset that they’re not in the committee.
Voting on the topic (with majority voting rules) is better since everyone gets to have their word. But it’s not perfect since there will always be a minority, there will always be people upset. And there also will be people who let themselves get influenced into giving a certain vote.
The best method seems to be to reach a consensus. If no consensus in reached after the initial discussion you talk. And talk, and give each person in the group the chance to argument his opinion and maybe comment on the opinions of others. The important thing is that after discussions some people will change their opinions, “see the light” or the stupidity in their previous arguments. And thus the votes change and after a time you reach a consensus.
It’s harder and it takes a lot more time than other decision-making methods, but it does seem the only one which listens to everybody’s voice and doesn’t leave anyone dissapointed. In the end I think it also makes the team understand itself better so that in the future you can reach decisions faster and eventually just have a hive-mind of the group.
The important aspects are:
- Everybody must say something, there cannot be any blank votes .
- Nobody’s opinion is more important
- Like all good things, it’s done in iterations that at each step approach the best result.
Only problem is it works best in small teams. As teams grow communication can be a lot of overhead and messes up everything.
As a personal note, I think decision making should be mandatory in schools too. Even in high school there were the occasional problems when deciding where to go out. And they haven’t stopped now.