|Column Tag:||Inside Information
The Complexity Dilemma
Elegance vs. greed
By Chris Espinosa, Apple Computer, Inc., MacTech Magazine Regular Contributing Author
One of the tenents that Ive held for a long time is that the best solution to a given problem is the simpler one. An Occams Razor of business, Ive used this in everything from manuals to products to business contracts.
Of course, universal simplicity is hard. Sometimes you have to shift the complexity: for example, GUIs are easier to use, but harder to program. So another of my tenents is that you keep things simplest for the end user. Some of this I believe for esthetic reasons, the fundamental elegance of good simple design. But Ive also believed that simplicity is good business, that the effort you put into a simple design pays itself back in more usefulness to more people, with less expense and trouble later on.
Lately, though, Ive been proposing to people at Apple that complexity is better for business. And Ive lived to tell the tale, surprisingly. Heres my argument:
People understand the value of solving a problem. But theyre afraid that a solution thats too simple might somehow hold them back. (Havent you ever recommended to a friend to buy a Mac model a little better than they really need, because theyll grow into it?) So a little complexity actually justifies a higher purchase price. Of course, there are controls, because theres a limit to how much somebody will pay; the market sets an acceptable price for acceptable complexity.
In itself thats not so dishartening. You want your product to have legs, so that your customers can find their own level with it. This all explains why most of the top-selling applications and systems always have a few things that are Just Harder Than They Ought To Be, but still sell well. But theres a second, more insidious, mechanism that rewards developers who make things too complex.
After the user gets comfortable with the simple stuff, they hit the part thats just harder than it needs to be. Or they find the parts of the system that dont fit their needs or desires. So what do they do? They buy more hardware or software, or books, or training classes. They amass a lot of shareware and need more RAM. Then they get an upgrade to an application, which means they need to get the latest OS release, which means that they need to upgrade all of their other applications, too. Then companies network the computers together, and have the IS people write applications, and start hiring people to work on the Help Desk to answer user questions and improve productivity.
This is a tremendous amount of economic activity to overcome complexity. It keeps a lot of companies in business and employs a substantial number of people. And I believe that a lot of it wouldnt happen if the computers were simpler in the first place.
At this point I start sounding like a wild-eyed conspiracy theorist, accusing the masters of the computer industry of turning a billion dollars worth of technology into a hundred billion dollars of revenue by intentionally making things harder than they need to be. And sometimes I feel that way, especially when I see Microsoft selling a $49 upgrade to Windows 3.2 as having air bags and anti-lock brakes -- and what they mean is they fixed the bad design of the data compression feature that was the key reason to buy the previous $49 upgrade. The customers are so conditioned to paying to overcome complexity that they dont realize that, in the same stroke, theyre buying more complexity.
If you intentionally created complex products to take advantage of this cycle, your finance manager would probably call it an annuity stream while your customers may call it planned obsolesence (or worse). But if you create the simpler solution, and your competitor creates one just slightly more complex, which one will get the support of the training providers, the magazine editors, the book authors, the distribution channel, and the rest of the infrastructure that lives off of complexity?
My moral here is not that greed should win over elegance. It shouldnt. But if you are gifted enough to create truly elegant solutions, remember that you have to work harder to make customers appreciate how much money and effort they will save over the life cycle of the product. Youll have to encourage support, training, and auxiliary information providers that the opportunity lies in helping people build real solutions, not in documenting tricks and tips. And plan for your product to stay simple over time, while you spend your effort coming up with solutions for users REAL problems - not the problems that your last product created.