UI Design by Committee

An interesting tidbit came across my desktop with the words "design by committee" in it.  Well written.  Gotta share it!

Apparently a small team desired some UI changes to the GNOME open source project, so they went ahead and did them and are now presenting them back to the community.  The community is a bit shocked to be presented with something with a fairly complete design rather than a set of requirements.  (Web Service folks - this sound rather familiar?)  The designers defend their decision quite eloquently:

Although the changes aren’t nearly as radical as the original mockups, they are a big change from the current GNOME panel menu. If we had proposed the changes on the mailing lists, it would have started a huge discussion about what people hated about the design ("you can’t make the panel menu depend on beagle!!!") and how it should be different. And then we could have either (a) completely ignored everyone and done it ourselves anyway, or (b) had a long conversation about the merits of the design and then not actually finished the code in time for NLD10. So we did it ourselves, and now either GNOME will like what we did, in which case, yay, free code for GNOME, or GNOME won’t like what we did, in which case, no harm no foul for GNOME, and yay, brand differentiation for Novell. (And anyone who yells "fork" deserves to get one stuck in them.) An equivalent answer to the question is "because you can’t do design by committee". Everything good in GNOME is good because one person or a small number of people working closely together made it good. Much of what is bad in GNOME is bad because lots of people have contributed without having a single vision of what the end result is supposed to be. …

This is just another aspect of the UI "simplicity" thing. We like UIs that try to do the right thing (metacity, epiphany/firefox, evince) rather than UIs that try to make every possible user happy (enlightenment, mozilla, gpdf/acroread). If you try to design something by committee, you either have to end up with the latter sort of messy does-everything UI, or you ignore and hence piss off a large chunk of the committee.

And that’s where we are with NLD. There is no way that everyone in the GNOME community is going to like the changes we wanted to make. But we did the user testing, and we believe in it, and we want to make the changes anyway. So we’re doing it. Maybe it will turn out good, and maybe it will turn out bad. Either way, the GNOME community learns from it. Think of it like this: wouldn’t it have been cool if we could have tried out spatialus on our users, found out that they hated it, and then reverted back to browserlus, without ever having to actually piss off our users? This is essentially what is going to happen with NLD10. If Novell’s customers like the NLD changes, then GNOME can adopt them. If Novell’s customers don’t like the changes, then GNOME can stand off to the side and say "yeah well, we never liked that UI anyway. Not at all like how we would have done it." :-)

But some people will still say "But couldn’t you have discussed it with the community before doing it?" No, we couldn’t. If we had, it would either not have happened, or it would have sucked. It’s inevitable. It’s not a problem with the GNOME community, it’s a problem with communities in general. The wisdom of crowds [4] only works in situations where there are clear right and wrong answers. If you try to apply it to a design problem, where there are many entirely different right answers, then you end up with a wrong answer. Always [5].

So to sum up: design by committee is bad, endless debates that result in code not actually being written are bad, design by very small teams is good, software with a unified vision is good, trying out cool new UI ideas is good, free code at least doesn’t suck, and of course, for Novell, not shipping NLD10 is bad. I don’t think there’s anything we could have done to get more of the good without also getting more of the bad.

[4] http://www.amazon.com/gp/product/0385721706/102-7630748-5396113
[5] http://www.diacenter.org/km/usa/most.html

Especially check out the last link ;-).