Hacker News new | past | comments | ask | show | jobs | submit login
Why Free Software usability tends to suck (archive.org)
25 points by 10ren on May 21, 2009 | hide | past | favorite | 23 comments



This is a big problem with free software. Just like everyone else here, I used to believe that code was everything, and if only I wrote beautiful code, the world would come to me.

Then I discovered the dark side of business, money, marketing (and meetings, partnership negotiations, etc.).

You need both. But if you are an independent open source project with no backing from Sun, Intel or IBM, you are pretty much stuck with the "happy geek" problem.

Usability is one of those features that geeks tend to be most blind about. My favorite recent quote from such a geek: "the iPhone is nothing new, there are plenty of phones with the same specs".

Some people are trying to solve that problem as we speak you know ;-)


I agree insofar as that your average 'geek' has a far different definition of 'usability' than the majority of computer users and that, until relatively recently, free software was written by geeks and for geeks.

However, I am moderately jaded by the notion of usability defined as being "no learning required" - for example, which is more usable, vi or MS notepad? Anyone who has put in the effort would surely be able to use the former far more effectively than the latter, despite the difference in immediate accessibility.

It sort of muddies the water a little, I know, but I just don't think that 'ease-of-use' can be the last word in usability, and I think this is where free software excels - look at Firefox, for example. It has the instant gratification of any modern web-browser, yet offers almost emacs-level configurability.

I think that this is the happy medium that can only really come out of the free software world being, as it is, relatively immune to the sort of market forces that have forced the commercial sector to constantly chase the lowest common denominator. (who, let's face it, are bizarrely resistant to the idea that the incredibly complex piece of machinery in front of them might actually require some knowledge to use properly).


We are both correct.

Ease of use doesn't equate "simple". Ease of use should mean that you can start using it with no learning curve, but that as your experience grows, you naturally learn to do more complex tasks.

The secret of ease of use is that for each level of expertise, from beginner to expert, the tool will seem intuitive, and also take you to the next level non-intrusively.

That's why it's so difficult to design right!


The commercialisation of open source has added an instrinsic reason for suckage.

With closed source software the most common model is the license fee. Support calls and interaction with the user is a cost and something to avoid if possible. You polish your code and your interface until the users leave you alone.

With the rise of support-supported open source, the converse is true. You make your money from support, so typically the more polish, the less revenue. This is a fundamentally broken feedback loop IMHO with an intrisinic tension between product quality and cash. You want the product to very nearly work perfectly, but require work to integrate.


I'd say it depends on the support model. If, for instance, you sell support as a yearly subscription, then support calls are a variable cost against a fixed revenue, and so the incentive goes back to creating streamlined and non-confusing UIs to lower support costs. Still, it's a good point.


You're right of course. Except perhaps that quite a few people won't bother with a yearly support contract, if the software is so polished that it doesn't need vendor support.

I;d just like to clarify one thing. I don't think that open source software sucks, I think much of it is excellent, I just think that there is an inherent tension that tends to pull it towards suckage in a purely commercial market.


Sorry, i have read opinions like the one in the article many times, but i think they are just plain wrong. They are a myth. They were true in times when gtk1, gnome 1 or fvwm were standard. (And that was imo long before 2002). But times have definetly changed. I prefer the design of linux and of open source apps. I am no open source developer, but i am using it every day, so:

1. Most linux distros have well designed UIs, most linux apps too. I would say that open source apps have a focus on efficiency while many windows apps have a focus on first-time-users.

2. Many existing flaws of open source user interfaces have practical reasons: open source is always somehow "work in progress" / many open source desktop apps are somehow frontends for command line apps / many open source apps are grown products which for example come out of old gtk-times.

3. The real horror are many closed source apps which just ignore all developed gui standards just because of marketing reasons: Why does my windows desktop firewall or antivirus need their own gui design and even changeable skins?! Why does my windows office software give a sh on what i think is the best ui for my needs? Why does every app i install have to clutter my desktop with wizards, autoupdate-system notifications (which somehow look more like company ads) and hints to other products?


Same author's follow-up from late 2008:

"Why Free Software has poor usability, and how to improve it"

http://mpt.net.nz/archive/2008/08/01/free-software-usability


This looks like it would have been accurate 7 years ago when it was published, but a lot has changed since then.

I don't mean to say that OSS doesn't continue to have usability issues, but certainly the role of usability folks within the major desktop projects has changed very significantly since then. Usability in OSS started gaining traction right around the time this was written and has in the meantime and it does show.


OSS generally looks better than it did 7 years ago, but I don't see how true usability has improved too much. The major packages are a bit better, but the average project still suffers.


Massive improvements in usability have come about through bug fixes, increasing the completeness of applications, and better packaging of applications. I doubt the people doing that work thought of it as "usability" work, but it makes a huge difference. A lot of Linux's traditional usability problems have simply been missing functionality: missing GUI applications or missing features in major applications. Power users can often fill in the blanks by using extra utilities (transcoding a video file if their favorite video player won't play it, for example) but average users will be completely stymied, with the extra insult of spending ten minutes searching through the app's menus and preferences trying to find a feature that isn't there.


