
Simplicity vs. Choice - joshuacc
http://www.joelonsoftware.com/items/2010/08/19.html
======
adorton
I like the idea of choice that's available when you need it, but hidden when
you don't. Take Firefox for example. It does a pretty good job of providing
features that you need most of the time either in the interface or in the
menus.

More advanced options are available in the logical place. Even those are
carefully organized in a logical manner. When you select an option in the
tools panel, you have a pretty good idea of what will happen.

If you really want to get crazy, though, you can open up about:config and be
presented with a huge variety of options, many of which make no sense unless
you know what you're doing. It kind of reminds me of the advanced options in
Internet Exporer (with Carat Browsing and all), except that it's well-hidden
from the average user. Those that need it know where to find it. Those that
don't will never stumble on it. I think that setup avoids a lot of what Joel
is talking about.

~~~
frossie
Agreed. KDE is full of people who ran away from Gnome when Gnome decided to
take away the ability of people to make choices. It's the average v. power
user problem - both are important to a platform.

------
jasonjei
I think Joel has a real good point. 37s has been slow to make improvements on
Highrise. We have nearly 10000 deals and there is no pagination, so I have to
wait for the entire 10000 deals to load. I can't even archive them. When you
call /deals.xml, we also get all of our won/lost deals.

Someone who can step in and add merely add pagination to /deals.xml will
already be doing wonders for us.

Simple software is good. Simple, stagnating software is frustrating because it
has a good UI but sometimes the inability for 37s to even add the most basic
features breaks a deal.

------
houseabsolute
At Starbucks, people make a lot of choices because they often have opinions
about how coffee-like drinks taste best. People spend their whole lives
refining the idea of what food and drink is good, and it's virtually
impossible to LIVE and to not be a view on the subject.

Most people don't like making decisions about computers, and just want the
most basic solution that gets what they want done. Excel is a complicate piece
of software, but that's because it's the only way to solve the problems of
enough of the market to make it the standard. On the other hand, chat rooms,
calendars, and file sharing are something that can work for almost everyone
without a whole lot of options, as long as you're willing to conform your
workflow to that of the tool. Since there are no "file sharing software
experts" (your expertise is in creating the file; sharing it is just something
you have to do afterward), software without opinions like the kind Joel is
advocating will probably do poorly in this space.

------
macrael
Joel argues that the simplicity we strive for in software should be expressed
in a lack of options, not a lack of features. I think this dovetails nicely
with Brent Simmons' piece "Flexibility and power"
<http://inessential.com/2010/08/09/flexibility_and_power> with Joel coming in
on Brent's side of powerful software being what is exciting.

Joel makes the point that making elegant (or powerful) software is very hard
and time consuming, which I think is why so much good software does start out
at the 37signals-y "do one thing really well" side of things. The trick is to
keep building on that core, adding features that allow the user to do more
without having to make more choices about it.

~~~
wdewind
To build on that a little: the main point he makes is that a lot of the
decision making can be made during the design process of the software, if you
think about not just building a few features, but building THE few features.

I agree with almost all of what he says, the one place he loses me is with the
SUPER concise python and C++ code he shows (while ( _c++ =_ s++) to copy an
array). It makes no sense - that's not elegant, that's just concise - it's
very unreadable (at least to someone who has little C++ experience). Elegance
and efficiency are correlated, but they aren't the same thing.

------
ams6110
I am disappointed that Joel has taken the lazy way out and posted a video
instead of writing about the subject. I always enjoyed his writing. I can't
stand watching videos in a browser. And I didn't watch this one.

~~~
adorton
Just listen to it. The visual aids aren't necessary to understand his talk.

~~~
xiongchiamiov
It's difficult to scan audio. Don't think for a moment I read every word of
the articles I read.

I'd also have to pause (or turn down) the lovely music I'm listening to, which
is at the moment Inception.

When I visit a new product's page, and all they have to tell me about it is
screencasts, I leave immediately.

------
seanlinmt
I reckon there's a fine thin line between simplicity and choice. Make it too
simple and it's a useless piece of software. Too many choices will make it die
a feature creep death.

Probably the problem with most technically inclined people is the inability to
see the world through the eyes of the majority less technically inclined
people. Then again I guess it depends on the target market and the product
you're building.

Sort of reminds me of murphy's law. "Build a system that even a fool can use
and only a fool will want to use it." :)

~~~
lukev
> "Build a system that even a fool can use and only a fool will want to use
> it."

Fortunate that the world is chock-full of fools, then.

~~~
seanlinmt
If fool = less technically inclined, then yeah fortunately.

------
mofey
Ask pg: Is it true that you can't handle the back action with continuations in
Lisp?

