Brian Bailey Preface to the Revised Edition

Human problem or software problem?

Here's an excellent post from 37signals: Control vs. Communication.

Whether you build software or use it, this is worth reading. In fact, it applies to organizations in general. The question is: When you face a problem, do you solve it through rules, policies or, in this case, software restrictions, or do you solve it through communication and individual responsibility?

More and more, there's a perspective that software must prevent every mistake a user could possibly make. In fact, if a user can mess something up through a maze of obscure steps, steps nearly intentional in their negative impact, it's a bug in the software, not the person :)

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.

The fact is that someone who is attempting to route around authority will continue to seek out those avenues when they hit a manufactured roadblock. That's the core issue to address. Software can do a lot of things, and certainly must handle common mistakes as well as common hacks, but at some point the user has a personal responsibility as well.

Read the full post.