Less is Still Just Less.

08/25/10 Joe

“Complex” apps are usually a mess. Look at any Adobe app, or Microsoft app. Most of them (not all) are a catastrophic mess. They look like the drawer in your laundry room. The one where disparate items like flashlights, rulers, sewing kits, giveaway pencils, off-sized screws, and IKEA pieces, and half-used batteries come to rest. Not purposefully lain, but because no force but apathy, and gravity could hope to contain them.

Complex apps “do more.” But they do it at the expense of crashes, and a manual in seven languages. Users use them, they hate them. They’re trapped by some function that no other app has, but that they need.

Take Photoshop for example (please take it!). No other app does RGB/CMYK, and compositing as elegantly. It’s amazing with it’s bezier curve handling and it’s simple yet incredibly powerful layer management. But on awkwardly grafted on top of that are functions like 3D compositing, check-in/check-out, and “share my screen” which nobody uses. These three examples are some of the more egregious, but they’re nowhere near the totality of the list. The whole app is a cruft of duplicative menus, bad help systems, and wanderingly bad UI.

But I still use it. Why? Because those features I need very badly to be good at my job are found nowhere else within a single app. If they were, I would pay not only the (freaking) $700 I normally pay for a license, but I swear on my design career I would pay double. Double.

I would pay double for an app that did the things I need in Photoshop, but did not crash, and did not suck. I want prettiness in a UI. I want logic, and elegance. Like most designers, I love surrounding myself with well-built things. I find joy in interacting with a laptop hinge that slides into place just-so, or a touch screen that actually reacts to my touch.

There are apps like http://www.pixelmator.com/ that I’m dying to use. Gorgeous, well planned, and humanist. But it doesn’t do the things that I absolutely have to have to make the switch. The pain of switching would mean I have to run multiple apps, or keep a copy of CrashyShop on hand for use many times a week. It’s not worth the pain. No matter how much I love beautifully designed things, I have to make a living with my tools, and if anything slows me down even slightly, I’m not going to use it.

So. We have about a million blog articles online today expounding the excellence, and instant success of “simple.” You can even look at our blog to see how we’re devotees of “less.” But I’ll be honest- our most profitable app is our most complex. People pay for functionality if it is done well. People use simple if it is free…

So as developers we’re left with a problem. Feature-rich applications lead to crufty interfaces. It’s not unavoidable, but it’s nearly inevitable. If you’re ever going to launch your app you must (MUST) limit its feature set. But if you’re ever going to make money off your app, you have to keep adding to it.

Gradually, like the ocean tides, you wear down the apprehension of your audience. Keep beating the drum. Keep enticing people who have tried it once before to try once again. Eventually the feature that kept them from sticking before will be the one you just added. But the game is to do it well. To do it smartly. To add features without adding complexity.

We are not experts on the subject, but we’re cracking every book, blog, and beer we can to try to get to the bottom of it. Every new feature brings the chance to add new users, and alienate old ones… It’s the way you add it that makes the difference between winning or losing users.