Good Product Design Is Not So Simple
from the nice-and-easy dept
Whether you're talking web apps or mp3 players, simplicity of design is all the rage right now. Many are predicting the demise of bulky software projects, in favor of lighter alternatives, with many extraneous features removed. However, software designer Joel Spolsky has a good argument why this simplistic view of simplicity may be misguided. For one thing, while it may be true that the majority of users only use a small number of a product's features, those features aren't the same for everyone. So stripping a product down to only its core features is a foolish strategy. Another important point is that people confuse simplicity of design with a clean design. The iPod may be seen as having a simple design, but it's actually rather feature-ladened, and new generations of the iPod continue to see more features added. What it is is clean and easy to use. The same goes for many popular Web 2.0 sites, which routinely add new features and services. For the most part, Microsoft has so far dismissed the threat of web-based apps, saying in essence what Spolsky is saying, that people have tried things like stripped down word processors for years, and that it's gone nowhere. That may be true, but the main appeal of web-based apps won't be their lack of features, but rather some very important features, such as their being on the web, and their being conducive to collaboration. Design mantras may sound good, but ultimately what's needed are good products with well thought out functionality.Thank you for reading this Techdirt post. With so many things competing for everyone’s attention these days, we really appreciate you giving us your time. We work hard every day to put quality content out there for our community.
Techdirt is one of the few remaining truly independent media outlets. We do not have a giant corporation behind us, and we rely heavily on our community to support us, in an age when advertisers are increasingly uninterested in sponsoring small, independent sites — especially a site like ours that is unwilling to pull punches in its reporting and analysis.
While other websites have resorted to paywalls, registration requirements, and increasingly annoying/intrusive advertising, we have always kept Techdirt open and available to anyone. But in order to continue doing so, we need your support. We offer a variety of ways for our readers to support us, from direct donations to special subscriptions and cool merchandise — and every little bit helps. Thank you.
–The Techdirt Team
Reader Comments
Subscribe: RSS
View by: Time | Thread
don't forget...
[ link to this | view in chronology ]
and granted, i may not use tables all the time in a word document, the other night, i had to show my mom how to use them. if not, she'd have to calculate the spacing between columns, or try and set the tabs (if they didn't strip that out)
so, sometimes they can be annoyin (auto letter format by clippy anyone?) but they are there for a reason. just learn how to "avoid" until needed
[ link to this | view in chronology ]
Extensions
A decent example is Firefox. It does have a ton of features that I probably don't and won't use but it does allow for the possibility for me to extend it to a point that I find useful. For example I've installed a spell checking extension and I love it. And I love Firefox for allowing me to do that.
Anyway, thats what I think should happen to these apps...
[ link to this | view in chronology ]
Two Ways To Program...
[ link to this | view in chronology ]
Re: Two Ways To Program...
Here is my criterion for deciding whether the unsteady complexity is worth it: if it is sufficiently compartmentalized that the complexity does not negatively and unexpectedly interact with the parts that are supposed to remain simple, then it is acceptable. If you allow complex features to infest your software and destroy the simple things then you have nothing left but a nest of evil.
There is a business reason to disagree with me though. Can you spot it? Users will never even start using your product if it lacks features. If it has features but they descend into mindboggling complexity upon detailed inspection, then at least you have users.
[ link to this | view in chronology ]
Re: Two Ways To Program...
that was beautiful. so well put
[ link to this | view in chronology ]
Is it actually simplicity
An app, car, book, whatever can be complex if its disorganized and fails to follow a clear sensible pattern...Things only get worse when things are added in the next version.
Any Microsoft office app is an appropriate example- so much stuff packed together horribly with no real changes to its organization for years. That is what less-than-power-users find mystifying and thus call it -too complex-
[ link to this | view in chronology ]
What are the odds that my admin is going to be writing Visual Basic macros anytime soon?
[ link to this | view in chronology ]
Simplicity needs flexibility
Everyday tasks must be simple and a few clicks (or pushes) away, but there must be an option for that once-a-month-spacial-need.
Firefox and Opera are excelent examples of great software.
[ link to this | view in chronology ]
RE: Two Ways To Program...
if( complicated )
{
// Do complicated task here
}
They should be added only as needed. For example, in Microsoft Office, Almost 99% of people using a word processor must be able to properly edit text but how many of them need to write macros for word? Now lets say that macros are very complicated to implement as a programmer and understand as a user. Could we make the core word processing functionality darn near perfect and add the macro functionality as a plug-in that can be removed and updated? So that we don't have to get the perfect solution every time the first time. Obviously no man, woman, or group thus far has made a perfect piece of software. And don't forget the old saying:
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs and the Universe trying to produce bigger and better idiots. So far, the Universe is winning" - Rich Cook
If the software is not built with ideal that there are still idiots out there that can't set the clocks on the dashboard of their car. How do we expect users to grasp a macro. As if they even know what one is? However, a plugin should be provided that can provide this functionality should be included until the time that the software is going to assimilate the functionality and make it a core part.
Which brings me to the reason that we are here... Good Product Design Is Not So Simple is true but is masking the ultimate issue here.
Most people do not know what they are doing lucidly enough to come up with a simple solution. That often takes time and MONEY.
Money is the reason we are here.
[ link to this | view in chronology ]
Office 2007
I do agree that extensions should be the way to go, though, although it might be a bit complex in the long run. Imagine, for example, if you had to have a "footnotes" module added on to your Office in order to manage the footnotes and endnotes in a document - what would happen if you sent that document to someone who didn't have that module installed? The program should be able to read everything every module wrote, and that just sounds like a programmer's nightmare.
Achieving the right balance between usability and functionality is one of the hardest tasks facing UI and program developers over the next few years.
[ link to this | view in chronology ]
Re: 2 ways to program
Anytime someone tells me there's only one way, or worse yet, only two ways, and one's right, and one's wrong, or whatever, you're still whining DO IT MY WAY DO IT MY WAY.
There are myriad ways to strike a balance between two absolutes, or to find a new absolute to champion; there are multiple ideologies to follow that can lead to solutions to any problem.
F-tards like you who whine DO IT MY WAY DO IT MY WAY and championing simplicity over all else are ignoring the obvious.
Your way is not the right way.
My way is not the right way.
The customer's (user's) way is not the right way, because often the customer (user) has no idea what the heck the right way even looks like.
The right way is to analyze the user's needs, and to strike the necessary balances between complexity and simplicity, to find the right amount of user interface, behind-the-scenes automation or other components that need implemented, engineered or otherwise delivered.
Your crud referencing the 80-20 rule and putting your own ideology on a pedestal while ignoring user needs sounds like every other corporate idiot who proclaimed himself the new messiah and then wondered why he got metaphorically lynched by the mob of user disapproval as people started using "something better" or "anything but this junk". I want to barf in empathy when I read tripe vomited out of wannabee corporate mouthpieces.
Or to summarize, I respectfully and completely disagree with your moron opinion.
[ link to this | view in chronology ]