View Full Version : Why usability sucks in Open Source software
Paqman
September 1st, 2009, 04:47 PM
While meandering around the internet I came across this really interesting blogpost about usability in open source (http://mpt.net.nz/archive/2008/08/01/free-software-usability).
It's an old post, but my understanding is that the author has since got a job at Canonical, so his opinions will probably have more than a little impact on Ubuntu. I find I agree with most of it, and his suggestions for fixes seem reasonable. Opinions?
SunnyRabbiera
September 1st, 2009, 04:54 PM
Nomnsense, I find open source software just as usable as proprietary software.
MarcusW
September 1st, 2009, 04:56 PM
Ubuntu is more usable than windows in so many ways IMO, so I don't really think it applies. :P
petrus4
September 1st, 2009, 04:58 PM
The short answer is that there is always a tradeoff between usability and robustness.
Ubuntu might be getting a lot more usable, but take a look in the General Help forum if you want to find out what its' stability or reliability are like.
The more user friendly something is, the less stable it will be. The more stable it is, the less user friendly.
Tibuda
September 1st, 2009, 05:03 PM
There's an answer (http://ometer.com/free-software-ui.html) for the original article (http://web.archive.org/web/20030201183139/http://mpt.phrasewise.com/discuss/msgReader$173) that cover much. I think both make sense.
569874123
September 1st, 2009, 05:03 PM
I totally agree.
Methuselah
September 1st, 2009, 05:04 PM
I didn't have time to read it all but the points I read seemed valid.
The title is more sensational that the content but I suppose you have to grab attention.
Anyway, I think in many ways usability is a subjective metric.
Some people find command line interfaces perfectly usable and refuse to use anything else whereas for others everything has to be point-n-click.
EDIT: Keep in mind that these articles are all rather old too.
DeadSuperHero
September 1st, 2009, 05:07 PM
I'm going to pitch in for a moment and just say this: to a new user, the usual Gnome/KDE/XFCE desktop is not the most obvious. This can be for two different (but related possibly) reasons.
1. They're used to Windows/Mac OS. Doing something in a new paradigm takes time. In my first month of using Ubuntu Edgy, I didn't even know how to install themes. The method of doing so is now very obvious, but only because I had the initiative to keep trying. Sadly, this is the exception rather than the norm.
2. Sadly, most FOSS desktop environments are designed by hobbyists in one aspect or another. It's not a full-time position, and although hundreds of people are working together on it it's not like having an entire corporation collaborating. Usability testing is a slow process for FOSS, and design and implementation are a whole world altogether. (Remember when the concept of Plasma was announced on KDE-look, and for a while it was just this crazy concept? Remember how it used to crash a lot in the beginning?)
I'd really love to see entire companies diving into usability research anyways, there's not nearly enough of that going on. We've got the Aero, the Aqua, and the Ribbon in the software field with huge usability experiments. It's definitely going on with KDE and Gnome, but only time will tell.
Mateo
September 1st, 2009, 05:09 PM
Great article, very good points. I think his "solutions" are mostly pipe dreams though. There really is no solution to the incentives problem.
Paqman
September 1st, 2009, 05:24 PM
Ubuntu is more usable than windows in so many ways IMO, so I don't really think it applies. :P
Who said anything about Windows? See: chasing tail lights.
If nothing else, I find it encouraging that there are people being paid to think serious thoughts about the usability of the Ubuntu desktop. Unfortunately a lot of the actual power rests with Gnome, though.
chessnerd
September 1st, 2009, 05:31 PM
The more user friendly something is, the less stable it will be. The more stable it is, the less user friendly.
I disagree. The GUI and the internal workings of a program are not so interrelated that making a good GUI means you should have to sacrifice good stuff under the hood. That's like saying a car manufacturer can't design a classy looking car because he'd have to put a crappy engine in it. The only reasons that a programmer wouldn't make an easy to use GUI are:
1. They don't know what would make it better
2. They don't have the time or think it's a waste of time to do it
The first issue is discussed in the article and I completely agree. There needs to be a way for people to talk directly with open source developers to tell them how to make the GUI better. The second issue is also addressed: there need to be people who there entire role in the project is just to make a better GUI. I know that bug fixing and working with code are the skills that most projects want, but I know that a lot of people, myself included, would like to have a chance to advise and help programmers with GUI problems.
Proprietary programs often have a better GUI, not because they sacrificed quality code under the hood, but because they paid developers to spend hundreds of hours looking for ways to make their programs user-friendly. If open source projects told their developers to spend hundreds of hours on better GUIs, better GUIs would come out of it, but most developers would rather work on patches and stability issues. This is not a bad thing, it makes the program more reliable, but if you don't take the time to develop a nice GUI to go with it, no one will use it.
swoll1980
September 1st, 2009, 06:09 PM
Ubuntu might be getting a lot more usable, but take a look in the General Help forum if you want to find out what its' stability or reliability are like.
99% of the problems in General help are pebcak errors. Hardly a sign of instability.
starcannon
September 1st, 2009, 06:11 PM
While meandering around the internet I came across this really interesting blogpost about usability in open source (http://mpt.net.nz/archive/2008/08/01/free-software-usability).
It's an old post, but my understanding is that the author has since got a job at Canonical, so his opinions will probably have more than a little impact on Ubuntu. I find I agree with most of it, and his suggestions for fixes seem reasonable. Opinions?
Interesting argument, but my personal experience is that OSS is very useful AND usable. Use what makes your project go zoom, I'll do the same for my projects.
Tibuda
September 1st, 2009, 06:25 PM
Interesting argument, but my personal experience is that OSS is very useful AND usable. Use what makes your project go zoom, I'll do the same for my projects.
Quoted for truth. "Use what works for you".
hanzomon4
September 1st, 2009, 06:27 PM
I'm glad this person woks for canonical
JDShu
September 1st, 2009, 07:10 PM
I definitely agree that designers and graphics artists are very under-appreciated both in the FOSS world and society in general. Some cultures around the world don't consider it "real" work. So this is my personal tribute to the graphics people out there, we need you :)
zekopeko
September 1st, 2009, 08:35 PM
The short answer is that there is always a tradeoff between usability and robustness.
Ubuntu might be getting a lot more usable, but take a look in the General Help forum if you want to find out what its' stability or reliability are like.
The more user friendly something is, the less stable it will be. The more stable it is, the less user friendly.
I think that you are wrong. User-friendliness isn't incompatible with stability. It's just code and having a user-friendly app just means having to plan ahead for the most use cases and finding simple, intuitive solutions to present to the end user.
Know what is user-friendly in the software context? The most visible thing is the user interface. A UI that is simple yet powerful is hard to do right (for the more complex operations) but once you do it right it makes software easier and more intuitive to use.
In the past months I have seen a surge in usability oriented talks and UI designs and it's a really good thing for FLOSS. From what I can see most of the usability push is coming from Ubuntu and is being integrated in upstream projects.
zekopeko
September 1st, 2009, 08:42 PM
I'm glad this person woks for canonical
mpt does some great things for Ubuntu and upstream projects.
He's currently designing Ubuntu Software Store (which most people don't understand is a push for user-friendly software management).
He also designed the new Empathy First Run Wizard which is being implemented, and F-Spot Preferences dialog which is now simple and to the point.
I can't wait to see what other goodies he and the rest of the team have in store for us, because everything I have seen so far was a welcome improvement to user-friendliness of Ubuntu and FLOSS in general.
And don't forget another prominent Ubuntu employee , David Siegel, the creator of Gnome-Do and the dude that pushed the 100 Papercuts project.
There are other people involved in the Desktop UX team at Canonical that are working (and testing) UI designs to make Ubuntu better.
Thanks guys and girls for the awesome work.
toupeiro
September 1st, 2009, 08:44 PM
really...
Look at where a closed source project like vmware workstation is. and then look at where an open source project like Virtualbox is. I just sunk your battleship.
zekopeko
September 1st, 2009, 08:45 PM
I definitely agree that designers and graphics artists are very under-appreciated both in the FOSS world and society in general. Some cultures around the world don't consider it "real" work. So this is my personal tribute to the graphics people out there, we need you :)
+1.
Designers and artists are hugely missed in FLOSS. We have amazing coders but once you start talking about UI's...
petrus4
September 1st, 2009, 08:49 PM
I disagree. The GUI and the internal workings of a program are not so interrelated that making a good GUI means you should have to sacrifice good stuff under the hood.
They are when your development team consists (at least partially) of rabid, Stallmanite 14 year olds who think they're Godlike programmers, but who are in fact the exact opposite, and whose only point of reference is the horrible monolithic paradigm of Windows.
There needs to be a way for people to talk directly with open source developers to tell them how to make the GUI better.
"Better," in this case is almost exclusively interpreted to simply mean, "more like Windows."
That in itself is a problem as well. The easiest way to develop programs that look like Windows, is to develop programs which are also actually like Windows internally; and I think we've all seen where that path leads. ;)
Ubuntu in particular has no great interest in diverging too radically from Windows, because it is well known that Windows refugees are the distro's primary target audience; and Windows refugees are also not renowned for either broad mindedness, depth, or intelligence.
Ubuntu is used in direct proportion to the degree to which Ubuntu emulates Windows. It's as simple as that. As time goes by, Ubuntu is emulating Windows to a steadily increasing extent, and it's becoming popular to exactly the same extent.
Ubuntu can't innovate, by definition, because being better than Windows still means being different to Windows; and if the Windows refugees don't get their "Free-as-in-Comrade-Stallman," Windows clone, they're simply not going to hang around.
The second issue is also addressed: there need to be people who there entire role in the project is just to make a better GUI. I know that bug fixing and working with code are the skills that most projects want, but I know that a lot of people, myself included, would like to have a chance to advise and help programmers with GUI problems.
The eternal debate; Glitter, or substance? In 98% of cases where human beings are concerned, glitter wins by default.
As far as the mass-market's desire is concerned, Ubuntu will ideally take the 32 bit architecture's 4 Gb memory maximum to the limit, due to its' bloat, and also crash to the point of complete unusability if you so much as sneeze in its' direction...but damn, that GUI sure looks good.
toupeiro
September 1st, 2009, 09:12 PM
The eternal debate; Glitter, or substance? In 98% of cases where human beings are concerned, glitter wins by default.
As far as the mass-market's desire is concerned, Ubuntu will ideally take the 32 bit architecture's 4 Gb memory maximum to the limit, due to its' bloat, and also crash to the point of complete unusability if you so much as sneeze in its' direction...but damn, that GUI sure looks good.
Have you ran vista or 7 lately??? My vista machine here at work is currently taking up 3.31GB of RAM. I have 2 IE windows open, 2 PuTTY windows upen, and outlook.. Yeah, for some reason, I don't think ubuntu is the OS with all the dead weight..
pelle.k
September 1st, 2009, 10:38 PM
With the risk as stepping om someones foot, let me just give you an example of what i consider poor usability design: cairo dock
When it comes to consistency, many GTK and gnome applications leaves much to be desired. Just as an example, some apps place widgets right out to the edges of the windows border, with no padding/spacing what so ever, while others use some spacing/padding between the window border and the widgets it consists of. Some apps also place visible separators without any distance to other widgets in proximity.
My preference here is not the point though - the point is that they should preferably choose one or the other method.
In my mind, that shouldn't be done in the application itself, but by the widget toolkit (ie gtk) dynamically (ie on runtime). This method could probably also resolve many other usability issues.
Let incorporate methods for the most sane usability configurations in to the widget toolkits, and let the applications developers spend more time on what the application should do instead. That is no solution for all usability problems, but i imagine it could solve some of them.
juancarlospaco
September 1st, 2009, 11:04 PM
Why when talking about "usability" is only related to GUI?
What about CLI usability...?
What do you think of Ubuntu CLI and Windows CLI usability...?
autocompletion, package-not-found, alias, coloured output, blahblahblah
Ubuntu Wins
:)
Viva
September 1st, 2009, 11:08 PM
Is firefox any less usable then IE?
magmon
September 1st, 2009, 11:15 PM
Is firefox any less usable then IE?
In the latest releases, yes. I've had it crash, take forever to load, and generally **** me off.
Viva
September 1st, 2009, 11:19 PM
In the latest releases, yes. I've had it crash, take forever to load, and generally **** me off.
That has nothing to do with usability, the problems you mentioned are related to stability on your computer. I've never had a firefox crash since I updated to 3.0
juancarlospaco
September 1st, 2009, 11:21 PM
Is firefox any less usable then IE?
Maybe because IE integrate all Search Engines faster
(doesn't matter if you don't want to)
http://www.tutorial5.com/images/stories/spyware_01.jpg
Old_Gray_Wolf
September 2nd, 2009, 08:43 PM
I can look at this topic from more than one perspective. I'm sorry for the long post.
The first perspective is the one I experienced by trying to design an interface that focuses on usability before any development of the application began.
The second perspective is the one I experienced by developing an interface that is increasingly usable through multiple iterations.
First perspective:
For several years I worked in a job position call "Human Engineering". What I did was describe how someone would use the application we were going to design. Then I developed a hierarchy of windows or commands based on how someone would use the features of the application. I used some techniques to minimise the mouse clicks, menu selections, commands, arguments, and parameters to get to the application's capabilities and make it obvious where those capabilities would most likely be located. Finally, I made prototypes of each window and commands showing the menus, text entry fields, radio buttons, commands, arguments, parameters, and so fourth.
The software developers spent the next 2 years implementing the application code while including the user interface I had defined. There where changes along the way; because, what I had described was to costly to implement.
The application was then turned over to a group of people that tested the application. They made contributions about how the application could be made more user friendly. However, by that time the budgets were getting lean, and there was a delivery date that could not be changed. Therefore, few of the suggestions were implemented.
The product was delivered; however, the customers had some of the same usability suggestions that the test team had. Sadly, by that time there was no budget left to make the customs happy.
Second perspective:
I worked on a project that delivered incremental additions of capabilities to an application. We had a 6 month release cycle similar to Ubuntu. We also had a monthly build that is turned over to the test group, also similar to Ubuntu's Alpha builds.
We did not spend a lot of time analysing the user interface or its usability. We developed the product in small increments. We let our test group suggest usability improvements that could be implemented in the next increment. The advantage was that there was still budget left to make the changes they recommend. The second advantage was simply that if the test group had difficulty testing the code then it was going to be difficult to maintain.
We delivered the product at the end of the 6 month release cycle, and let our customers tell us what improvements they wanted that would make the product meet their needs. We also listened to their issues with usability, and fix those in the next release. The budget for the next release was negotiated with the customers; therefore, we had new budget to make the customers happy.
Observations:
In FOSS, with volunteers writing the code, you don't have a budget; however, you do have the limitation of the time a volunteer can spend contributing to a project.
FOSS also tries to react quickly to the changing environment.
In FOSS, there is the opportunity to improve the usability of the code, if it is reported properly, with the next release.
Many FOSS projects have a short incremental development cycle with a longer stable release cycle.
Conclusion:
Our customers were much happier with the product produce by following the process described in the "Second perspective" above. Do to a changing environment, it was less expensive for them. In the "First perspective", if anything changed, it took a lot of work to make the big ship, 2 year development effort change course, and usually cost the customer a lot of money.
In FOSS, there are competing applications. I select the ones that have the most usability for me. Not everyone agrees on what usability is. Some people prefer the CLI, and some prefer a GUI. I may like an application because of its GUI interface, yet someone else may hate it because you cant use it from the CLI very efficiently.
hanzomon4
September 2nd, 2009, 08:52 PM
Have you ran vista or 7 lately??? My vista machine here at work is currently taking up 3.31GB of RAM. I have 2 IE windows open, 2 PuTTY windows upen, and outlook.. Yeah, for some reason, I don't think ubuntu is the OS with all the dead weight..
Oh come on... you're not telling us the whole story here or your machine is broken
chessnerd
September 3rd, 2009, 12:57 PM
"Better," in this case is almost exclusively interpreted to simply mean, "more like Windows."
No, I would consider "better" to mean easier to use. Windows isn't necessarily easier to use, but they do a pretty good job at sticking to the old adage "keep it simple, stupid." Ubuntu has two fully customizable panels, Windows has one taskbar. Ubuntu has three different buttons to get to Applications, Places, and System tools, Windows has one button: the Start button. Ubuntu's model may be more efficient and way more customizable, but it is not easier to use. This is why Linux Mint went with the Windows model for it's GUI.
I've installed a few GUI front ends to things like ClamAV and was forced back to the command line because the GUI was so poor and hard to use. I don't care if the GUI for it is "like Windows" just give me a way to pick files from a file manager window and then scan them. That's all I ask, but according to you, doing that would make ClamAV unstable...
That in itself is a problem as well. The easiest way to develop programs that look like Windows, is to develop programs which are also actually like Windows internally; and I think we've all seen where that path leads. ;)
Why is that that case? The GUI of a program has little to do with it's security or stability. Look at Firefox 3.5 and IE 8. On the GUI end they are virtually the same: menu bar, tabs, favorites/bookmarks bar. However, under the hood, they are incredibly different.
Ubuntu in particular has no great interest in diverging too radically from Windows, because it is well known that Windows refugees are the distro's primary target audience;
Linux Mint is far closer to Windows than Ubuntu is, as are many other distros. Ubuntu uses the default Gnome theme for it's GUI so if you want to make Ubuntu less like Windows, take it up with the Gnome developers or install Kubuntu. Oh wait, KDE is designed to work like Windows...
The eternal debate; Glitter, or substance? In 98% of cases where human beings are concerned, glitter wins by default.
I'm saying you can have both. A sports car both looks nice and has a powerful engine. What law of the computing universe says that something has to be ugly and hard to use in order to be good?
As far as the mass-market's desire is concerned, Ubuntu will ideally take the 32 bit architecture's 4 Gb memory maximum to the limit, due to its' bloat, and also crash to the point of complete unusability if you so much as sneeze in its' direction...but damn, that GUI sure looks good.
I use Jaunty on a pretty old computer with only 384MB of RAM and it runs just fine. I wouldn't call that bloated, I'd call that streamlined compared to Vista and 7. Even Windows XP can run at over 500MB on my mom's desktop. Ubuntu hardly ever breaches 400MB when you include swap space unless I'm doing ten things at once. As for crashing, as long as I don't mess under the hood too much, Ubuntu works just fine.
pelle.k
September 4th, 2009, 05:29 AM
Ubuntu has two fully customizable panels, Windows has one taskbar. Ubuntu has three different buttons to get to Applications, Places, and System tools, Windows has one button: the Start button. Ubuntu's model may be more efficient and way more customizable, but it is not easier to use. This is why Linux Mint went with the Windows model for it's GUI.
This has more to do about what one is used to, for the most part. I'm not arguing the gnome "three split" menu is easier to understand, than the "one menu does all" of windows/mint (or what have you), i'm simply saying the "one menu does all" concept isn't that obvious unless you're already used to it.
Ubuntu uses the default Gnome theme for it's GUI
That's not entirely true, however you point is taken.
vBulletin® v3.8.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.