[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Usability Summary



I've spent a long time thinking about this and putting together thoughts and 
ideas I've found scattered across the internet.

Abstract of this email:

I think the best approach to usability is just to keep doing what we are 
doing.

Explanation:

I keep thinking back to the Cathedral and Bazaar. We are the bazaar. That is 
what defines us.

My imagination of this scenario is as follows. Let's suppose it is summer 
and a lot of people would like to eat watermelons. So they go to the bazaar 
to eat watermelons, only to discover a critical shortage of watermelons. 
The watermelons that are available are fresh, juicy, and crunchy. (This 
represents the software that we have now that is usable. We have a lot more 
than you think.) But there are too many corners of the bazaar where nobody 
even knows what a watermelon is. (Obviously, projects that totally lack any 
form of usability.)

Newspaper headline: "Critical shortage of watermelons; bazaar method doomed 
to failure."

Concerned community leaders: "Hey, we got a serious problem here! We are 
doomed unless we do something!"

Slashdot crowd: "The sky is falling! We can never beat the cathedral! Oh woe 
is us!"

The cathedral types point to us bazaar types and say, "Look, we have 
watermelons. We have lots of watermelons. They don't taste very good, they 
aren't exactly green and red, but they are watermelons." (This is a 
comparison to the fact that they pay lip service to usability, but in the 
end, it really isn't that great. "Microsoft" and "Usability" go together 
like "Microsoft" and "Security". ("Microsoft" and "Software" don't really 
go that well together either, come to think of it.))

But look at the bazaar. We have the best and the brightest apples, oranges, 
cherries, and everything else you can imagine. Our cantelopes (representing 
security) are cheap, tasty, and large. Our pomegranates (representing 
uptime) are impeccable. You can get these from almost any stand, and they 
are all excellent. (This represents the fact that our software is secure, 
stable, and only getting better with age.)

A few years ago, nobody knew much about what a cantelope was, and totally 
forgot about pomegranates, let alone what they should taste like. Now 
everyone knows what a cantelope tastes like and they expect it everywhere. 
People see the fresh pomegranates and salivate to get their hands on one. 
The cathedral types can no longer deny the value of our fruits. In fact, 
since the bazaar was formed, several cathedral types have set up shop 
(albeit a large, cathedral-looking shop) in the bazaar. (IBM, Novell, 
Fujitsu, Sony, etc...)

The cathedral cantelopes are withered, expensive, and covered with flies. 
You can't tell its a cantelope except they labelled it such. Mr. Gates' 
cathedral is touting that next year's cantelopes will be the finest ever 
seen anywhere.

And pomegranates? What are those and why would you want one?

What do we as a community do to solve our critical watermelon shortage? We 
innovate, we educate, and we actually carry out the actions necessary. You 
can see now how more and more projects are discovering the wonderful world 
of usability. They are already trying to apply these principles to their 
software. I thought when I started my investigative journey that usability 
was an exciting new topic in the Open Source world. I was pleasantly 
surprised to find it was not new, but still exciting.

The techniques that work for the cathedral in raising "good" watermelons 
won't work for us. We can't do scientifically based usability studies. 
People in the industry are now questioning the value of them anyway. They 
prefer big design up front lately. We can't do big design up front either.

But we can do direct developer-user communications. If we need to, we can 
have a very thin layer between the two so we can scale. I see it right now. 
Users come to the Fedora list. They get help. If there are real issues, it 
goes to the devel list. That is happening as I speak in almost every 
project. It's been happening for the longest time.

We can do usability design, just not the big design part. We can have the 
best and the brightest willingly give away their time to do what they love. 
We can have corporate sponsors. We do have corporate sponsors.

The more I look at it, usability has always been around. It has always been 
in our blood. In fact, one can argue that open source is all about 
usability, nothing more or less. This whole "scratch an itch" thing was all 
about usability in the first place!

What do we do now? We know what the problem is: Our software stinks. We know 
how to fix it. We've been doing it all along. Most people take the software 
stinkiness as a given and are constantly searching for ways to reduce the 
odor. At least we're honest about it. The cathedral types coat their 
software with three layers of dried perfume before sending it out the door.

But what do we do about usability in particular?

Absolutely nothing.

At least, nothing different than what we do now.

There are already usability experts educating the masses. They are already 
designing next generation software. They are already getting their ideas 
implemented. Their numbers are growing, the number of projects that are 
consciously targetting usability is growing, and the usability of our 
projects is increasing dramatically.

We have been actively encouraging this activity, and people that get in the 
way of them are derided. We sponsor good behavior - security, stability, 
usability, compatibility, etc.. - and we have been consistent in 
denounciong bad behavior - insecurity, instability, unusability, 
incompatibility, etc... This will only continue.

Future newspaper headlines:

 - Open source software wins again: Voted most usable by double blind panel 
of new computer users.

 - With usability, security, stability, and compatibility, why not switch to 
Linux?

 - Microsoft vows to make usability #1 priority

-- 
Jonathan Gardner
jgardner jonathangardner net



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]