Friday, February 16, 2007

Control versus communication

A nice post from Jason at 37 Signals: Control versus communication about people wanting to control other‘s ability to perform tasks in applications. I get this same sort of request at least 23 times a day. It usually starts with, “We don‘t want [xxxxxx] to be able to do [fill in the blank].“ My answer is always the same, “Nah, we‘re not going to do that…”

Preventing someone from saying or doing something often breaks these free flowing communication channels and introduces miscommunication or silence.. two cancers of collaboration.

There is no chemotherapy for these cancers. Once they get started you are toast.

Back to the customers... When they ask how to prevent people from doing this or that I usually reply with something like "Have you tried asking them not to do this or that? If you don't want them to upload files just ask them not to. If you don't want them to create to-do lists just ask them not to. Communicate with them as you would if you weren't using software."

This is one of the basic tenets of collaboration and ultimately to being able to scale. This is flatness in action. If you build a caste system into your applications the game is over. It‘s the Golden Rule embedded in code. Treat others the way you would like to be treated. Some people have a hard time understanding this, that these values have to be embedded in the code to protect the conditions which make this stuff work in the first place.

Simply communicating with people about your expectations of their behavior is often the simplest and most effective solution. It's respectful, it's kind, it's fair. And if someone does something you didn't want them to do just remind them politely that they weren't supposed to do that. They'll almost always get it the second time.
Respectful, kind, fair.. Isn‘t this how you would like to be treated? It works for me.

No comments: