Wednesday, 11 April 2007

Software designed for the good of the customer

When software design choices are motivated by some interest besides the good of the customer, the program has already failed. This makes DRM a failure. It also makes bloat, feature creep and pointless chrome a failure condition. It means that the customer will want what's best, but doesn't always know what's best, and making that decision for them is a big responsibility with big consequences.

DRM is a failed design because it looks for the good of a third party rather than the user. Once you get your songs from iTunes, for example, the DRM there attempts to control whether you can play that music on another computer or a device not made by Apple. At best, that's silently stabbing your customer in the back, and at worst you lose the customer because you're fighting with them.

If people want DRM-free music, they know where to get it: the peer-to-peer networks. They might start out wanting to do the right thing and purchase the music, but once they run into the DRM wall that says "no, you can't use it that way", chances are they'll defect. I see it as a losing battle.

If software is designed right, then it always does what the customer wants. It won't tell you that your portable music player is unacceptable. It won't tell you that you can't copy and paste from this or that document. It won't lock you out of your operating system for failing to dial home and tell the vendor that you really did buy it.

Mokalus of Borg

PS - If you try to force the customer's hand, you'll force it away from you.
PPS - There are plenty of developers doing it right on their own time.

No comments: