Jakob Nielsen Talks About Usability in FOSS
dokey writes "In an interview with Builder AU, usability expert Jakob Nielsen gives his opinion of usability in Free and open source software. The article echoed what Jon "Maddog" Hall said earlier this year in a keynote at Linux.conf.au -- "Programmers Are From Mars, Users/Managers/Companies are from Venus". Is it time to pay more attention to end-users?(who aren't geeks)"
I suggest Slashdot copy his website's color scheme for their next section.
Don't expect usability from a programmer.
Separate program logic from design and let a designer do the interface. Much happier for everyone involved
> Is it time to pay more attention to end-users?(who aren't geeks)
Uhm... No, not really.
The dangers of knowledge trigger emotional distress in human beings.
Was a great speaker (and signed a friends Tshirt), had the view of someone between a total geek and Bdale, with enough business experience not to make a fool out of himself, but still enough of a hacker to not be out of place.
Any aussie's who havent been to an LCA before I highly recomend it, the next one is on in April 2005 in Canberra.
/* FUCK - The F-word is here so that you can grep for it */
This is the core focus for applications. The End-User must always be factored in, regardless of who that is.
For example, I may develop a quick little utility that let's me interface w/all the X10 in the house. I make it text-based commands, since I need no fancy interface.
Now, change that to Ma and Pa Kettle. Try to sell them the text interface and they call it crap. Add a whiz-bang interface showing all the connections in the house as the appliances/rooms they reflect and M&P buy it.
More IT apps fail from lack of interaction with the end-users.
Much better:
/ 1327217&tid=189&tid=8&tid=106
prob redundant by now...
http://stuff.slashdot.org/article.pl?sid=04/08/23
"Is it time to pay more attention to end-users?(who aren't geeks)"
Not only is this mentality wrong, it's also holding OSS usability back. Geeks are end-users too. If good UI design is targeted at computer novices, as is widely assumed, then why do so many technically talented people love OS X? Answer: Because usability gains for "our grandmothers" are also usability gains for we geeks.
And this is way I use OSX. Usability beyond compare, commercial and open source apps, java, and windows integration.
The power of Unix, the ease of use of the Mac.
OSX makes me money today with increased productivity and access to best of breed apps.
Linux may get there one day...In the mean time i need to get work done TODAY.
The attitude of "It works, don't care if you don't like how it works or if you think it's ugly, I like it, if you don't like it than don't use it" is not just in FOSS, it's the attitude of many, if not most, programmers. Despite what it may look like, this isn't flamebait, I'm one of these guys myself. At the company I work for, this attitude is prevalent to a degree in most of the developers. It takes someone outside their heads (and usually, pressure from someone who makes the decisions) to put a friendly face on the application, and, dare I think it, reduce or refactor functionality to present a better interface to the user.
It's not that developers aren't to blame, but rather, it's how you'd expect developers to be. What FOSS needs is a free, open-source equivalent of the QA/Validation/UI Design department.
Welllll.. considering that without end-users IT wouldn't have a job, it does seem fairly important to pay as much attention as possible to end-users.
If you have to ask that question as an IT person, you are already a few steps behind.
Read the EFF's Fair Use FAQ
> The reason is, the motivation for open source is
> not because the person gets paid but the person
> gets prestige. The developers are designing for
> each other and they are so feature rich--geeks
> love features--and you get more prestige by adding
> features. For the average person fewer features is
> better and easier to understand.
This has been a constant battle on POPFile. People are forever asking me for this option, or that option, which are useful to a user community consisting of themselves and the two other people in the world who want the same thing. I've been argued with strenously for not adding various features and in general to innovating in the UI really slowly, but the lesson is clear: the average user should be guided by the software to the right behaviour. POPFile does have 100s of special options and they are available in a cfg file that a geek can get at.
The other problem with open source and GUIs are all the people who want things in very specific places. e.g. I got constant "Put button X at the top, no, put button X at the bottom, no put it at the top and bottom" type conversations. Finally, we've boiled the UI down to the things that most people like and anyone else can hack the HTML templates and make the UI just as they want it.
Overall, we've settled on:
1. Lots of flexibility exposed at the geek level
2. The every day functionality exposed in the UI.
There's still a lot to do to make POPFile's UI really friendly, but the biggest lesson has been to resist the power users when it comes to adding UI widgets.
John.
Most OSS is written by geeks as a personal hobby - just because they like writing code.
IMHO and experience, designing and implementing a GUI is one of the more boring, cumbersome and uninteresting parts of programming, something like writing office or business applications (atleast for me).
I don't see why a hobbyist would do something he didn't like.
An Indian-American Hindu committed to non-violent thought/speech/action alarmed by the global explosion of radical Islam
At times like these, it can be helpful to watch a little Nick Burns (Your Company's Computer Guy).
He fixes your computer, and then he's gonna make fun of you.
Who are these 'end users' you speak of?
This is not an automated signature. I type this in to the bottom of every message.
I think the state of OSS GUIs is better than he claims. A lot of work with regard to usability has gone into the major (!) projects like Gnome or KDE. That still does leave us with quite a few crappy OSS GUIs, but it doesn't really make sense to try to come up with some average value in this case.
A study on this could be interesting.
Really, I think end-user usability is an area for companies like redhat, mandrake, suse, etc. (even Lindows). Not that it wouldn't be great if more programmers were able to consider the non-geek users of their programs (or if they have trouble doing that, getting someone to help), but honestly, that's not the real way good usability with open source programs is going to develop. Companies like redhat are the ones that are really capable of pulling together hundreds of open source projects and making a product unified enough that a non-geek can manage it. Sure, there are non-commercial distros like Debian that do a good job at this, but it requires a lot of volunteer work and I would argue the end result of distros like Debian still isn't appropriate for many "regular users" (not that I'm putting down Debian, there are plenty of advantages to it and it's actually my distro of choice).
From TFA:
/. still dispute that view.
========
The second problem is that open source when they turn to the general tools they tend to be in the line of "let's implement what we already know" so they will take Microsoft Office and they will clone it. Since we've been criticising Microsoft for years for cloning Apple it is only fair to criticise open source for cloning Microsoft. The point being that you don't move ahead but you have to do something new.
========
Very nicely said - he's not the first or the last to say this, but I am puzzled how many in the OSS community and on
Of course, that is not only obvious but potentially dangerous from the legal perspective.
If/when OSS software gets close to endangering some big commercial software, I think this cloning thing will be the first the ISV will present to the court.
BTW, the Pope said something against cloning yesterday - was he complaining about OSS?
What's a foss?
Sorry but the fact that this question still needs to be asked is a damning criticism of FOSS development.
Despite aiming to extend the reach of FOSS distros into the desktop developers still write software that most users can't use.
This gets brought to the community's attention quite frequently and despite this the core point remains unexamined and unanswered:
Geeks who write FOSS software aren't the ultimate market for those tools (or at least they aren't if you want to help spread FOSS) and until tools and software is written for a broader market then Linux will remain a server OS.
And while we're at it can we all drop phrases like "Joe User" and its ilk? Perjorative terms describing what is your actual target market don't help you create better software for them.
Step 1) For the love of God, stop making skinned applications. Use the UI-consistent widgets, they're dirt cheap, I promise. Skinned apps make me want to scrape my eyes out.
Mike Hoye
....asks Hemos as he blinds us with another blast of beige-on-white text...
What I'm listening to now on Pandora...
Just last night my wife and I where talking (read "arguing") about this.
To give a little background, we're going to be expanding our suso.org web hosting business to start offering Linux Support and prebuilt Linux systems in Bloomington. We'll be opening our office early next month.
She is worried that most people's expectations for functionality will be too high and will just end up throwing their machines away. However, we understand that Linux isn't for everybody yet and that we will have to turn somepeople away for the time being because they will have too high of expectations out of it. For instance, say that a family comes by and wants to by a new family PC so that the kids can play games and the parents can do their taxes, word processing and look at all those multimedia attachments that their family sends them. We'll we'll have to be up front with them and let them know that Linux probably isn't for them because those kids aren't going to be able to play off the shelf games yet (without fooling around with wine a lot or vmware) and they would get frustrated when some of those cute attachments don't work. Or TurboTax doesn't work.
That all said, I feel that OSS has come far enough that it is ready for the first batch of non-technical adopters. You know, the ones that like to tinker around with the latest technology.
He's so predictable he's even got a drinking game I think that means he's got high levels of usability.
/. games section has a better choice of colours.
His web site?
well, just take a look.
anyhow, enough of that.
This guy could do to take a look at OSS for a change and stop contradicting himself (familiarity is good, oh, but don't clone)....
kde look has got more usability hanging off of it than, well, Nielsen I suppose.
OSS Firefox has create standards support (not excellent though), which is really handy if you trying to design a web site for dis/abled people.
Maybe OpenOffice does have more features than Office, but can't you just turn them off, or ignore them. Maybe I can preview sounds in Konquror, but not in Explorer. Maybe were all pissed of with the likes of Microsoft and Nielsen trying to dumb the world down, to the point where people stop thinking all together.
Most kids are coming through school with a high level of computer literacy, I'm sure even the ones who aren't geeks can get to grips with a Mandrake install.
Jakob Nielsen, shut the fuck up and fix you web site, and try to practise what you preach, before telling other what to do.
thank God the internet isn't a human right.
Apache impressed people with its English-style configuration directives that have influenced other developers to switch to such logical formats. Another example: the Postfix MTA is becoming more popular and many users say they enjoy using it because of the straightforward configuration, compared to the m4 mess of sendmail. "It has to be complicated to be powerful" is no longer an excuse.
free/open source software is that the original developer does not have to focus on the user interface; Since the code is freely available for modification, someone else with better UI skills can improve it.
No data, no cry
Let themk write their own damn software.
This guy has a big UI name but this "genious" paint all open source with the same brush. Personally I think Apache has best GUI every - its easy to read flat file. Open Office, KDE, Gnome are very polisished but lots of stuff isn't.
Also, the reality is that people need to think more like computers. You cannot be a blathering idiot and expect and optimal experience from any piece of electronics or software. Don't cite OSX or Windows, they also manifest deep system details at high levels.
Yes we can hide, obscure and wrap in metaphors, but this implies a loss of control, which I am not sure most of the actual users of this code want.
I find this kind of article mystifying. I find mandrake 10 to be oriented towards the end-user, for I AM an enduser. And I get work done.
I bet all the posts on this page could be found in the previous articles harping on the "linux needs to be friendly to end-users" meme; but people just haven't realized yet that there ARE distros out there which are friendly to the end-users.
Good point taken. I hope I'm no troll or flamebait here, but have you seen KDE or GNOME lately, as well as their applications? They almost look like replications of the Windows interface. Isn't leaving Windows and learning something new part of the "benefits" of switching to Open Source? I think that the Open Source developers should build a brand new interface from the ground up, that is different from the other interfaces out there, but also useable enough so that way non-geeks would be able to use it with minimal trouble.
What I mean is this. Say you're a hypothetical non-geek Windows user who is using KDE or GNOME. You notice that the interfaces look very, very similar; the minimize/maximize/close buttons are in the same spot, the bar where your applications go works quite similar, and everything has a bit of familiarity. But say you want to go further. Then you'll hit some rough spots, because KDE/GNOME doesn't work exactly like Windows does, even though it looks very similar to it.
But what if I gave that same user a completely different user interface, one that the user has no experience in. Yes, the user would have to learn how to use the new interface, but if the interface is well designed enough for usability, the user will master most, if not, all of the aspects of the user interface in very little time. Plus, because the interface doesn't look like anything that he or she seen before, the user wouldn't expect "well, it worked here in this environment, so it should work the same way here."
This guy keeps saying the same things over and over again. Why anybody would pay him $10,000 (his starting price) to review their site is beyond me. Instead, someone should make an 8-ball with his 30 stock tips in it: "Don't have a link to the homepage on the homepage." "Don't have dark text on a dark background." "Have a search field in plain sight on the homepage." "Make your pages liquid." and so forth
Programmers are Morlocks, users are Eloi
Liberal (adj.): Free from bigotry; open to progress; tolerant of others.
Everyone know those venus people are stupid anyway
Mohahah!
There's no way I'd name a keynote address after a pop psychology book like "Men are from Mars". If nothing else, I'd worry that people think I like that book, or (worse) would give my own ideas the same amount of credibility. Don't get me wrong -- I love Maddog and think he's a great icon for the community. More like the Santa Claus than the Dr. Phil, though. And certainly more lovable than that mean ol' ESR.
Oh yeah?? Well, my editing text files rock! You had better believe it, or they might just edit you!
(Guess that's one way to solve the end user problem...)
No, just keep writing software like you always have, with astoundingly complicated UIs, impossibly obscure configuration options (when it's not just a damn text file buried under /etc or ~/) and completely non-standard behavior that throws people who've used other GUIs off to hell.
Yeah, the software is "cool" because it has that neat bayesian algorithm that was harrrd to implement in Malbolge and it's "free", so that must make it better. Anyone who complains can either a) Go to hell b) Write their own version; c) Submit a patch; d) Ask for their money back; or b) STFU.
Keep copying Apple and Microsoft and everyone else instead of coming up with your own UI designs (badly, too), while snickering at said companies on Slashdot and IRC.
That's fine. Just don't yell at me when I question your claims that your app is "ready for the desktop" and is "better" than what the "evil proprietary" companies can come up with.
I think the better question is. Why aren't more distributions handling these issues? Remember way back when? When programmers coded for their itch. And distributers pick and packaged what they needed. Sanding down the rough edges, and doing the jobs no one else wanted? So whatever happen to that? Were's the articles holding their feet to the fire? Why just programmers?
Is it time to pay more attention to end-users?
It depends on your target audience. For a specialized library maintainer, a user means another specialist in coding.
But some people do not care about others in normal life, why shoud we expect from such to be different in software design? If you are a nerdish geek, you don't value a distorted reality of Clicky'n'Picky ordinal users much high. So there is a need to develop some spiritual qualities, empathy and compassion. Without these, there is no mastery of any craft, not only of software. Craftsmanship maybe, but no mastery.
But certainly I never had compassion for corporations and corporate users. They understand only money. Let them pay for features they want.
There you are, staring at me again.
Yes, yes, yes. A thousand times yes.
As a software engineer myself, I find the lack of attention to the user interface with end users (even other geeks) terrible.
Let's face it: I don't have the time or energy to learn the ins and outs of all the possible software out there. 90% of the time, I want the base functionality, and don't want to have to learn how to set 10 things, just because I want to do 1.
I'm sorry, but most of you programmers that think that an effective user interface isn't important are either ignorant, lazy, or both.
Take a User Interfaces class. Not only will your end-products improve, but you will also get some insight as to how other users may be thinking, and what they're looking for.
The most important thing you need to do before you begin the act of creating anything is to Understand Your Audience. I guaruntee, your audience will not follow the same thought processes you do.
~D
This sig has been enciphered with a one-time pad. It could say almost anything.
UI designers aren't any more likely than programmers to hate their work and never want to do anything similar in their spare time. The reason that OSS projects don't usually have UI designers as regular contributors is the amount of knowledge necessary to change a program's UI that isn't in the standard graphic design curriculum. In the commercial world, UI designers generally work by having the authority to tell programmers what to do; in the OSS world, they have no way to get this authority, because they don't have the skills for the entry-level gathering of respect.
In order to have good UIs, we need to involve people who can design them. In order to involve them, we have to empower them to make patches on their own. And that means arranging for UI coding to be completely obvious, and separate from the inner workings of the program.
My goal is to have a system that works for what I need it to do. Therefore, for me as an individual, it will never be time to take up arms with a crowd of usability experts and make Linux more user friendly. I can do what I need on it. If your goal is to push Linux onto other people's desktops, then yes, it is time to do that.
The only REAL benefit that I see to that is a restoration of competition in the desktop market, not the destruction of M$. The industry could benefit from a real 3 or more desktop market. It could also benefit from a 3 or more processor market. For that matter, it could benefit from a market where not everyone must speak Intel in order to succeed.
The TRUE benfit will come when everyone communicates to each other using open standards, and the choice of platform becomes a real choice again. Open Source is a good idea, but the whole thing will suck just as bad if everyone uses Linux as it does now when everyone uses Windows.
I appreciate your attitude; it makes it easy for me to steal your job. =)
Seriously, I just can't understand this kind of thinking, although I encounter it all the time. If you're writing utilities for yourself or for a group of people very much like yourself, it's no problem. But if you're writing commercial software, you're not writing for yourself. Your whole livelihood revolves around solving other people's problems. Expecting your customers to adapt their way of thinking to your way of coding is just piss-poor customer service. You want their money; that means you make it easy for them, no matter how challenging that may make the coding task for you.
Oddly enough, I came to these convictions not through coding, but through years of work as a DJ. No kidding. When I started out, I had all these pretensions about educating the great unwashed in what good music was. And you know what? I got the conceit beaten out of me very quickly, as I cleared dancefloor after dancefloor for the first two months.
I soon realized that my job was to play what the crowd wanted to hear. And if their tastes had been informed by 30 years of top 40 radio, tough luck for me. My job was to figure out, at any given gig, what kind of crowd I was dealing with and play accordingly. And it's worked wonders.
Interestingly, I came to learn that if I do that well enough, the crowd learns to trust me. They're so happy with what I'm playing (after 13 years, I virtually never have a bad night) that if I slip in something new, they'll usually give me the benefit of the doubt enough to dance to it anyway. That's right: I have more success introducing new music now, than I ever did when I was looking down on the people who were cutting the cheques.
The same applies to software. I seem to be a rare case: someone with real interaction design chops, who has also written a C compiler. But it seems like a natural marriage, because what proper usability research does for me is confirm that I'm solving the right problem in the right way.
I think Eric Sink has an article or two about this where he distinguishes between what he calls developers and programmers, but I'm too lazy to Google for it.
My company focuses on applications that are very easy to use. To achieve this we jam two concepts into our developer's heads:
1. Have a goal of the average person being able to figure out how to use a feature without any documentation.
We achieve this by turning a few users loose in our test bed, giving them a task to accomplish, and seeing how they go about it.
2. If it is a complex feature that requires some documentation, it should be designed so a user can figure it out in less than 10 minutes.
If you can't do #1 or #2, you need to shift your thinking. Yeah, this causes alot of pain to some developers, because in general developers have a pretty hard wired way of thinking of things. But in the end we get high praise from our end users about how intuitive and clean our interfaces are.
Three things that help make the conflict easier. Highly modular design with good API's. A good scripting capability properly exposed. And plugins, plugins, plugins.
You can't please everyone, but you can make it easier for people to please themselves.
And while we're at it can we all drop phrases like "Joe User" and its ilk? Perjorative terms describing what is your actual target market don't help you create better software for them.
"Joe User" is not a pejorative term. "Joe Luser would be, as would "Joe RatB*st*rd", but there is nothing inherently negative in "Joe User". He represents the canonical end-user (go figure) who doesn't care about how the computer works so long as it does. Actually, when it doesn't work he still doesn't care about the inner workings, he just wants the IT guy to get in there and fix it. This, believe it or not, is a completely reasonable approach.
Lighten up, Francis.
I want to drag this out as long as possible. Bring me my protractor.
Linux and most FOSS software is for geeks, plain and simple. Now, with FOSS trying to compete with commerical grade end-user apps, this creates a paradox for the developer: if I dumb it down for the end-user, why the hell would I still want to use it? Also, most Mac OSX guys (myself included) use Mac OSX mainly as a jab in Microsoft's eye, or because they're a freakin' Mac zealot.
The point is, is that innovative consumer (grandma) grade apps will be very difficult for the FOSS community to develop, because FOSS developers build apps for other nerds who want more functionality (especially low-level access) that your average consumer would not need or want. Think of a distro of Linux that is as dumbed down as Windows... Would you use that distro? Would you even want to create it?
My two cents...
Being the old-fart that I am, (ok I'm just 30 but I feel like an old fart) I started with BBS's, a 300 baud modem and a C=64 around 1986.
I eagerly upgraded to a 386DX/40 and started using DOS v5.
From there I went to Win3.11 and then an addon called Dashboard (made by HP IIRC).
All this time my computer and UI upgrades were fun, and something that I looked forward to.
Then I tried Win95. Ack, I hated it. I couldn't uninstall it quick enough.
I got used to Win95 (never really "liked" it), and followed to upgrade path like everyone else.
Win98 was better, Win2k was good. I enjoyed how 'tight & clean' everything felt, and I still thinks it's the best looking OS that MS made (including XP in classic mode).
XP (default) made me gag, and I couldn't change the settings quick enough.
I have always 'tweaked' my OS (from DOS days of hacking the io.sys, msdos.sys, and command.com, all the way through till now)
I have tried using most of the linux distro's and it feels anymore like it's just more work to try to turn all crap off that Joe-Programmer "thinks" that Suzie-Soccermom will like.* I have tried using a Mac,and I don't like it. I have heard that it's the best UI for folks who have never used a PC before, and I must admit that this 'old-fart' won't ever touch it if he has the choice.
Anyhow back to my point, I left it somewhere around here. I have recently tried using iTunes.
Untill now I have been using WinAmp v1.8 and then I moved on to FooBar2000.
Tight, small, simple, no fluff. I loved that program, but I thought i'd try something new.
iTunes:
It's great for searching, (even better if you have good ID3 tags)
I still need to learn/use it more, but I think I like it. (The secret is to forget that the DOS world ever existed, don't you dare use Windows Explorer to do anything usefull, and be a Suzie-Soccermom x For Dummies idiot.)
But other then that, I think I like it.
What I want to know: Am I just an old-fart who is stuck in his Carmudgenly ways, or are good UI options being dropped in favor of candy-coloured eye-goop, that serves no enhancement of the computing experience other then the "I wanna see if it can do this" mentality?
*I have tried using XFCE but I couldn't figure out how do do much. The terminal with vi & links & mutt were more intuitive. =)
What needs to come first: A geek writing for a geek. An artist who see the vision that the original geek wrote. Or a geek writing for his sister. (not mother, that is why we have all this eye-candy and Help-Wizards)
My vote: leave the art for the artists
the code for the programmers,
and the easy to read files for the hackers to hack.
Between those 3,a good combination will be met.
"The price good men pay for indifference to public affairs is to be ruled by evil men." ~Plato (427-347 BC)
1. During the install, while selecting packages, the OK and Cancel buttons disappeared. I have no idea what happened. In order to finish the install, I had to tab around the screen until I found whatever button it was that would let me continue. Rather annoying. Other than that, I liked the way the install groups packages into categories. 2. Configuring X. Ugh. Why is this such a pain? Luckily, it was configurable via a GUI, where I can just choose and test options, but it is still annoying. I was installing it on a Dell Inspiron 8000, and it auto-detected it as a flat panel. I didn't see any options for a laptop, so I had to assume this would work. However, setting the resolution to 1024x768 just made it a small box in the middle of the screen. I had to set it to 1600x1400 or something crazy like that. That was the only way I could get the display to go to the edge of the screen. But now everything is unbelievably tiny. Sure, it can be configured, but I thought we were beyond those days. Knoppix seemed to get it right the very first time. Is this hardware detection closed source? Why can't other distros adopt this? Knoppix is no longer "new and revolutionary", distros should have this implemented by now. 3. Tapping the touchpad isn't recognized as a mouse click. I didn't find a mouse option for "touchpad" either. Did it not recognize it, or do I have to download something and install it? I can solve this one, but it is something I shouldn't have to worry about solving. Overall, the install was nice, except for the disappearing buttons. And the X config. Maybe those were just my issues with the laptop. I haven't really used it much, but I did download and install WINE. I tried to launch a simple program that I knew worked under Knoppix/WINE, and it failed. It said something about not being able to find Xmessage. More searching on the internet I guess. Oh, when I installed WINE, I downloaded the rpm and installed it from the command line. I had tried to launch Mandrake's software installer, but after providing the root password when it prompted me, the application never came up. I tried it a couple of times with no luck. Not sure what is going on there. At this point, if I can resolve the current issues without too much trouble, I may keep Mandrake on this laptop, but I can't say I am itching to pay money to join the Mandrake club though.
My beliefs do not require that you agree with them.
If this means what I think it means, you better go see what Maya does.
I don't use anything Office has that OpenOffice has not. YMMV.
Copy (Ctrl-C) and Paste (Ctrl-V) both work OK in my machine. _And_ Select (left-mouse-button-drag) and Paste-Selection (middle-button-click) work too, to make some things faster.
My Granny can't operate a Windows machine, too.
My son Lucas (5yo) uses exclusively Linux on my machine (he even has his own account on it, with RonaldMcDonald bg and all) and in the last two years he learned: how to log in, how to start gcompris and his other games, and how to log out.
My laptop had Sarge installed on it a month ago and my USB-Drive/WiFi combo worked out of the box.
It's been a year or two since I compiled my last kernel
ok?
It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
They are delicious.
Sigh. I don't know where to begin on your misinformed rant, so I'll just address some points that stand out at me:
If users got smarter about computers, programmers wouldn't have to spend so much time on making it nice, pretty, and easy
Usability does not automatically mean pretty. Usability means that the interface behaves as expected, and in a consistent manner. (ie. you don't make a widget that looks like a check box but behaves like a radio button) Pretty is for graphics designers to worry about, not for usability designers. In fact, often the prettiest interfaces aren't the ones that are good in terms of usability. Think of all the nice looking Flash websites you've seen, now think of how easy to use some of those were.
Computers aren't supposed to be friendly, they're supposed to work properly consistently
And that is a large part of what usability is. The application performs properly and consistently given user interaction. Quick, what's the command line option to read config options from a file in program foo? Is it -o? Better hope that's not the command line switch to output the results to the file. How about getting help in program bar? Is it -help or -h? Or how about --help or --h? These are the types of things usability is concerned with -- consistency.
Yes, ease of use is important, and it can't be stressed enough. But, laying all the blame on the users is misguided at best. Most people don't use computers the way programmers do, and they don't want to spend the time to do so. Besides, I'm sure there are plenty of programmers who'd prefer a nice consitent and intuitive interface when they encounter a new program.
'may know the author' wake up, read the OSS. You don't have to know the author, when you can be the author.
Ever wandered what x,y,z option done, ever thought about looking at the code and finding out?
thank God the internet isn't a human right.
Now that FOSS is gaining market share there's all this cry for usability. First of all, the usability is already there in spades. The very idea of Open Source is the ultimate essence of user friendliness. If the users don't want to make friends and they expect to be seduced, well tough titties.
But let's step back and look at what generated all that FOSS market share anyway? Is this a case of FOSS developers humping to make it in the market and needing good criticism and customer feedback to know where to go next? Fuck no. There is no point in criticizing. If you don't like it, do something about it and have a nice freakin' day. You can write docs, you can do graphics, you can answer questions in forums. There's a million places to start and whining is not one of them. Whining is totally irrelevant and it's nothing new. Same old shit.
What really kills me is when these corporate marketing types start in on the whining. Hey man go fuck yourselves. Why are you using FOSS if you've got all these problems with it and nothing to contribute? Why don't you get your companies to host distros on your corporate FTP sites and start hosting help forums. That's how you get feedback. Until we see some put up from the money people then they can shut the fuck up.
There must be the potential to do the UI or GUI in a radically different way, and maybe make it adapt to the expertise of the user, so that there is not just a minimalist shell for experts or a full bloated GUI for beginners. There might be something to learn from Plan 9, at least it is different.
But it seems to me that already the useability and the problems of Windoze are well-developed in FOSS, some new concepts of user interaction might be useful. For example, the mouse. (I use a trackball, the Logitech spotted ball type, because it is better, I have a mouse on some of my machines, the principle is similar.) Is the mouse relevant, should we use a touch screen (probably not, because of fingerprints, unless you want to spend half your day cleaning it...), maybe a graphics pad, eyeball tracking, a panel of knobs and switches...... Now the screen, text is text, and that will not change, but do we need icons and toolbars to edit it? Maybe extra mouse buttons could be more efficient? (WordPerfect for DOS was a truly excellent program in its day, I never read the manual, it was all done by a template on the F-keys, far better than what we have now.)
The problem is one of both input and output. It is difficult for a small developer to devise a new display device but not so difficult for simple input devices if complex mechanisms can be avoided, or improvised from existing bits. How about a two-ball trackball? And what could you do with the second ball? I ask because I see that when my thumb is not on the ball, it could just as easily be resting on some other control, if there was one. Maybe some foot pedals?
As for output devices, sound is already there, and a nuisance in the wrong circumstances. But, maybe some visual things like extra lights and meters (maybe bargraph LEDs) could live in the space above or below the screen, so as not to waste precious pixels, but attract the user's attention. (I really hate when everything grinds to a halt because some kind of dialogue box has popped up on the main screen and promptly been hidden, a problem that can surely be fixed!)
Chewing over these sorts of ideas, I am starting to think that maybe the F-keys could have programmable captions, so the menu functions are down on the keyboard. This would be done either by a LED matrix in each key, or replace the whole row of keys with a long, narrow touch screen LCD or plasma display.
Just some random ideas, others might be able to devise better, even without fancy hardware.
Bloomington, Indiana? Good luck. Anyway I recommend one of those compact HP machines. Looks like a fat dictionary. All in one job. Power supply brick. HD accessible with a key. Just add a small flat panel. Matching keyboard and mouse, and you're set. Remember you want to have a theme that people know you by, just like the big boys."The biggest bang, for the littil'est price." Small is in. That'll also help you when it comes to inventory, and display. Of course you already know about service. Use all the strengths of your choice to make you, and your customers lives easy.
Bad attitude. Let's make the software powerful and educate (force to learn) the users. (And forget the managers :))
we discovered a new way to think.
"The one mistake many programmers make it requiring people to accept things they do not want. Perhaps I want control X but not control Y. Many programs would force you to take both or neither. This must always be circumvent-able without resorting to geekhood."
Really? Exactly which people are accepting things they don't want, and why do they get a greater say over those who do accept what's given?
Also programming anything past "hello world" is going to be a never ending series of choices. ALL which can be thought of as a "FORCED" decision. "I don't like the color beige on Slashdot's website. How dare they FORCE me to accept their decision!"
What I'd like is for every Linux app to work together in perfect harmony and not set up in packages with truly demented dependencies. Frankly, I'm willing to bet that within the next five years, some idiot is going to make some text editor that requires that the Everything metapackage be installed.
"Anyone who attempts to generate random numbers by deterministic means is living in a state of sin." -- John von Neumann
then who is the program written for?
If you're going to write a program to be used by somebody, doesn't it make sense to take them into consideration?
FOSS is nice - but what good is Open Source when there's so much extraneous CRAP in the (indifferently commented) code that modifying it isn't worth the bother? What good is Free software when it costs more in time and trouble getting it configured than its productivity is worth?
FOSS is great for technology geeks. It isn't worth a flip (for the most part) for the person that just wants to Get Something Done - primarily because of the lack of standards: how many Linux package managers are inter-operable? Why do dependencies matter so much in Linux apps?
No, I'm not trolling - I'm a Suse user for the last 6 months. But I keep a Windows machine around for those too-many situations where the Linux equivalent (when there is one) of a Windows app simply sucks too bad. Usability and consistency from the user perspective is one area where Microsoft is kicking Linux' ass.
--- Asking inconvenient questions for over 30 years...
I've started a campaign to buy Jakob an Adobe Photoshop license. I'm also taking graphics donations from anyone with a few minutes of free time. I believe we can still keep his page weight 28.8 modem-friendly (his goal) while adding some fricking personality!
One class I'm glad I took in college. It realy opened my eyes to usability and how to make something usable and a better understanding as to what other programs have done wrong. Elegant code should have an elegant interface and learning what goes into making an elegant interface is very important. True, not every program needs an interface at all but for the ones that do its not hard to follow some of the simple rules for making something usable. A lot of the material would only take someone 15 to 30 minutes to go over and understand, and not the 3 hours of class I had to sit through. If you are ever going to make an interface please please look into things like the ten usability heuristics.
this is the most important sig ever! In your face 446154!
It just occured to me why I dislike the "spatial" nature of the new Gnome.
#1) It is just like DOS. You can only be 'active' in one directory at a time. Deep dir's were hell, but shallow ones were kinda quick and easy to copy/move files around and open them.
#2) The entire "browser" style has lasted only because Suzie Soccermom has never learned that by using a "Tree-view + detailed list" is easier, (damn Windows default settings).
#3) IIRC Xtree, Norton Commander and Dosshell were all designed to quickly & easily allow of folder/file manipulation at the deep level. This is a huge improvment over the existing DOS CLI.
Is this really just a case of: "What is old is new again"?
Like a previous poster stated. Spatial systems would work very good for large numbers of files, if the OS did all the sorting for you. (Didn't MS try this with "My Documents, My Pictures, My P0rn..." and we all hated them dearly for it?)
Here's a novel idea, let's make the choices EASILY switchable. Include 999999999 different choices and let the end-user decide.
Damnit that's the mess that we have with any linux distro installer.
Ok, how about the Model-T Ford method: "You can have any colour you want as long as it's black."
Apple beat us to that one too.
ok I give up. Maybe I just go "roll my own". And no I am not talking about linny.
=) I love Mondays
"The price good men pay for indifference to public affairs is to be ruled by evil men." ~Plato (427-347 BC)
Is it time to pay more attention to end-users?(who aren't geeks)
Nope. End-users who are not geeks have very few interesting needs to develop software for. All the very interesting problems have been put forth by 'geeks'. Everything else is pretty much novelty or IT. Oh, we are mostly talking about IT here, right? Never mind. Forget I mentioned it.
End users almost always want things which are bad in the end, and will not pay any attention when you tell them why these things are bad (the customer is always wrong). Developing software for end users can get very tedious and boring. It's a lot more fun to find your own problems and solve them by writing software. Of course, it's not likely that anyone will pay you for this kind of work.
TallGreen CMS hosting
I couldn't help noticed the communication error in your post: /= does not mean "not equals" != does. Your post confused me.
Some of the comments here seem blithe about the prospect of a "geek only" OS, but the beauty of the linux design and the OSS philosophy is that the entire system can be made completely user-friendly and never be 'dumbed down', no one has to lose. The problem comes in creating a mechanism for bringing naive users ( or non-technical users, or whatever you want to call these targeted users) into the interface design process. In short, how do we get open-source users as well as open source programmers? And how do they talk to each other. I am certain that there are ways of achieving this, but they will probably require business/programmer partnerships, rather than inspired risk-taking grandmothers, which is a shame since the latter probably have better ideas.
I have nothing to hide. So, why are you spying on me?
Over the past couple of years, lots of people have written about the subject of poor usablility in open source software. Lot's of people, some of them quite well known and well respected in the FOSS community keep saying it, but nobody seems to be listening.
The fact that people keep writing about poor usability would seem to indicate that nothing is changing. It would appear that FOSS pgrammers aren't taking it seriously and not making much effort to change things.
Why not?
It's a good book, exactly about this subject. I high recommend it.
I've said it before and I'll continue to say it: How is this 'tard a "usability expert" when his site sucks ass so badly?
-bZj
.sig
Gee, it's too bad that there are no OSS projects that focus on usability. I wonder what such a product would look like if the OSS community ever tried to focus on that.
501 Not Implemented
so that now I don't have to. I'd mod you up, if I had points.
Work is punishment for failing to procrastinate effectively.
In my experience even windows machines have problems on windows networks.
Today I have been onsite at a customer where they cannot reliably save documents on their windows 2K server from their windows XP clients.
Bizzare, but true, and the message from Microsoft is wait for SP2.... I'm so glad im a gentooer now for my personal machine, I find it works as advertised when configured correctly (which for me has not been a chore). As ever YMMV.
ah, mod points
is the answer - witness K3B, an easy to use CD copying program - something unthinkable on a GNU/Linux system, a mere year ago.
...this one instead?
I believe that the APIs often have an impact on the UI. They shouldn't, but they do. For example, lots of classic command-line tools get a UI thrown over them. But the lack of a formal interface makes it difficult to display error messages, status bars, etc. So the UI tends to feel strange to the end-user.
One quick example: Compare the Red Hat services tool to the Windows "services" control panel. You can tell that the red-hat one calls to the init scripts, and that the Windows one has a nice API underneath. It's visibile and the end-user still feels it.
Don't expect usability from a programmer.
You're making the same mistake as various high profile advocates who seem to think that usability is just one single thing. It's not. Usability has many different aspects, and the importance assigned to each of those aspects varies across different target groups. Usability is not just something required by granny. Programmers and managers and accountants and 4-year old Joey and granny all require high usability, and it's a complete mistake to think that non-programmers are the only users to whom the concept of usability applies, and that therefore programmers can't produce the goods.
As a software developer, I expect high usability from my dev tools, and that includes powerful integration between all elements of the toolkit (instead of simplicity), and easy visibility of all component parts (instead of hiding detail on purpose). Neither of these are wanted by granny, but it's a total mistake to then conclude that important general issues of usability like consistency and layout clarity are of no interest to me. They are, and the tool programmer is the person best placed to understand that, and to deliver it.
To simply say "Don't expect usability from a programmer" may sound cool, but it's incorrect. It's incorrect because usability is a multipart issue, comprising a large body of domain-independent elements that underpin access to one or more domain-specific object sets and relationships.
Tool programmers are exceedingly well placed to develop high usability in the domain-independent parts (such as symmetry and clarity) since these require an analytic mind, as well as in the domain-specific parts that apply to the programming domain. The only area where they will often lack competence is in application domains outside of their personal sphere of knowledge. Well, nothing new there --- that's why additional input from domain experts is always required when writing a non-trivial app.
Does this mean that a programmer can deliver excellent usability in an educational app for Joey, unaided? That's unlikely, unless his or her domain expertise includes toddler education. However, the programmer has oodles of the usability expertise needed to deliver elements of usability like clarity and symmetry and effective feedback, because they apply to all target audiences, including programmers.
None of this excuses incompetent design from inexperienced coders of course, but that's a different subject altogether. Only a competent software engineer (both amateurs and professionals) will ever deliver a quality product, barring accidents.
"The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
>>"Is it time to pay more attention to end-users?(who aren't geeks)"
The fact that such a question can even be asked tesitifies to the arrogant lameness of many (not all) F/OSS hangers-on and developers who whine about Microsoft's enduring popularity yet continue to produce or extol software that only a geek would use.
If you make something people don't like using, why are you surprised when people don't use it?
Of course, if they started writing software for real people, the tinfoil brigade would have to abandon its two favorite excuses for the failure of F/OSS to take over the world's desktops: 1) The great Microsoft corporate conspiracy; and, 2) Stupid Users.It is much easier to posture as a victim of both Microsoft and users who are too dumb to use your software than it is to start paying attention to other people.
-- Slashdot: When Public Access TV Says "No"
fluxbox, gaim, and firefox?
I don't see how you can talk about usability with those three apps in the same sentence. Firefox does usability perfectly. 90% of the things you can change are hidden in about:config. The general user will never see them and the defaults are fine. Aside from that, the menu options are straight forward and you're never given a ton of options all at once, it's a small subset at a time. Gaim on the otherhand is a mess. Everything is located in one place with few seperations of concerns. It's a literal maze of configuration options, many of which should be moved to where they make sense. ie. I should have to go to preferences to remove a toolbar, I should just be able to right click on the toolbar and select remove. Gaim is definately developed for geeks with way too many options. Fluxbox I wouldn't EVER give to someone who wasn't a geek. Its all well and good until you want to configure it. "Open a what?" is the exact response i'd expect to get if I told a user to open a text configuration file, modify it by hand, and then reload. There are some apps out there to do this configuration for you, but they should be a PART of fluxbox, not disjoint.
- gtaluvit (prnc. GOT-tuh-LUV-it)
Did you mis-quote the article name on purpose?
Programmers Are From Mars, Users/Managers/Companies are from Uranus
Wer mit Ungeheuern kämpft, mag zusehn, dass er nicht dabei zum Ungeheuer wird. --Nietzsche
I agree that it's a worthy goal to decouple the interface from the implementation as much as possible, whether we're talking human-computer interfaces or class interfaces. But in my experience, it's rare to get 100% separation between a human-computer interface and its implementation.
The examples you gave -- CD burning and filesharing -- are duly noted, but I don't think they scale well. =) In both cases, you have a library capable of all possible CD-burning options. Your GUI design consists in large measure of optimizing for different workflows (say, archiving photos vs. burning music CDs) but in the end, you're just handing off a stream to a library. It's easy to decouple that.
Now look at something like Gmail. I have to speculate a bit here, because I don't have an account yet (hard to think of a better example off the top of my head b/c I have a meeting in 5 minutes). But from what I understand, they've got an approach to sorting, searching and displaying email threads that is very different from what's currently available, especially in a web client. You can't just say "hey, you guys go off over here and write this complete set of email functions, and we'll just tinker with the interface over here until we get it right." The point is that the interface design is driving the implementation, creating new functionality that didn't exist before.
The parent poster who wants to code all day and never talk to users doesn't (in my opinion) even have a seat at the Gmail table. Other people will make all the interesting decisions for him, and hand him the completed spec. His is the easiest job to outsource!
So I suppose I didn't misunderstand the original poster so much as seriously disagree with him. I believe that people who just want to code and never want to deal with people are deluding themselves. They're a lot less useful than people with even a marginal interest in or concern for the people who ultimately cut the cheques. There may exist a certain number of programming jobs where the code-in-splendid-isolation attitude is still viable, but I think the number must be vanishingly small.
Well said. I am also a PB G4 user.
Apple has moved away from usability toward "pretty is best" with OSX. Some things are more usable (the blue buttons invite clicks more than they used to), but some things are inconsistent with their own guidelines (nearly all Apple-made applications require a two button mouse to be efficiently used).
Some things are as simple as color contrast: Screen splitters are almost unusable on the laptop where the contrast of light grey and white is negligible. On the cinema displays the splitters show up nicely. A little testing on the laptops should have noticed that one.
Many interface buttons violate Apple's old interface guidelines: they don't invite clicks because they don't appear to be buttons (some icons appear etched into the metallic surface as labels end up being clickable buttons - many do not change the appearance of the cursor either; iPhoto, QuickTime, and iTunes have such buttons).
One of the things I like about mozilla instead of safari (or camino) is that tabbed browsing is more usable due to one important feature: that fucking little x never moves in mozilla. It's a pain in the ass to close multiple tabs quickly in Safari because the location of the x moves with each tab you close (this is even worse in camino). It may be prettier in safari or camino, but it is far less usable. Of course, the x in mozilla doesn't appear to be a button until you hover over it, but neither do the x's in safari and camino.
Still, Safari is an improvement on IE/explorer usability: the application decides on it's own whether or not to show the status bar. That's the only app I know that has a feature which reverts to off without apparent rhyme or reason. Incidentally, when submitted to Microsoft as a bug report, the explanation came back that it was behaving "As designed." Microsoft is (was) trying to phase out the status bar in Explorer, which shared it's status bar preferences with IE. That pissed me off. If you want to take out a feature, take it out, don't make it behave badly so that I won't miss it when it's gone. I'll switch applications before then.
It depends - are they willing to compensate us for meeting their special needs? If not, then no.
I think Jamie Zawinski had it right when he said "[Open Source] is only free if your time is worth nothing." I used to hate that quote, mostly because it implied that closed source, proprietary software was any easier to use. I've since learned to look at it in a different light. That is, it implies that while open source is free as in speech, it is not necessarily free as in time.
If you want to see a feature in a piece of open source software, the fastest way to see it is to implement it yourself or pay someone else to do it. Don't expect someone else to do it for you just because you ask nicely (which most people don't). You should be grateful that the programmer was kind enough to release software that is useful to you. He could have just scratched his itch and kept it to himself.
Basically, I'm not trying to discourage improvements in user friendliness. I'm actually trying to encourage people to get involved in open source software projects. Because until you've contributed (or compensated), you have no right to bitch. Constructive criticism, on the other hand, is a form of contribution . .
Nathan's blog
In the workplace, usability folk deal day in and day out with political issues involving changes to UI's. There are zillions of people we have to deal with who do not respect our field of expertise, who thwart our every attempt to make the interface usable, who refuse to empathize with people who aren't them, and who refuse to understand that we can only really be effective if brought in at the beginning of the project before any code is written. And all the while, we're getting paid good money to put up with this crap.
Why the hell would we want to put with this kind of crap ten times over in our spare time without any kind of pay at all?
Until the OSS world is willing (just to list a few)
Most usability people will not want to have anything to do with OSS. Usable OSS requires a major cultural restructing, not some additional amount of technical progress.
One final note: it is interesting that the products Maddog Hall mentioned such as the Palm (originally modelled after a block of wood and a chopstick) were produced by designing the user experience first and then designing the technical stuff--a clear violation of the unix philosophy that OSS is built on.
Ergonomica Auctorita Illico!
We need to design programs as extensible frameworks.
Extensible frameworks would allow the hard core programmer to design protocol parts that plug into the framework underneath while touchy feelie programmers can make cool/funky interfaces for the users.
I like this idea too, because then you don't need to rev the interface with every change of the underlying code. I loved the old interface to some cdburning software much better than the new version, but to get some new functionality/fixes to the underlying stuff I had to swallow the whole ball of wax.
You can make a incredible usable GUI and have also a incredible control over your software.
It is really easy to add functionnality to help geeks have all the options they may want without sacrificing the usability.
Think of Firefox as an example. This is one of the FOSS with the best interface I've seen. Why? It's easy to use and the interfaces act in a consistant way from one option to another. Moreover, it's even consistant with the OS you're using. The "Option" menu is not at the same place depending if you're on Windows or Linux to keep consistancy with the OS
Do they sacrifice the control? Not at all. The extensions give you the possibility to customize everything you want.
Montreal - Best city to live in!
I'd like to see more apps and OS's with a user skill level ui extensions designed into it. If you aren't a great ui designer, no problem! Let someone else do the simpler ui skins/templates later. Let others build more usable interfaces use your great app as an engine behind different ui designs, but keep the interfaces inside the same app if at all possible.
/power user/ - better usability starts to take shape and most features are availible. a little more friendly setup that might not require reading all of the code, manuals and forums. some help availible in the app, etc.
This allows users to advance from an easy mode to a more featured but probably more difficult mode with a few clicks.
geekgod - everything you can ask for, cli, a bit cryptic, automatable, no delete confirmation, no hand holding, little thought given to uncluttered prettiness. Just the way you like it.
Advanced
Normal user-
much more simplified but still usable. think of macintosh apps geared for normal users. Companies, managers, PHB, and the rest of the less techie lot love these! Need more? click User skill -> Advanced! Now the user *feels* like they have learned and advanced their knowledge and skill. It's a powerful thing!
Novice user-
Pretty, sparkly very visual but insanely basic. Just the core functions. As much as KPT apps power point & flash stuff annoys me the less technical love it, and understand it. Furthermore they're impressed by it! That is worth so much.
So my fantasy world looks something like this-
All the debate about Openoffice.org chameleoning ms office is replaced by 'MS Office mode' and 'Interesting and way better mode', and 'I think in TEX mode'.
When teaching novices or the elderly how to use email I set the app to "novice mode" and it holds their hand the whole way through every time, giving them advice, etc.
Anyway the benefits are endless.
Let all buding ui designers take a crack at making your app usable by the masses, the advanced and the geeks.
Firefox &
This is what every Free software project leader needs to learn: the word NO!
.. YOU SUCK!"
Or if you want to be polite, try "Sorry, there are no plans to implement XYZ".
Go ahead, try it:
user: "Hey, I thought it would be cool if we could make the command line tool themeable with ascii graphics. I've got some code I wrote in Pascal I think you could port really easily, and a template language I invented in high school. That would ROCK!!"
you: "Sorry, there are no plans to implement ascii themes."
user: "You SUCK! I HATE YOU!! I'M DELETING YOUR PROGRAM AND AND AND
you: (delete key)
Yes you have to have some balls to put up with this day after day but IT MUST BE DONE.
And *don't* always make it "configurable". If it's not worth putting in your program with tested code and tested UI, it's not worth leaving hooks in either. Keep your programs self-contained and complete at all times. (Depends on the feature of course).
Otherwise we end up with stuff like KDE *shiver*. I think there are, what, 4 different ways to view files on another server via SSH?
Great point. I have seen people criticising Gnome / KDE for deviations from what they are used to in Windows .. and then the same people have no problem with similar choices made in the design of OS X. And these are people that are used to Windows and Linux, not Mac freaks ...
[ UNSIGNED NOT NULL ]
Unless there's a benefit to alternatives then users don't switch -- I know that's what you probably aside from the dialog boxes not annoying users your ideas are hardware ones and therefore (if only by cost) won't be popular unless they drastically improve the computer, and with talk of foot pedals and LED lights you're not even considering the user. Consider that you haven't even said what the LED lights do -- you're just listing vague ideas.
Get something working and get it working on maintstream hardware and you'll have something, but your current approach won't come to fruition.
Usability does not automatically mean pretty
In fact, it does not even mean GUI. In call centres and retail POS terminals, a fast text-menu or transaction-code system is just fine. GUI metaphors just get in the way when you do hundreds of transactions per day.
You make the mistake of thinking you can educate the fundamental stupidity out of people. You can't.
Sorry but the fact that this question still needs to be asked is a damning criticism of FOSS development.
No, it isn't. And whoever moderated this comment as insightful should hand in their mod points. There are plenty of open source projects which are far more useable than their closed equivalents.
Firefox, Thunderbird, Webmin, Filezilla, Audacity and many others sit comfortably at or near the top of the usability pile.
Self criticism may sometimes be constructive, but this usability cringe needs a bit of balance.
"I've got more toys than Teruhisa Kitahara."
OK all you developers, here's what you should think of when you hear the word "usability".
Get a randomised group of your product's end-users. If your program is for sysadmins you'll want to get sysadmins, and if your program is for novices, get novices.
Set them a series of tasks to perform with your application.
Watch them try and perform these tasks.
Stifle the urge to scream "No, you fool - it's over there" as they fumble around the design that you thought was so brilliant. Instead, take lots of notes.
When it's finished, work out where the common problems are, and then fix them.
Rinse and repeat with a new set of users, until they all get it.
Note that this has nothing to do with arguments such as features vs. simplicity, or GUI vs. CLI, or newbie vs. experienced user. It's just a practical guide to smoothing out your application.
After you've done this with a few apps you'll start to get a sense of how to incorporate good usability from the start, but remember, there's no substitute for testing with real live users.
More abstraction. Stop designing dialogs. Just write an XML description of all objects (some radio buttons, a progress bar, a custom widget, etc.) and let someone else tweak the actual appearance. One thing this would allow is better global skinning. Second, automatic generation of user-friendly and consistent dialogs throughout the OS. Third, it would allow effortless porting of applications to completely new environments, like voice-controlled OSes, mobile devices, 3D desktop environments, etc.
It should be particularly easy for OSS to separate functionality and GUI, because OSS developers don't have the motivation to prevent others from benefiting from using your application (like MS and others do).
Future Wiki -- If you don't think about the future, you cannot have one.
I use XFce, I long ago abandoned KDE. I know KDE is still very popular, so I'm probably a loner in this respect... But I do enjoy the simplicity of XFce much more. I was using kmail a lot and I do remember using my own custom icons for folders.. I also do remember that annoying icon it uses for spam, I think the icon was corrupted (?)
I use firefox and I don't know what you meant by send picture. Also the hardware problems you specify, I do not have issues with... Again it may be kernel 2.6, or unsupported hardware. Who knows.
I'm sorry if I don't really identify with the specific problems you've found, as many of the problems I have never experienced. Sorry to hear you haven't had a good experience, but there are plenty of other distros out there if you don't like mandrake.
BTW I'm sorry if I came off as advertising for mandrake, I didn't mean that at all. That's just the distro I started off with (at 9.0). I'd probably be fine in any distro (red hat, suse, debian even... well ok maybe it'd take some time to get used to debian), because I usually don't use the tools the distro comes with (I compile XFce from CVS).
Anyways, hope you can find a distro that suits your needs :) If you want to work through any of your problems, feel free to stop by #mandrake on irc.freenode.net.
P.S. I use X-chat 2.0.8 and I'm not sure what you meant by x-chat being ugly; it looks normal to me :)
...that if I slip in something new, they'll usually give me the benefit of the doubt enough to dance to it anyway.
:) and anyone who hadn't heard these sounds before just got swept up with the rest who stayed on the floor. Magic :)
Yup - I'm finding the same thing when I'm DJ'ing. I've been in a particular scene for a few years now and have been playing the sounds they wanted to hear for most of that. Over the past 6 months or so, I've been putting in some new, different sounds - seeing if they'll take. Guess what - the other night, after a couple of "normal" tracks, I spent the rest of the time spinning "new" stuff - they loved it - enough people there had heard me spin some of these tracks here and there at other gigs, so they just went into the groove and enjoyed it. We kept critical mass (especially with the ladies - keep sexy women dancing and the floor will be packed
I left my body to science, but I'm afraid they've turned it down...