BJ asks:
How do you handle disagreements? What happens when David and Jamis disagree on the best way to implement something? What happens when Ryan and Jason disagree on the best way to interact with a new feature? How do you avoid arguing for hours about the (seemingly) tiny details?
Luckily, we don’t run into extended disagreements all that often. Disagreements can certainly be a good thing from time to time, but extended ones often have a negative impact on morale. We try to treat morale as the most important limited resource we have.
But when we’re deadlocked, eventually (usually 10-15 minutes into a discussion) someone is going to propose a solution. The solution usually involves the stronger advocate taking full responsibility for the decision.
For example, if Jamis feels a lot stronger about something than David does, Jamis will “win” but he’ll also be responsible for any bugs or support related issues due to this decision. This forces the winner to think about if they really believe in their position strongly enough to deal with the possible demands on their time post launch. If they still do, they usually accept the deal. If not, the “loser” gets his way without the support strings attached.
That’s just one example. It doesn’t always work this way, but that’s been a successful model we’ve used in the past.
One thing to keep in mind is this: Make sure you’re disagreeing on point. It’s really easy for arguments and disagreements to flare up quick. Flare-ups often lead to two people talking right past each other. They stop arguing with each other and instead argue at each other. At that point the discussion is lost and someone has to rein it back in.
Got a question for us?
We’ve received over 100 “Ask 37signals” questions so far. If you have a question about design, programming, entrepreneurship, marketing, or anything related, drop us an email at svn at 37signals dot com and include “design decisions” in the subject line. Thanks.
john
on 23 May 08very insightful
Rex
on 23 May 08Definitely good advice, but @john how is that insightful? Basically saying “walk what you talk”. Great principle but hardly a novel idea.
Martin
on 23 May 08I guess that you would not categorize “feeling a lot stronger about something” as “being more stubborn”. How do you distinguish?
I think that’s a challenge. I work with stubborn people and often just “give up” because they’re ignorant to reason, bordering thick headed or even immature.
Even if I firmly believe that their proposition is wrong, and argue against it, I usually give up after 30 minutes. So, in your lingo, I feel less strong about something than them, but in reality – I simply feel that these discussions are unfruitful at best and decide to pack my pride (and consider if I’m better off somewhere else).
On occasions we’ve launched stuff from “camp stubborn” only to revert/reimplement a few months later once they realize that it probably wasn’t as brilliant a move any way – and then there’s no mention of how we started on that feature. Wasted work and effort, urgh, not exactly the best business model…
Calling the stubbornness doesn’t really help – perhaps I’m handling them wrongly.
Chris
on 23 May 08@Martin, I’m going to venture a guess that the 37S team is more confident in each other’s knowledge than most of us can be in our own workplaces.
JF
on 23 May 08Martin, you distinguish on a case by case basis. Everyone can be stubborn sometimes. Most times the two opposing parties just have different views. It’s not stubbornness, just an honest difference of opinion.
Keith
on 23 May 08Personally I find that always being right helps in these situations.
No seriously. I actually find that in multiple developer environments the biggest issue in this regard is where defensiveness about code or direction leads to a knee jerk attack response.
I don’t find what @chris says as when I work with others it’s guys who I think are awesome – and we all suffer from “oh – I hope they like my code” syndrome!
Ben
on 23 May 08Good article. I’m fascinated by the inside of 37signals. It helps to get a real world look at company culture.
btw – What’s with the Microsoft ad on the Deck? I thought 37s was a group of apple lovers.
ZModem
on 23 May 08Another technique that can really help is to focus on Interests rather than Positions (both for yourself and for the person you disagree with).
James Maynard
on 24 May 08“design decisions”? Didn’t you mean “ask 37signals”?
Scott Purdie
on 24 May 08I would work it in a similar fashion although the “less stronger felt” employee would also be responsible for issues that result in their choice.
Great post
Scott
Denver Web Design
on 26 May 08I fully agree with JF. We have a similar structure here at Imulus and I think a big part of it is humility. There are many times I think I’m right but if I cool the emotions and passion around a topic and debate on point-by-point merits the disagreement will usually result in consensus.
A perfect example is our latest product which we are building. We are a .NET shop but we are listening to our employees which are suggesting to step outside of .NET and look at other structures to support our product. I’m not sure we will yet, but the topic is open for discussion at the office.
Charlton
on 27 May 08@Rex: Much of what they do at 37Signals is blindingly obvious. They just have the nerve to flout the conventional business wisdom and actually do the blindingly obvious.
This is not really meant as a criticism of 37Signals – it’s more of a condemnation of the software development and business world at large that a small group of people can do the simple obvious thing and it’s hailed as innovative and exceptional.
This discussion is closed.