It assumes that free software means unpaid developers.

The idea that free software tends to have complex user interfaces is not convincing. There are lots of things with very simple UIs, including the Gnome desktop and almost all Gnome apps.

His links seem to disprove, rather than provide evidence for, his points. One is to a Mozilla enhancement request for an additional setting that was rejected, the other is to a Gnome usability study - did it lead to changes (disproves is point) or was it ignored (proves his point).


I think the reason is simpler - there is little evolutionary pressure. Coming from an ISV background, you will see that better designed user interfaces almost always sell better. Complicated or difficult to understand user interfaces will sell worse. So there is some type of pressure in commercial software to go for somewhat better user interfaces.

This pressure does not exist for open source software in the most case. If the people who are involved in the project find that it solves their needs, they don't see any need to modify it to fit the needs of new users. So the interface stagnates at what the core contributors are familiar with.


It's not limited to Free Software. Proprietary and enterprise software usability tends to suck too.


I mirrored the old mpt site here:

http://mpt.mirror.theinfo.org/discuss/msgReader$173

in hopes that Google will index it.


Maybe this is obvious, but why does this link use the archive?


Because the article is from 2002 and not available on this URL anymore.


The author is right that software is often not designed for ease of use by a novice or traditional aesthetic appeal.

But that's by design - not by "suck".

People building free software generally have themselves as the target demographic; they're not trying to appeal to novices or compete with Microsoft or Apple. They have a different definition of "good".


People building free software generally have themselves as the target demographic

People building free software generally have themselves as the target user, which is not the same thing.

Advanced users benefit from straightforward design and simple workflows as much as anyone else. The programmer may want every facet of functionality to be readily available, but the majority of users, novice or otherwise, will not care. The user should not be forced to have the same depth of understanding as the person who made the software, even if the user is perfectly capable of attaining it.


What's the difference between a target "user" and a target "demographic"?

You're right that advanced users benefit from straightforward design and simple workflows. But I think saying "Linux usability sucks" is tackling a much broader issue than that.

Plus, I would argue that Unix, and Linux, are all about straightforward design and simple workflows. Think about pipes and the command line.


A user is a specific person (in this case, the developer), who is not an accurate proxy for a broader classification of people (in this case, people whose technical acumen is similar to the developer's).

And as to pipes, they're useful in the way LEGO blocks are useful: you can make pretty much anything you want from them. But sometimes it's just more fun to have a toy you can play with immediately, no construction required.


I disagree strongly. KDE and GNOME were (supposedly) built for "regular" computer users, yet their usability is poor. (Granted, it's much less poor than it used to be.)


Supposedly, yes. In reality, I don't think that's so true (that they're build for regular users).

GNOME and KDE are also very amenable to the needs of hackers. I'd say they're designed as much for power users as regular people.

With GNOME, lots of lip service is paid to making a DE for "regular people." But who /actually/ uses GNOME? Linux users. Linux users are almost overwhelmingly not "regular people," but power users. GNOME is very amenable to the minimalistic style of many hackers.

And KDE is amenable to the "let's do some awesome shit" style of many hackers. It's on the cutting edge. It's not used by regular people and I don't think its development is driven by their supposed needs.

Personally, I use Openbox and the command line. These are the best "desktop environment" tools I've found yet, by far. But they're not for everybody. They're for power users. And here's my point: they are the way they are by design, not by "suck."




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: