Forgot your password?
typodupeerror
Editorial Programming Software IT Technology

Open-Source Software and "The Luxury of Ignorance" 1471

Posted by CowboyNeal
from the software-soapbox dept.
Bootsy Collins writes "Using the recent experience of trying to configure CUPS on his home network, Eric Raymond has written an interesting new screed on poor design of user interfaces in general, and configuration interfaces in particular, in open source software, entitled The Luxury of Ignorance. A sample quote: 'This kind of fecklessness is endemic in open-source land. And it's what's keeping Microsoft in business -- because by Goddess, they may write crappy insecure overpriced shoddy software, but on this one issue their half-assed semi-competent best is an order of magnitude better than we usually manage.'"
This discussion has been archived. No new comments can be posted.

Open-Source Software and "The Luxury of Ignorance"

Comments Filter:
  • by mozumder (178398) on Thursday February 26, 2004 @09:06PM (#8404134)
    Well, if ease-of-use is paramount, why aren't Macs more popular?
  • by Anonymous Coward on Thursday February 26, 2004 @09:07PM (#8404147)
    Dear ESR -

    The entire nation considers your written and spoken rants both condescending and highly obnoxious.

    For the good of the open source community and the world at large, please shut up.

    Thank you,

    Everyone
  • My experience (Score:4, Insightful)

    by brokencomputer (695672) on Thursday February 26, 2004 @09:08PM (#8404159) Homepage Journal
    I had a very hard time configuring cups for the first time, but after I learned how to do it, it proved to be '''much''' easier to administer and manage than it is in windows. It was also easier to change configurations without breaking multiple user's print settings. This is true with a lot of open source things. Hard at first, but once you get the hang of it, there is no going back.
  • by lavalyn (649886) on Thursday February 26, 2004 @09:09PM (#8404171) Homepage Journal
    Ignorance and the user won't step out of their bounds beyond their Internet Explorer and Outlook. Unfortunately, others like Gator and BetterInternet will do it on their behalf.

    In the end, a computer is more like a car than an oven, capable of great power but requiring a good deal of knowledge to use (and not run over people in the process).
  • by DRue (152413) <(drue) (at) (therub.org)> on Thursday February 26, 2004 @09:10PM (#8404173) Homepage
    We'll never get to this point if every time two people disagree they split the project. Project forks are good to an extent - but I think that we lose a lot more than we gain because of it. At least MS has a meeting and decides how to continue - we, the OSS community, just get pissed off and branch.
  • by hpa (7948) on Thursday February 26, 2004 @09:11PM (#8404187) Homepage
    It is punditry, but it's also something that has been said quite a few times before, including by Miguel de Icaza of GNOME fame.

    Really. There is a ton of OSS software with really shitty user interfaces, but anything involving fonts or printing seems to be crappy beyond belief.
  • Re:Bah (Score:5, Insightful)

    by Bilestoad (60385) on Thursday February 26, 2004 @09:12PM (#8404192)
    Congratulations on perfectly illustrating the attitude that keeps anyone from solving the problem. Congratulations to the moderator who gave you +1 Funny for doing exactly the same.

    Anyone who can't use an interface you understand isn't as smart as you and therefore is not worthy of consideration. Is that it? You can see where this leads when a developer hears criticism of the UI - they designed it, so of course they understand it. Stupid users! Of course it's their fault.

    And then they go and blame the same users for choosing windows...
  • Re:Bah (Score:5, Insightful)

    by KingOfBLASH (620432) on Thursday February 26, 2004 @09:12PM (#8404196) Journal
    Everything depends on what system you are configuring CUPS on. I'd agree with you for Mandrake Linux, but configuring CUPS under Slackware is anything but easy. I think one of the major problems is that people come out with great tools (i.e. CUPS), but they require a certain amount of effort / sophistication to use / configure, so distros like Mandrake, Suse, and Red Hat write their own configuration tools. Only problem is that because each distro is set up slightly differently, configuration tools aren't portable across distros. Perhaps what we need is a collaborative effort by the major distros to create 1 size fits all config tools.
  • by DRue (152413) <(drue) (at) (therub.org)> on Thursday February 26, 2004 @09:12PM (#8404198) Homepage
    The entire nation considers your written and spoken rants both condescending and highly obnoxious.

    Are you kidding me? This is precisely the thing that we need to concentrate on. If we can't be critical of ourselves - MS sure can.
  • by GNUALMAFUERTE (697061) <almafuerte.gmail@com> on Thursday February 26, 2004 @09:12PM (#8404201)
    How Important developers of the GNU and Open Source Movement are living the obscure land of kernel hacking and going to write some userland code. Many times, in Free Software, the underlying system, the lower level development is made by the most competent developers, and so is robust, stable, actually the best out there, but the front ends, well, they just don't have the same quality, so, for the unexperienced user, it looks like crap. I think it's time that we change this, and start showing that GNU can also be reliable on the Desktop, not only showing how fast it is, but also good end-user interfaces. It's not that i don't like KDE, GNOME, XFCE, etc,etc, they are ok, but i think that if we put the best people to work on it, they will be even better.
    Linus has been talking about this recently, are we going to start seeing things like Linusorganizer, Linword??, hehe, that would be nice.
  • by rmassa (529444) on Thursday February 26, 2004 @09:14PM (#8404212)
    We don't love people who rant and rave and complain.

    If the user interfaces are so poor, why don't you help fix them? Instead of approaching this in a manner designed to piss people off and create enemies, why don't you say things like:
    • "It seems to me that the cups configuration wizard could be a bit more intuitive. Specifically at these points..."
    or (shockingly) even better:
    • "Here's a patch that I feel makes the cups configuration wizard more user friendly. I was able to have 10 of my non-linux friends successfully configure a networked printer from my wife's workstation with the patched version. Can anyone find a way to do things even better?"
    More of us would listen to you if you stopped insulting people left and right. We might even take heart in your suggestions and join in the fun of making a better UI.
  • Re:My experience (Score:5, Insightful)

    by Brigadoon (520066) on Thursday February 26, 2004 @09:16PM (#8404231)
    The problem is that not everyone can get it working. I'm a CS major and a Linux geek. Definitely not an advanced Linux user, but I know how to setup and use Gentoo, which I do, but I simply could not get CUPS to work on my system. I'm sure if I spent a good deal more time reading the documentation and playing with it, it would be easier in the future, but I, like most computer users, won't NEED to set it up more than once. I should have an easy time getting it setup and working so that I don't have to dick around with it ever again.
  • Re:Bah (Score:3, Insightful)

    by Wavicle (181176) on Thursday February 26, 2004 @09:16PM (#8404233)
    Anyone who can't configure CUPS shouldn't be talking about ignorance...

    Do you even KNOW who Eric S. Raymond is?

    Your credentials had better be damned good before you go around casting aspersions like that. There aren't too many names in open source software bigger than his.
  • by el-spectre (668104) on Thursday February 26, 2004 @09:17PM (#8404238) Journal
    True, and a computer takes some skill to use. It's not fair to expect the average user to be an expert just to do some simple configuration.

    Hell, I'm a half decent tech geek, and I struggle to do many config tasks even on user-friendly distros like Fedora.

    Should it require significant skill to update the kernel (and know what you're doing?) ? Sure. But to install simple hardware? Hell no.
  • difficulty of OSS (Score:2, Insightful)

    by chrisopherpace (756918) <`ten.gsnh' `ta' `ecapc'> on Thursday February 26, 2004 @09:18PM (#8404248) Homepage
    Although CUPS is easier than hell to setup to me, this is a major problem with OSS, ease of use. We geeks write software, and most of the time don't think about the pee-brained morons on the other end. And even sometimes we don't think of just simply the normal person at the other end. We create interfaces, and leave them at that, assuming we do create GUIs. Installation is usually a bitch, and the layout of a GUI generally takes some time. Please note that this is not a majority problem, the majority of OSS software is actually good in the interface design. But, this is true with a lot of commercial products also, so take this with a grain of salt.
  • Re:who's we? (Score:5, Insightful)

    by jonman_d (465049) <nemilar@optoDEBIANnline.net minus distro> on Thursday February 26, 2004 @09:18PM (#8404251) Homepage Journal
    Uhm, I guess you've never heard of ESR before. When he talks about the open source community as, "We," he really means "we." [catb.org] He is actually doing the work.

    ESR is part of the community. He's not some teenager whining that the software doesn't work - he's a respected figure pointing out a problem in hopes that it will be recognized and fixed.
  • by TheWanderingHermit (513872) on Thursday February 26, 2004 @09:22PM (#8404281)
    That rant, to me, sounds like another programmer who can't cope with the idea that most people do not think like programmers when it comes to understanding software, and would rather blame the user than have the strength to take an honset look at the situation and what he/she could do differently to improve it.

    I know writing GUIs is a pain (I'm not a professional programmer, but I've had to do nothing but coding for 2 years), but programmers have to stop blaming the users and other people who point out things like this. It's just a denial that 95% of all people using a computer need something simple because, to them, IT IS JUST A TOOL, and they need to use it to produce a product, not to hack on and explore.

    ESR has a good point -- if FOSS is going to replace closed source, or hold its own, or even continue to grow, FOSS programmers will have to get realistic in understanding how users think instead of blaming users because the programmers don't want to make the effort to understand the other side of the issue.

    For the good of the FOSS community, ESR needs to speak out more, and people like the above poster need to "please shut up" and listen to other points of view, instead of hiding their head in the sand in denial.
  • First of all, as a self-taught Linux user I am delighted that someone as talented as ESR can have a hair-pulling session doing something like setting up CUPS. I have had many an evening like this. Excruciatingly close to getting something done, something that should be simple, and instead spending hours feeling stupid and incompetent. He's right, and he's right about the fact that this is why there are countless unused Linux install discs littering desk drawers under Windows machines, tried and abandoned by people who hate Micorosft, hate Windows, who would LOVE to support an alternative, but can't make it work.

    The user is the loser. There's a clubby, exclusive, snotty attitude among user's groups. The online resources are hopelessly disorganized or relentlessly dinged with ads. The vision that Stallman has of software as knowledge, rather than product, is lost among the throng of sociopaths that spout RTFM at users that ask the same questions over and over.

    Well, you know why people have the same questions over and over? Because the software is obscure and the documentation is unhelpful. GNU is based on people solving their own problems and then giving other people an opportunity to use thier solutions. Documentation, at best, is an afterthought. Once you have solved a problem, there's no need to go back and explain it to yourself, any documentation that does exist arises purely from the virture of developers, not because they need it themselves.

    The fact that the most useful thing you can have with this enormously powerful gem of human progress (the computer) when trying to use Linux is a printed-out HOW-TO, probably downloaded and printed from a Windows box, is more than ironic, it is shameful. The tools for providing context-sensitive help are there, they just are unused. The developers don't care about the user, they've solved thier problem by this time.

    If OSS developers needed robust documentation in order to distribute their product, they would either develop it or not distribute their code. But they don't. There's no reward for the developer.

    This brings me around again to the notion of licensing software developers and then making them accountable for the usability of the product. Not as an avenue for exclusion, but to build a community of developers devoted to the user, a Mr. Goodwrench sort of certification standards, that tests it's releases against naive and novice users. How you make this work I have no idea.

    Red Hat should be doing this already, but they've clearly left the home user at the altar.
  • Oh please, (Score:2, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @09:22PM (#8404287)
    I spent HOURS AND HOURS trying to get CUPS working on my Linux box with ONE SIMPLE PRINTER on LPT1! It spit out vague error messages and error codes and google searching turned up nada. I eventually gave up and installed LPRNG which only took JUST A FEW HOURS after tricking out magicfilter to work properly (I still had to force the stupid printcap file to find the appropriate directory). Face it, setting up printing under Linux can suck.
  • He's right (Score:5, Insightful)

    by blincoln (592401) on Thursday February 26, 2004 @09:22PM (#8404290) Homepage Journal
    I always try and get an open source-coding friend of mine to understand this, and it never seems to sink in.

    Interface design is an incredibly important part of any software project - it's like the clothes you wear to a job interview. Sure, you *might* get the job if you wear your regular jeans and t-shirt, but if you take the time to dress up, you will create a much more favourable impression on the potential employer you are meeting.

    Similarly, taking the time to make your user interface polished and intuitive is one of the best ways to end up with happy end users who tell other people how great your software is. It lets them know that you care enough about the software you create to spend a few extra hours making it look nice instead of shoving it out the door as fast as possible.
  • but he's right (Score:5, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @09:23PM (#8404297)
    You're all missing the point. Trying to configure CUPS does suck if you're on your own trying to figure it out. Anything with Linux is this way. I'm not a college-aged dork sitting in a dorm not getting laid with 20 other dorks playing EQ. I'm trying to figure out how to use this powerful tool, and if I have to spend 3 days studying dusty man pages to set up a frickin' printer - forget it. Takes me 10 minutes to write a script to install a queued novell printer when I click on a NAL - and then leverage that against 10,000 machines that I don't have to touch. Will Linux do this one day? I hope so.
  • Yep (Score:5, Insightful)

    by The Bungi (221687) <thebungi@gmail.com> on Thursday February 26, 2004 @09:25PM (#8404310) Homepage
    And then when you (humbly) send an email or post a suggestion about how to (possibly) make [insert technology] a bit more friendly, the responses tend to go like this:

    • [no response. evar]
    • This is different from Windoze - I know that! I don't want "Windoze" (how cute, BTW) I want to tell you that your fucking design sucks rocks!
    • If you want stupid, use Windoze instead - Again, very cute. Also arrogant and stupid.
    • This is how it's done in Linux - Well shiieet, of course it is. That doesn't mean it's correct.
    • Did you RTFM|Google? - Well of course, for the last fucking 4 hours, just.
    • The next version will have... - That's great except that if I Google for what you said about this version I see the same thing. Wow, Usenet is great, eh?
    • We're not going to add that, that's stupid - Of course!
    • Use [x] instead - Yeah, except that [x] has been in alpha for the past nine years.
    • Check out [this page] - Fantastic. If that's not a 404 I guess I'll have to learn Japanese! Weee!
    • You're welcome to ask for a refund - Wahahaha!!!
    It takes a rant from ESR (who despite his pretensions doesn't know much about human interaction) to get people to do things right? Wow.

    I always get a chuckle when people compare Linux to OS X or Windows in usability terms. KDE looks absolutely fantastic after I log in, but the fun stops there. If I actually want to do anything else I have to fire up vi and edit 1,000 conf files. Give me a break.

    And yes, ESR is right. This is one of the things that keep Windows users in Windows and perpetuate what you folks call "monoculture". Whining about it and blaming everything on "M$" won't fix anything. Great software ultimately sucks if I can't use it.

  • Re:Bah (Score:1, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @09:26PM (#8404322)
    I agree, CUPS has definately been the easiest server software I have ever set up. It was even easier to use than apple's usb printer sharing.
    With a house full of macs, CUPS was easily configured to work with all of our computers. It even workes with netatalk printer deamon flawlessly.

    To attest to CUPS ease of use, everyone in my home knows how to use it and does rutinely. For people that think spam is a steep learning curve, that means a lot.

    What he probably is having trouble with is his kernel configuration of libraries or something that isn't allowing CUPS to function properly. Maybe he doesn't have any fonts installed. But as said by several others, this is dependent on the distro you use. I hate how people use the "Linux" term for anything under the sun, from a Zaurus to a renderfarm. This guy should be complaining about his distro's problems. There are plenty of easy to use, easy to set up distros. But he wouldn't get on slashdot for complaining about that.
  • by bersl2 (689221) on Thursday February 26, 2004 @09:26PM (#8404323) Journal
    Call me a pessimist, but:
    1. It doesn't matter; they'll still ask for help.
    3. See #1.
    5. See #1.

    4. Writing bad documentation has always been known as a fault.

    2. WTF is even he talking about when he says "guidance" or "system?" The question is too vague for my taste.
  • Re:Goddess? (Score:3, Insightful)

    by sbma44 (694130) on Thursday February 26, 2004 @09:26PM (#8404324)
    my guess: snarky paganism inspired by being a tech guy.

    It's unfortunate, but it seems that most of us (myself included) deal with endless yelling at people who don't understand/value what we understand/value by deciding that everyone else is an idiot. Some of us become a fire-breathing libertarian. Some of us eschew all organized religion, or at least replace the one we were brought up in with one that we find amusingly unorthodox. Sometimes we just become an arrogant ass (that's the one I settled on).

    Am I over-analyzing here? I'm honestly not trying to troll or flame, just navel-gaze.

  • by i.r.id10t (595143) on Thursday February 26, 2004 @09:26PM (#8404327)
    Marketing, but also price. Consider that you can buy PC parts from a bunch of manufacturers, vendors, etc. and the price competition involved there. I think I'd be really tempted to spend $100+ on OS X if I could run it on my "cheap" PC hardware.
  • by fitten (521191) on Thursday February 26, 2004 @09:26PM (#8404329)
    Yes... exactly his point. IF you want Linux to succeed on the desktop, you will have to one day realize that the *vast* majority of users will have little to no technical experience or expertise. Not only will they have criticisms but they will not, and have absolutely no desire to, fix such issues. Instead, they will abandon it and go find something else easier to use.

    It's attitudes exactly as yours that will relegate Linux to a niche. You are not helping Linux and OSS, you are hurting it.
  • by Wavicle (181176) on Thursday February 26, 2004 @09:27PM (#8404331)
    show me the code, or shut up

    Have you looked for the code?

    Your post tells of smacks of an attitude all too typical in open source... You believe only code gurus should criticize software. Eric may or may not be a code guru, but that argument is flat wrong. Bad interface is why Linux is taking so long to make inroads on the desktop. It's a legitimate problem that needs to be addressed and maybe *JUST MAYBE* people who write code are not the best user interface designers. Maybe users are simply not as deterministic as software.
  • by djkitsch (576853) on Thursday February 26, 2004 @09:27PM (#8404334)
    Instead of approaching this in a manner designed to piss people off and create enemies, why don't you say things like: [etc]
    Um... the "Specifically at these points..." is kinda constructive, don't you think? It's a bit of a stretch to accuse him of insulting anyone - this is the kind of language I use every day when giving useability advice (I'm a web consultant), and it's normally taken as my being helpful - it would only be insulting if he criticised it without pointing out where it could be improved.
  • by salimma (115327) * on Thursday February 26, 2004 @09:27PM (#8404338) Homepage Journal
    The article was insightful, and it contains some things I still did not know after wrestling with integrating CUPS, Turboprint (crappy Canon printer) and Samba, but to be fair to the CUPS developer, they did not write redhat-config-printer; Red Hat did.

    CUPS and Turboprint works well, as it turns out, the problem is that printing from OOo (Linux), printing from OOo (Win) using CUPS' postscript driver, and printing from OOo (Win) to a Windows printer results in different page margins being used. Bummer. At least the fonts look identical if the same fonts are used on both ends.

    And for those people with new Winprinters wondering why raw printing from Samba does not work anymore, you need to add the Windows user as a printer admin. Not documented *anywhere*.
  • by gelfling (6534) on Thursday February 26, 2004 @09:28PM (#8404340) Homepage Journal
    Perhaps Mr. Raymonds' problem is that he EXPECTS all open source stuff to work flawlessly first time out of the box instantly just BECAUSE it's open source.

    In the Windows world it's always a little like being a landmine tester by hitting it with a hammer. So we expect that the configuration dialog for the printer device will just hang or crash for no obvious reason. We expect that MS common UI design isn't and most of the critical functions are never in the same place.

    Predictable Failure. We hope for a minimal effort, at best. But in the OS world we think sheer brilliance will save us all no matter how obscure. So when it doesn't we experience a level of frustration and disappointment we're not accustomed to.
  • It's a valid point (Score:3, Insightful)

    by Versalis (29051) on Thursday February 26, 2004 @09:29PM (#8404347)
    Far too many open source apps are designed by geeks for geeks. Maybe every one here on ./ can make sense of them but I flatter myself/ourselves that we are somewhat special. Every one in the open source community dreams of the day when open source over throws the evil empire of Lord Gates, but that won't happen until open source apps are as easy to use as the competition.

    My mom and dad have a computer (but 10 years ago they wouldn't touch mine) and there's no way in hell they'd figure out how to configure Linux to print, or network or even change the display resolution. The number of people with personal computers today is astronomically higher than it was 10 years ago and one of the core reasons for that is that they are no longer intimidating to the uninitiated; if you take all those people and throw them back to the usability of ten years ago they'll just give up on computers like they did back then.

    You can shout RTFM all you want, Joe Blow doesn't want to read it. So if you want Joe Blow to use your wares make them as easy to use as the competition.

  • Typical (Score:5, Insightful)

    by KalvinB (205500) on Thursday February 26, 2004 @09:30PM (#8404351) Homepage
    With closed source the responsibility lies solely with the company to solve the problems.

    With open souce, problems are just an excuse to try to force people who find problems to "join the cause" or you can just ignore any problems they find.

    Here's a crazy idea members of the Open Source community such as yourself need to get through your thick skull: take responsibility for the crap you write. If you write the code, it's YOUR responsibility to fix the problems. No one else is obligated to fix a line of code and is more than free to point out the flaws.

    He didn't write CUPS so why should he feel obligated to fix it? He's a USER. He didn't write the code. He didn't design the interface. As a USER he's in a position to criticize. It's what users do.

    Whinning he doesn't treat you like a king and kiss your feet for blessing him with what he sees as crap, is not going to do anything to win support for the project.

    This is why I choose what Open Source projects I use very carefully and rarely recommend them and never because they are Open Source.

    Ben
  • by pavera (320634) on Thursday February 26, 2004 @09:30PM (#8404356) Homepage Journal
    All in all a pretty decent article.
    I agree with many of his points, if there is one thing I dislike in the *nix culture it is the elitism, and holier than thou attitude that many people in said culture have towards users. This is just one more sign of that elitism, we spend hours and hours making very good stable, well designed software, and then we demand that you read a 1500 page book to be able to use it... That's stupid, now you can say "if they don't want to learn they shouldn't be using this software" but that's dumb too... my dad is an attorney, he wants to work on cases, and do legal research and the like, thats what he's interested in, he doesn't want to spend an hour a day figuring out how to share printers/files and send emails, and he doesn't want to have to pay someone $150/hr every time he needs to add a printer to his network. My wife is a psychologist, she wants to care for her patients, and work on her book, she doesn't want to be bothered with figuring out how to configure her computer, and she shouldn't have to be... That said, the author shouldn't have been bashing the CUPS guys, the configurator in question is an inhouse product by redhat/fedora, no other distribution uses it, and the default setting of having the broadcast turned off was also a decision by redhat/fedora not the CUPS programmers (well it might have been made by the CUPS devs, but redhat/fedora had every opportunity to change that default behavior). I appreciate the article though because he is right on in critisizing the community for their lack of vision in this regard. (btw, I admin a 7000 node network, and the entire thing is controlled by linux and unix servers, there are windows nodes, but I would never run windows on the server side, and I rarely use it on the desktop either so don't count me as some MS apologist)
  • by DavidinAla (639952) on Thursday February 26, 2004 @09:30PM (#8404362)
    Contrary to what you think, the least expensive Mac is the entry-level eMac, which costs $799. Check it out for yourself.

    Ignorance like yours -- particularly to compare a $300 Intel box with a Mac -- is a huge reason for Apple's lack of market share. Apple has made a LOT of mistakes on its own, but people like you who THINK they know something about Macs are just as big a source of the problem.
  • Re:This one time (Score:1, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @09:32PM (#8404373)
    What the hell did you find to be wrong with Word that isn't just as badly wrong with Open Office? I hate this "its MS, so its shit" argument. Rarely if ever substantiated. Anyway, move your boss over to OO. And then he can't run his Excel macros properly and he looks like a fool when he takes his allegedly, but not really, powerpoint compatible file to a meeting.

    So, in advance, yeah, I do want fries with that.
  • by Commykilla (107585) on Thursday February 26, 2004 @09:33PM (#8404380) Homepage
    It's really easy to jump on the Anti-Microsoft bandwagon when it's time, and say "Linux is ready for the desktop, it's high-quality and easy to use, why doesn't it overtake that crap from Redmond". But, when push comes to shove and sombody points out the things that scare off non-technical users from using Linux, OSS "advocates" really seem to have a hard time accepting constructive criticism.
    Look -- if it's just a hobby OS, fine, this criticism is totally baseless and cruel. But, if you all want to see your labor of love have a real shot at the desktop market, you're going to have to take criticism like that and work with it -- if it seems angry, it's because end-users get frustrated when they're promised an easy-to-use system, and they have to spend more time wrestling with configuration than actually doing what they need the OS to do.
    Either take the criticism as advice and use it to add value to your software so it can be accessible to a larger audience, or accept that your OSS project is just a hobby.
  • by belmolis (702863) <billposer&alum,mit,edu> on Thursday February 26, 2004 @09:33PM (#8404385) Homepage

    It seems to me that at least one major locus of the problem is being missed here. ESR says:

    I'm reading the manual, and I find a reference to "BrowseAddress" and /etc/cups/cupsd.conf which begins to unfold for me the mystery of how the autoconfiguration is supposed to work. It seems that CUPS instances periodically send broadcast packets advertising their status and available printers to a broadcast address to be picked up by other CUPS instances. Smart design! But...bugger me with a chainsaw, the broadcast facility is turned off by default and the documentation doesn't tell you that!

    One of the autoconfiguration features that CUPS provides to make life easier for the user was disabled! Now, maybe off should be the default, as a security measure, but from the point of view of ease of use, either the default should be on, or the user should be provided the opportunity to enable it during installation. I don't know whether the default was set by the CUPS people or the people who put together the distribution, but it seems to me that handling this kind of thing is exactly the role of the people who create distributions.

  • by ebbomega (410207) on Thursday February 26, 2004 @09:34PM (#8404388) Journal
    In that case I recommend you turn off your tv.

    I saw an ad for iLife just yesterday in a magazine. I've also seen plenty of Apple billboards in the past as well as the present. And not to mention all the pree press it gets on the internet.

    Advertising and marketing is more than tv spots.
  • by tc (93768) on Thursday February 26, 2004 @09:34PM (#8404394)
    Or just split the difference, keep everyone happy, and decide to do both proposals. Hence leading to configuration boxes from hell adorned with approximately seven thousand checkboxes.
  • by Bull999999 (652264) on Thursday February 26, 2004 @09:35PM (#8404398) Journal
    For most people out there, price is the ONLY factor. Why do you think that stores like Wal-Mart does so well?
  • by rduke15 (721841) <rduke15 AT gmail DOT com> on Thursday February 26, 2004 @09:35PM (#8404402)
    Well, in fact, setting up a network printer in Windows is certainly not better.

    You have the choice between "Local printer" and "Network printer". If you do have a network printer like an HP with a JetDirect card, the correct choice is NOT "Network printer". It is "Local printer", and later you have to add a "Standard TCP/IP port". ("Network printer" is only to add a printer shared over SMB by another computer)

    So while he has a good point on a bad interface, and while it is true that for some things Windows may have a better interface, it certainly doesn't for networked printers.
  • by ratsnapple tea (686697) on Thursday February 26, 2004 @09:37PM (#8404418)
    Programmers should definitely code with these questions in mind, but I think it's even more important to recruit people who are skilled in UI design so they can knock some sense into the coders every once in a while. Coders can't, and shouldn't, be expected to always focus on usability--for most engineers it's not their area of expertise. Likewise, UI people shouldn't be expected to have to code just to get a feature implemented the Right Way.

    There's plenty of graphic designers and UI experts in the employ of Apple and Microsoft who probably couldn't code their way out of an infinite loop. I don't know that the same can be said of most open source projects.

    yours
  • by TWX (665546) on Thursday February 26, 2004 @09:37PM (#8404419)
    "...we, the OSS community, just get pissed off and branch."

    And this is a bad thing how? In this business competition is almost always a good thing, especially when the source code is open. If the fork comes up with something better than the original, the original could incorporate it or mimic it. If either project dies, the stuff is still available for use or continued development.

    I've tried to configure CUPS. I don't feel so bad about the lack of particular success now that I've heard of Eric Raymond's troubles. This is one project that might benefit from someone forking it and developing interface tools that allow it to work without being such a bane.
  • by Spetiam (671180) on Thursday February 26, 2004 @09:40PM (#8404445) Journal
    submit a patch or shut up. Identifying a problem we all know exists isn't that amazing.

    on the other hand, the "squeaky wheel gets the grease"

    i think the more noise everybody makes about a particular shortcoming, the more the entire community will pay attention to that particular shortcoming. yeah, it might be annoying that people keep harping on this, but in it's own way, it will help get things done

    just a thought
  • by djkitsch (576853) on Thursday February 26, 2004 @09:40PM (#8404449)
    It's fine to say RTFM to a spotty student who spends his entire free time in front of his Linux box, but ESR is making a valid point that no-one seems to pick up on:

    Most of us don't have the time

    I work from 9am to 3am every day, including weekends. I would love to run Linux, purely because Microsoft's pricing and attitudes bother me, but the last time I tried to set up Red Hat, it took me 4 days to get the system to even recognise my video card.

    We're not just talking about Aunt Tillie, we're talking about Joe B. Power User, who may have the skills to work it out eventually but simply does not have the time.

    Wheras, I plug my Windows XP machine (and yes, I know this is only a recent thing) into the network and Universal Plug and Play makes network printers accessible without my having to so much as touch the PC. Now that's what we want from a Linux distro, and it's not even hard to implement. Why should I have to wade through a dozen .conf files to get Linux working, only to attract abuse from the same people who encouraged me to use it in the first place?
  • by MinutiaeMan (681498) on Thursday February 26, 2004 @09:41PM (#8404458) Homepage
    "What is a non-technical user doing with Linux anyway? They need to crawl before they can walk."
    I hope you're not one of those same people who's predicting that 2004 is going to be the year of Linux on the desktop... Face it, most computer users (myself included, sometimes) have no interest in learning the nuts and bolts of the system and every application that comes with it. Until Linux embraces those kinds of people, it's always going to remain a niche OS and never be widely accepted in turn.
  • by Ars-Fartsica (166957) on Thursday February 26, 2004 @09:42PM (#8404466)
    The better point might be that there are fewer names in open source more derided than ESR.
  • Re:In related news (Score:0, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @09:42PM (#8404468)
    Oh if only someone would port XEmacs to the Macintosh so we wouldn't have to listen to that has-been rant about Linux.
  • Dream system (Score:4, Insightful)

    by British (51765) <british1500@gmail.com> on Thursday February 26, 2004 @09:42PM (#8404471) Homepage Journal
    Here's my idea of a dream setup: the best of both worlds. The consistent GUI of Windows or Mac OSX, and then the rest of it consisting of all that is good from linux(stability, etc).

    I envision mullet computing. Windows/Mac in the front, Linux in the back.

    I love how I have some nice GUI configuration options for Samba(in Fedora), but to completely configure it, you still have to dig in the .conf file. Why would you only have a few configuration options?
  • by mytec (686565) * on Thursday February 26, 2004 @09:43PM (#8404474) Journal

    And who are the (l)users? The persons who use a computer as a tool to get their job done? The persons who don't think of their OS as a religion? The persons who given in and try Open Source software only to find that a good deal of software isn't as usable as it could be? When they ask or comment they are thrown to the wolves.

    OMG..imagine a guy who has done a good deal of visible work for the Open Source cause, points out a weakness or simply an area that needs some improvement, and the most visible and shocking comments on /. are the ones knocking the guy. Very little in the way of, "yeah things could be better...How do we fix this? How do we help?"

  • by DavidinAla (639952) on Thursday February 26, 2004 @09:43PM (#8404478)
    That would be news to the vast majority of businesses out there -- who do NOT compete solely on price. If your statement were true, most people would be driving a bunch of Korean compact cars. I don't see the majority driving Kias yet. Would you care to revise your simplistic and and obviously wrong statement?
  • by ErikTheRed (162431) on Thursday February 26, 2004 @09:43PM (#8404480) Homepage
    You missed the point of the article. He's speaking about Open Source projects in general, and he has a very good point. I only started using Linux and other open-source software about three years ago, and I've gone through the exact same process with at least a dozen different packages. Most of this could and should be fixed on the documentation level - if someone like myself with 20+ years of computer (coding x86 and TMS9900 assembly at age 10) experience gets frustrated, there is a serious problem.

    It's all well and good to put out an excellent piece of software like CUPS, but it's also important to communicate its workings (and CUPS is just an example; we could go down a list if we wanted to). Even though I have extensive coding experience, I think the best way I could contribute to Open Source is on the documentation side... if I can just figure out what I'm doing first :). Even then, the other Eric and myself can't fix everything.

    Beyond that, open source developers need to develop the mindset (pun semi-intended) that their user knows either little-to-nothing for desktop applications, or basic server administration for daemons. Each piece of documentation should begin with something like "In order to comprehend this documentation, we suggest you be knowledgeable about: (shell scripting, OpenSSL CA management, installing CPAN modules, etc)." Pointing to some good references would be a bonus. Listing knowledge dependencies is every bit as important as listing library/package dependencies.

    Once that's out of the way, you have to communicate everything necessary to configure and run the software. Writing documentation from a naive (in terms of program functionality) perspective is difficult and tedious, but it is doable. You just have to ask yourself "If I didn't write this, would I know what the hell I'm talking about?" after eveyr paragraph.

    And that's just to be "reasonably" useable. If we really want to "take over the desktop," then we need perfectly polished wizards and other GUI tools to help those users that are are not inclined to RTFM, spend a few hours with Google, or (shudder) RTFS. The bottom line: it's wonderful to put out a really cool and useful piece of software, but the job isn't done until it's documented (daemons) and / or idiot-proof (end-user software).
  • by s4m7 (519684) on Thursday February 26, 2004 @09:44PM (#8404487) Homepage

    The fact that he mentions using Fedora core kind of discredits his whole argument against the "open source community" and the "CUPS Team" when what he is really denouncing is his linux vendor. It's been kind of an understanding for a long time that it was for the OSS community to build, and for the Commercial distro vendors to "clean up" for Joe and Jane End-User. It's a shame that he never makes that clear, and I'm sure if I were on the CUPS team I would be a little offended at the way ESR is explaining away his^H^H^H aunt tillie's failure to read the dox, search the list, and otherwise be completely "luxuriously" ignorant. Go buy windows. OSS isn't really a fair proposition if you don't have something to contribute.... or at least meet the developer half-way.

  • by Anonymous Coward on Thursday February 26, 2004 @09:44PM (#8404489)
    It was easy for you because you know what the heck you're doing already. I've got over a dozen years of UNIX printing experience, and every single bozo trap that Eric mentioned is a real flaw in the CUPS design, including the Mandrake installation. I got past them because I'm a flipping expert, but for newbies they're a nightmare.

    In fact, for Mandrake, did the CUPS installation mention that you have to set up xinetd by hand to run the cups-lpd daemon to even *run* the admin interface, or did Mandrake add it to the RPMS by hand themselves? It's most certainly a stage never mentioned in the source tarball nor is it included in the RPM spec file that comes with the tarball.

    I built and tested it last week to try new printer drivers, and no, it's not there. And the addition of new printer drivers is pretty damned secret, too....
  • by SYFer (617415) <syfer@syPOLLOCKfer.net minus painter> on Thursday February 26, 2004 @09:45PM (#8404495) Homepage
    This post (and its parent), albeit humorous enough, go straight to the underlying problem with Linux at present: a wilfull disdain for the non-savvy user. "Joe Sixpack" should be embraced rather than disdained (figuratively, of course).

    This is the underlying problem with the interface issue discussed in this thread and it is why M$ continues to prevail in spite of a generally inferior core product.

    When *X finally evolves from an exclusive clique into a user-focused OS for the people (not merely the nerds) it will truly prevail. Currently, IMO, its the percieved pricing ("free" as in beer) and general non-Microsoftness of Linux that drives it at all. The user experience and level of effort required to achieve proficiency is generally thought to be a big negative at ground level.

  • I hate this answer (Score:5, Insightful)

    by Ars-Fartsica (166957) on Thursday February 26, 2004 @09:45PM (#8404496)
    Come on, are you telling me when something ticks you off about a piece of code you download the tarball or cvs the code and learn the whole thing and dedicate yourself to its betterment??? I hope nothing about the kernel or Mozilla or Mysql tick you off or you are looking at six months of hard study.
  • Re:My experience (Score:4, Insightful)

    by madcow_ucsb (222054) <slashdot2@sa[ ].net ['nks' in gap]> on Thursday February 26, 2004 @09:45PM (#8404499)
    Don't feel bad. I've spent a lot of time running linux boxes (started back in 96 or so) and my share of HP-UX and Solaris boxes as well. And I'm a software engineer who does firmware and drivers. I know my Unix pretty well. And I'll be damned if I could ever get CUPS to work with my old USB DeskJet 895CSe in anything but the most horrible, chunky, layered-colors-as-black print quality I've ever seen.

    It was litereally so bad that I wasn't comfortable turning in papers (I was in college then) that were printed with it. No, instead I had to print my output to PDF and take it over to my roommate's Windows machine and print it there.

    The drivers and print settings were just horribly archaic. Fine, keep all the crazy stuff, but hide it in an "advanced" tab. All I want is to select my printer type and then "draft", "medium", and "best" print quality and paper type/size. I always had to fight it to convince it that I also didn't want it to default to A4 paper. I don't have A4 paper, I don't want A4 paper, I've never even *seen* A4 paper. It would've been nice if it had noticed I was on an en-US system and figured I probably would want "US Letter"...

    Maybe things have gotten better recently (this was a couple years ago), but I'm pretty jaded about trying to use an inkjet on Linux now. I haven't even tried since.

    That said, I've never had a problem with a LaserJet. As long as it speaks PostScript I've done ok.
  • by alienw (585907) <<alienw.slashdot> <at> <gmail.com>> on Thursday February 26, 2004 @09:46PM (#8404506)
    Well, as a matter of fact CUPS is one of the few projects which actually put some effort into making a GUI. It's not that it would have taken significantly more skills/code/time to make a much better GUI. After all, all the auto-detect code is there. It's just that the programmer didn't think too hard about the interface, and -- most problematically -- didn't think with the user in mind. It's not like it would have taken more than 2 extra minutes of programmer time to put in short explanations of what each option does. That's what ESR is really getting at.
  • by Zcipher (756241) on Thursday February 26, 2004 @09:46PM (#8404508)

    I notice that most of the comments thus far seem to be along the lines of "We don't need to improve the interface, the users need to get better because they're too dumb to use it right, and they should just learn cause then they'll realize how much better it is!"

    This is a common mistake made by programmers. The problem is that not that users are actually all that stupid. The problem is that we tend to think of things in terms of how they're doing something, whereas users want to think of them in terms of what they're doing. For example, I want to set up DHCP to distribute IPs to my OSX box so I can use SMB to pull MP3s off my XP box. This is not the way a user thinks; the average user wants to hook his Compaq to his Mac so he can move around his music. He doesn't want to know what any of those acronyms stand for. He just wants to accomplish a simple task.

    Bottom line: the best way to write a good interface is not to think in terms of "what is my software doing" but rather in terms of "what is my user doing." Like my human interface design professor used to say, if people can't use your software, it's not because they're stupid, it's because you designed it poorly. Users prefer usable software to powerful software, when given the choice.

    Another point to consider is that, in the eyes of the Managers of potential corporate users of your system, any time employees spent learning all the details of your software is time taken away from getting actual work done. Not to mention that sloppy interfaces that haven't been properly checked often actually COST most companies money, since their employees actually often take longer than it would have otherwise. Good interface design is not a luxury, it is a mandate.

  • Re:Flame??? (Score:3, Insightful)

    by Wylfing (144940) <brian@wyMOSCOWlfing.net minus city> on Thursday February 26, 2004 @09:46PM (#8404509) Homepage Journal
    I still can't get my Linux box to print on a printer (through Samba).

    Yeah this happens sometimes, especially with distros like Debian or Gentoo where you often have to "hand roll" solutions. (Aside: I think setting up a printer, network or otherwise, in Mandrake is about 50% easier than in Windows.)

    However, it is utterly wrong to blame the project developers. They are doing their best to make these things work despite the fact that hardware vendors put up obstacles in their way. In MS-land, the hardware vendor does all the heavy lifting -- all the driver writing and all the admin work (via the installer) on the Windows box to make it click. And even then it sometimes doesn't work! In Linux, there is neither [direct] driver help nor admin help. So the fact that you can ever get a printer working under Linux is a miracle of reverse engineering and hard work from sources like the CUPS project.

    Also note that hardware successes under Windows are not due to Microsoft. It's due to serious vendor effort to make their products easy to use with Windows. If they put the same effort toward making their hardware easy to use with Linux, this wouldn't be a topic for discussion.

  • by ArmorFiend (151674) on Thursday February 26, 2004 @09:48PM (#8404515) Homepage Journal
    I think its worse than ESR makes it out to be. CUPS is worse than useless. It looks like a printing system, but it is (in my experience) inscrutable and very, very unreliable.

    I just threw away a printer, which in its lifetime probably printed 3x more postscript-as-text than actual rendered output, because CUPS is unreliable: try to print, get postscript gibberish, reboot, it keeps on printing gibberish, turn off printer, shut down cupsd, reboot, turn on printer, repeat 3ish times, and I'd occassionally get lucky and it would print non-gibberish for me. I expect that without this added wear, the printer would still work fine.

    You might think I should consult the CUPS FAQ, but the CUPS FAQ [linuxprinting.org] is itself useless, doesn't answer any questions except "where to read cryptic documentation about printer internals" that you just don't give a shit about.

    CUPS should be renamed CUTS: Common Unix Timewasting System.
  • by _Hellfire_ (170113) on Thursday February 26, 2004 @09:48PM (#8404517) Homepage
    I generally take ESR's rantings with a pinch of salt. I understand where he is coming from but I think sometimes he has a tendency to go over the top. However in this piece he is right on.

    I am a geek. Not only do I know a shitload about computers I actually work in the industry as a field troubleshooter technician. I have to say though, that although I use Linux on a daily basis on my work PC as my main OS, it still throws me for a loop sometimes when I go through what ESR went through with whatever piece of technologically advanced, functional but ultimately borked UI software I happen to be trying to set up at the time.

    He is right - this IS keeping Microsoft in business. Case in point - I get customers constantly asking me if there is a better alternative to Windows. There is of course, but I would NEVER recommend Linux to an end user who just needs to get on with the business of running a business simply because of the lack of intuitive UI's for Linux apps.

    There are great, shining examples - K3B, Firefox, Thunderbird, Mozilla, Openoffice, Evolution, KDE control centre etc. Let these apps serve as an example to UI designers for other projects.

    It's one thing to have all the functionality in the world, but that amounts to sweet FA in the eyes of a gumby user that would rather give money to Microsoft than learn what /etc/rc0.d is for.
  • by adamruck (638131) on Thursday February 26, 2004 @09:51PM (#8404542)
    Seriously.

    Try having your grandma setting up a printer with gnome or kde. Better yet try a usb printer.

    Send grandma a small video and watch her try and figure out how to play it on linux.

    Or best yet watch grandma try and use xcdroast.

    Try reading through man pages for stuff like ssh keygen, or X, or any other sort of technical software. Is it really that hard to give human readable description of how to use the shit?

    this is what will do, here is an example, here is another example, dont try and use it to do instead should be used.

    instead of stuff like this

    -e Convert OpenSSH to IETF SECSH key file

    ?????

    seriously documentation is so damn important, and so easy to make. If you write some software, you know what you wrote, so just write a paragraph for each feature, it only takes like 5 minuets and then your software might acually get used.

    The same principals go for graphical interface as well as command line interface. Think of a gui as just a extention of cli. This doesn't apply for all software, obviously things like openoffice dont have a cli. But these apps are pretty rare, and the few that exist work pretty good, browsers and office and stuff.

    Bottom line, this guy is right. We need better quality apps and configuration utilities for linux.

    Adam
  • by Bull999999 (652264) on Thursday February 26, 2004 @09:53PM (#8404557) Journal
    Just ask all the tech support folks who got laid off because they were replaced by cheaper Indian labor? Or why are mom and pop computer shops getting beat by gaints such as Dell? And if you read articles about such and such using open source software, they alway mention TOC and ROI not "Free as in freedom".
  • by fitten (521191) on Thursday February 26, 2004 @09:53PM (#8404558)
    Until you and those like you lose the elitist attitude and realize that the massivly *vast* majority of computer users do not, do not want to, will not, and shouldn't be required to learn about a computer to that depth, you will forever relegate Linux to being a niche and those who use it will continue to have such a bad perceived image.

    People like this hurt the Linux/OSS movement more than they help it.
  • Re:Dream system (Score:2, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @09:53PM (#8404562)
    In all honesty -- this is not a troll.

    What do you feel that Linux provides that Mac OSX does not? OSX is "stable" and "etc."
  • by OzRoy (602691) on Thursday February 26, 2004 @09:54PM (#8404568)
    This is what annoys me about some linux people.

    If a person using linux (first time user or not) is trying to do something, but has problems and gets unbelievably frustrated at the stupidity of what should be a trivial matter, finally snaps, and has a rant, then the automatic response is "Well why don't you do something to fix it?"

    Why should he? He is the user. The software is supposed to be FOR THE USER. It's is not the users responsibility to fix the software. He probably has better things to do with his time. He almost certianly as better things to do then spend hours trying to do something as minor as set up a printer.

    This guy got frustrated and decided to vent his annoyance. So what! It doesn't make what he said any less relevant. It doesn't mean that there isn't a SERIOUS problem with the usability of some basic core features of linux. It does not mean we should all just dismiss him as a raving loony.

    We should all wake up to ourselves and realise that linux and open source is not the holy grail that we make it out to be. It's cracked and flawed, and in some places in need of some serious renovation.
  • by Anonymous Coward on Thursday February 26, 2004 @09:54PM (#8404571)
    Maybe not, but Aunt Tillie could envision only having to buy one printer.

    Aunt Tillie wants it to already know that if she has one printer and two computers, that the printer should serve both.

    Every button push and/or mouse movement that is required is already 'more work than it should be.'

    Aunt Tillie may have unrealistic expectations; but she doesn't know that!

  • by Sycraft-fu (314770) on Thursday February 26, 2004 @09:57PM (#8404592)
    But programs like CUPS are WAY more difficult than a car.

    See, with computers and cars there is both generalized and specialized knowledge. You need a deceant bit of generalized knowledge to operate both.

    In the case of the car you need to know what all the standard wheels, pedals, levels and the like do. You need to know traffic law, you need to understand how vehicles handle, you need to know to have it services regularly, etc. Basically, all the stuff you learn in traffic school and need to pass your test. Computers are similar in respect to general knowledge. You need to understand how UIs work, you need to know not to open random attachments, you need to know to patch your system, etc.

    The problem is that many programs, like CUPS, and many Linux people, think that people should have lots of SPECIFIC and indepth knowledge. That's not good design. Just as I shouldn't need to be able to rebuild my engine to drive a car I shouldn't need to have indepth knowledge of the workings of a computer to operate it.

    Some people choose to gain great knowledge, and that's fine. They are the technicians or mechanics or engineers or programmers that fix/maintain/design/build/etc a car or computer. However the average user should be able to get along with their general knowledge and for the most part never be required to become more of an expert.

    As he alludes to, the Windows and Mac worlds are much better at that. Far from perfect, I can list hundreds of problematic Mac and Windows programs. However, on a whole, they do a much better job of helping the user out. They pick acceptable defaults, they walk you through choices, they have intelligent interfaces, etc.

    This is what is needed. Espically since many programs themselves require learning. Like an audio editor. You need to learn how to operate it properly to do what you want with audio or a game where you need to learn the rules and controls to play. Well this is made much more difficult, often to the point normal people will give up, if while you are trying to do that you are also being required to learn new things about your computer.

    Apps really need to do their best to just walk a user through setup and install. Let them get going and using and learning the app, not getting stuck on just trying to get the damn thing to work right in the first place. Geeks can hack it, most non-techie people can't.
  • by mrbuttboy (460308) on Thursday February 26, 2004 @09:57PM (#8404593)
    Is that where OSS is suppose to be?

    The point here is that while a great deal of open source software is as good, if not better, then what you can get commercially it tends to not to be easy to use. Things have always been this way and likely will until there is a shift within OSS.

    If you have been using computers since you were 6, when you see a dialog saying, "Port?:" you know what it wants after that point. Most users are going to have a vague clue what is meant by port. Move something somewhere? A kind of wine?

    Large corps pay many people to create pretty graphics, write pretty books and make sure that ease of use is present. OSS has a large pool of programmers but a much smaller pool of OSS graphic artists and technical writers. These (and others) are the people who need to be brought into the OSS field.

    It is a double bind: if you love computers and want to give back you are more likely be able to give in one area and not others. The real challenge is to help other people outside of computers to give back, people that may have few computer skills. In fact, it seems to me that most OSS is not setup to receive help from people with little computer understanding.

    If OSS is not easy to use it will always be a third choice of three. I don't think that is what most people who contribute want.
  • JWZ and usability (Score:2, Insightful)

    by Alethes (533985) on Thursday February 26, 2004 @09:58PM (#8404594)
    I always find it amusing that the man who wrote XScreensaver complains about usability.
  • by dcam (615646) <david&uberconcept,com> on Thursday February 26, 2004 @10:00PM (#8404612) Homepage
    I don't get /.

    We get an article a week pointing out how Linux is ready for the desktop with lots of Yay comments. Then we get this rant (from a relativaly respected open source guy) pointing out that Linux isn't ready for the desktop and it gets called troll.

    He is pointing out a concern about Open source, namely that it is oriented towards people who are happy hacking around in rc files. Possibly it might be a good idea to take what he has to say on board.
  • by Anonymous Coward on Thursday February 26, 2004 @10:01PM (#8404618)
    why are you wrong? I don't care. What you're doing is displaying, yet again, the I'm-so-cool and lusers-are-so-dumb attitude that sentences Linux to be a server OS run by savants for evermore. Denial is exactly what it is.

    Further giveaway - head-up-ass tone, pompous debating society language, dan@mathjunkies.com email address! Mathjunkies for fucks sake! I couldn't wish for a better example of a smug little geek who is so far gone that he takes pride in "alternative" and "clever" existence.

    The really sad part? If Linux was easy to use and replaced windows, taking 80% of market share, you'd probably start using windows - because Linux wouldn't be cool enough any more.
  • by isdnip (49656) on Thursday February 26, 2004 @10:01PM (#8404621)
    Good point -- Mandrake ADDS VALUE via its own proprietary printer-installation routine. Maybe it's 99% CUPS, maybe it's 99% their own, but at least I got it to work. Fedora Core sounds like it's running raw CUPS. I couldn't imagine Red Hat going out of their way to make it that bad!

    And Kudos to ESR on this piece in general. CUPS is just one example of the abuse of GUIs across Linux. The X Windows configuration tools in some distros are even worse. When you use a GUI that sets some value or other, the first rule is that the value displayed should be the CURRENT value. After all, it's a tool for seeing, as well as setting. But no, in some Linux tools, the GUI always comes up with some weird default value! It ignores what's there and wants ohhh so badly to overwrite it with something else. What an awful thing to do!

    That's PRECISELY the kind of UI polishing that Linux needs. Not a few more sci-fi desktop themes.
  • by circusnews (618726) <steven@steven s a n t o s .com> on Thursday February 26, 2004 @10:04PM (#8404642) Homepage
    What I don't understand is why this situation is not corrected. What I mean is, why have we not yet moved to a programing methodology that deals with this right from the start?

    Why don't we have a programing method that encourages a predicable UI?

    Why isn't it easier for programmers to default to having all configuration done through a single, predictable configuration interface?

    Why does this subject come up so often on /.?

  • by mrbcs (737902) on Thursday February 26, 2004 @10:05PM (#8404648)
    Xandros.

    Costs money, they have people working on it that they pay. It works. I sell it, because it works.

    I've tried a lot of distros and every one was a problem somewhere. Network wouldn't, printers didn't etc. very annoying, and I'm not even gonna mention xfree86. I'm glad Red Hat got out of the home user game because, honestly, they were shitty at it.

    Ya all the geeks can scream and jump up & down, but until it works and/or looks like windows.. it ain't gonna fly with home users and will be forever destined to be a fringe os. Yes it can and does work perfectly in some distributions, but home users have enough trouble with windoesn't. They can't and won't guess about the next step configuring anything.

    Glad to see other people with decent tech background are having as much trouble as I used to have with this os. I don't feel nearly as incompetant as I did an hour ago.

  • Thanks Eric (Score:1, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @10:05PM (#8404650)
    For the observations on GUI design even if written with an edge.

    Now I'm sure you could make it up to the CUPS programs by SUBMITTING A PATCH!!!!

    Above all else Eric's rant shows what might be really wrong with the OS community. The one's who apparently know best how to do things just bitch at the ones who are just trying to do their best.

    In days past, had anyone written such a screed about problems in Eric's pet project's he would either have ignored them or told them to submit a patch to fix it.

    So Eric, thanks again for the observations, I'm sure the CUPS programmers will be happy to accept that patch your working on.
  • Submit a patch (Score:4, Insightful)

    by Sabalon (1684) on Thursday February 26, 2004 @10:05PM (#8404651)
    The biggest problem I've seen with open source programs is that when you do get end-users to test things out, be it a UI issue, or some other functional issue, is giving feedback.

    Most of the times it seems that they don't want to look into issues or fix items. The advice is always "what does the debug output say?" or "submit a patch for it". Neither is something that the end user, who we are trying to convice that Linux is so much better than windows, is going to be able to do.
  • by OliDrew (551674) on Thursday February 26, 2004 @10:06PM (#8404659)
    Ok, and how the "dumb" user know which fork is the one to use ? HE DOESNT CARE! He wants to setup his printer ONE time, not 2. Not even 3 times when he founds out his first try went smoother than the third.
  • by Anonymous Coward on Thursday February 26, 2004 @10:06PM (#8404661)
    Listen up everybody out there in Geek Land! User interface design is hard . Read Landauer's The Trouble With Computers [mit.edu].
    I like "free as in freedom" software, and I fear the society that will be created by proprietary stuff like Windows, but we won't get the freedom we want if we can't deliver the benefits of freedom to the average user. If you can't be bothered to read the book, remember this: test, test and re-test. For really important stuff, borrow the most clueless of your relatives and friends, and have them try to use it while you are watching (keep your damn mouth shut, though). If you do this, you will create easy-to-use software, and if you believe in the political value of F/LOSS, you need to take this seriously.
  • by querencia (625880) on Thursday February 26, 2004 @10:07PM (#8404666)
    Every good work of software starts by scratching a developer's personal itch.


    The developers of CUPS have scratched their itch. I personally have no desire to scratch Aunt Tillie's itch. She isn't paying me. Neither is Raymond.

    My printer works. If Aunt Tillie wants hers to work, she can pay me to set it up for her, or she can pay me to write software that makes it easier.

    Why the hell is it CUPS's (or anyone else's) responsiblity to do this? If IBM and Red Hat are going to profit from easy printer sharing, let them write good config utilities. The CUPS team got the reward they were after. Their printers work.

    When someone gives you a gift, try not to kick them in the nuts and ask for more. They have every right to stop giving.
  • by qtp (461286) on Thursday February 26, 2004 @10:07PM (#8404669) Journal
    "Joe Blow" could have written the same article and it would have been just as pertinent, and would have deserved being listed on the front page.

    The point is that people know his name, they use the software he wrote, they read the crap that he spews, and he's more often right than wrong.

    Front page because we'll read it, we'll coment on it, and we'll debate whether or not he has sufficient celebrity status (which brings us right back to your point).

    It's not that he's profound, and it's not that he's well spoken (he's definately not). It's not that he's a well known blogger, as most probably don't consider his claim to be due to his blog. He's been around since before you could reach the keyboard, and he's written utilities that were once among the most widely installed on unix boxes. Even those of us who may think he's somewhat of an ass still like being notified when he's got something poignant to say.

    He might be considered front page material because he's not really known as a blogger, but because even those of us who think he's an ass probably are using or have used software that he wrote or maintained, or because we begrudgingly acknowledge that he often has something worthwhile to say.

  • by PaulMaximne (746608) <paulNO@SPAMblueiris.us> on Thursday February 26, 2004 @10:08PM (#8404676) Homepage
    And, suprise surprise, Mac OS X uses CUPS under the cover for printing. All you have to do is select "printer sharing" on the sharing preference pane and the printer shows up on other people's machines. You may not like Macs, I really don't care if you do or not. But there's a lesson here.
  • by smchris (464899) on Thursday February 26, 2004 @10:10PM (#8404688)
    3 Nobody likes documentation... except 4 n00bs

    For the last couple years, I've been citing that attitude as the #1 reason linux isn't growing like it should as a desktop. Coming from an OS/2 culture in the last half of the '90s where people were supportive and at least one survey found a decidely middle-aged demographic, the "only newbies need documentation" attitude strikes me as juvenile, unproductive, and, unfortunately, really common in linux culture. Look:

    Is price the problem? Duh
    Hardware compatibility? Naw
    Installation difficulty? The major distros are as easy as Windows now.

    No, it's use and maintenance. Where does a person learn how to use and maintain something if not from the documentation? Believe it or not, some people don't enjoy doing a half-hour Google search among various sites each time they need to have this-or-that setup explained competently and professionally.

    Those are my thoughts.

  • by TheWanderingHermit (513872) on Thursday February 26, 2004 @10:12PM (#8404700)
    That's an "ad hominem" attack, which is a known fallacy. In other words, attacking the man does not make the argument any less valid. You may disagree with him, you may think neo-paganism is wrong (and, while your at it, could you please prove it?), and dislike, disagree, or consider any of his other beliefs false, mislead, or just plain crazy, but thta does not effect, one way or another, the validity of his argument.

    Even a broken clock is right twice a day and even the most outrageous politician speaks the truth once in a while. Even if ESR is proven insane, that does not mean his comment is invalid or valid. The statement has to stand or fall on its own, not on your views of the person making the statement.

    (And a moderator was lacking in intelligence enough to not realize this and mark the post informative?)
  • by pHDNgell (410691) on Thursday February 26, 2004 @10:14PM (#8404707)
    What I don't understand is why this situation is not corrected. What I mean is, why have we not yet moved to a programing methodology that deals with this right from the start?

    Why don't we have a programing method that encourages a predicable UI?

    Why isn't it easier for programmers to default to having all configuration done through a single, predictable configuration interface?


    You're describing NeXTSTEP. When you make UIs on OS X, there are guidelines to get the UI working correctly.

    Really, that's all that's needed. A standard. Guidelines. Oh, and everyone to use the NeXT frameworks (or at least one something).
  • by An Onerous Coward (222037) on Thursday February 26, 2004 @10:18PM (#8404733) Homepage
    It takes all of two sentences to explain networked printing to Aunt Tillie. "You hook the printer up to this computer over here, and you can print to it from this computer over there. Just be sure and shoo the cat off the printer before you hit 'print.'" If you'll notice, the second sentence is a bit gratuitous.

    ESR never claimed to be an ignorant newbie. In fact, he's pretty computer literate, and this was the only thing that allowed him to beat it into submission. His point is correct: if Linux is going to make inroads on the desktop, the learning curve has to be flattened enormously.
  • by yerfatma (666741) on Thursday February 26, 2004 @10:18PM (#8404738) Homepage
    That's the problem. I can't stand the UI requirements we have to meet at work, but I try to accept them anyway, because I know I'm not the end user and my understanding of how a tool I'm building is "supposed to work" has nothing to do with how it will be used. It's like QA'ing an app you've built. You can't do it, at least not well, because it's so natural to stay inside the accept ranges of what you've built.

    I don't know the answer. The only reason I give into UI requirements at work is because I have to to get paid. That incentive isn't there for open source projects, so there is the danger projects will fork off. I know some comments above don't see that as a danger at all, but it is a waste of resources if two teams are building the exact same things instead of moving forward on other pieces.

  • Re:In related new (Score:4, Insightful)

    by mrroach (164090) on Thursday February 26, 2004 @10:24PM (#8404787)
    I submit that it *would* confuse an inexperienced user. I personally found it easier to sit down and read the man page for fetchmail. This is not because I love me a conf file, but becuase I tried fetchmailconf, and was confused by it.

    Take a look again and tell me why

    #1 There are ok/quit/save buttons at the top and what they apply to,
  • by Animats (122034) on Thursday February 26, 2004 @10:25PM (#8404788) Homepage
    Much to my surprise, ESR is exactly right, as others have pointed out. Here's how to fix it.

    First, if you have't read the original Macintosh user interface guide, do so. There are some strict rules, which today even Apple forgets, but which all competent programmers must know.

    One of the basic rules in that manual is this:

    • You should never have to tell the computer something it already knows.
    What this means, in terms a programmer can understand, is this:
    • If a program needs some piece of information, and there's some way the program can find it out without asking the user, the program MUST find it out by itself. Even if it's more work for the programmer. Asking the user is not an option. Period. If you don't like that, you shouldn't be programming for end users, and somebody in Bangalore will be taking your job next month. Please clean out your cubicle when you leave.
    • If a program needs some piece of information from the user which it cannot find out by itself, but which must be consistent with something the computer already knows, the system must present a set of valid options to the user. Providing a blank which the user must fill in correctly is grounds for dismissal.
    • If the system is in an inconsistent state, it must detect that it is in an inconsistent state. It's not the user's job to validate the internal consistency of the system's tables.

    From a design perspective, it's useful to divide information the system knows into "definitions", "references", and "caches". "This printer is called FOO" is a definition. "BAR normally prints on FOO" is a reference. "FOO is a PostScript printer" on BAR is a cache item. Caches must be regeneratable. References must be checkable. Definitions should be protected against inadvertent change.

    One of the big problems of the Windows registry is that it mixes all three types of information. This is also true of the contents of "/etc" in the UNIX world.

    Once you start thinking of the problem in these terms, it's much clearer what to do. For the printer case, it's obvious that the system should find the printers in the neighborhood by itself, and should probe them to find out what they are and whether they will let you use them. It's also clear that if something changes (a printer is replaced, for example), the system must notice this and do something reasonable.

    Once all the heavy machinery for that is in place, the user interface for "configuring a printer" should go away entirely. The ordinary print dialog can do the work. It might need a "search for more printers" button. But there's no real reason from a user perspective to have to configure printers at all.

    We will now hear from the "just edit the /etc/xxx file with 'vi' and send a SIGHUP signal to the daemon" people. You guys are dinosaurs. Give it up.

  • Lost me... (Score:4, Insightful)

    by Scratch-O-Matic (245992) on Thursday February 26, 2004 @10:25PM (#8404791)
    I hate the CUPS UI also, but the writer lost me here:

    If the designers were half-smart about UI issues (like, say, Windows programers) they'd probe the local network neighborhood and omit the impossible entries.

    This is exactly what I would expect from Windows, and what I don't want in Linux. Because eventually a) something will be greyed out when I know it shouldn't be, or b) something will be greyed out when I think it shouldn't be, or c) I know something SHOULD be impossible, but I want to select it anyway for troubleshooting or experimentation. Who's to say I don't want to configure my print queue before I go down the elevator to bring the printer host online?
  • Re:In related news (Score:5, Insightful)

    by 110010001000 (697113) on Thursday February 26, 2004 @10:26PM (#8404796) Homepage Journal
    What are you talking about? Each one of those dialogs are HORRENDOUS!!! For instance, look at this one:
    http://www.linuxjournal.com/modules/NS-artic les/HO WTO/6454f1.png

    "Configurator novice Controls" with a "Save" "Help" "Quit" button underneath? What the HELL does that mean? Why isn't novice capitalized? What am I saving by clicking the Save button? A configurator novice controls? Why arent the buttons at the bottom like every other dialog box in the planet?

    I won't even comment on this one:
    http://www.linuxjournal.com/modules/NS-artic les/HO WTO/6454f3.png
  • Re:foomatic (Score:5, Insightful)

    by Smidge204 (605297) on Thursday February 26, 2004 @10:26PM (#8404801) Journal
    Okay, so let's play a game. You tell me what you have to do to install a printer on any flavor of Linux you want, and I'll tell you what you need to do to install the same printer on WinXP.

    Let's use a HP Photosmartt 7350 (semi-random printer make and model I happen to be familiar with, since I just set one up for my mother. It's also USB, which is getting more and more common nowadays)

    I'll go first:

    1) Plug in printer power
    2) Connect printer to computer
    3) Turn printer on
    4) Wait about 30 seconds for Windows to detect the printer
    5) Click "Okay" a few times (about 4 times I think...)

    Sure, you won't have the super-duper software (which you'ld have to install seperately), but you can hit "print" and it'll print. For fairness I'll exclude the software because there's no Linux version anyway.

    Okay, your turn!
    =Smidge=
  • by Anonymous Coward on Thursday February 26, 2004 @10:26PM (#8404804)
    That's an interesting story, because I had the *exact* opposite experience.

    I was a kid, and I wanted a computer. My friends and my school had Apple II's and I wanted one. My parents and I went to the computer store just to see what was available.

    Wow! So much stuff. My previous experience was only the Apple II's, and Commodore 64's I saw in the sears catalog (but nobody had one of those).

    The Mac had just come out (1984) and there it was in the middle of the store, on a lit pedestal. It looked really.. different. It looked small, and the screen was terrible (not like the color screens I saw when friends hooked their Apple II up to the TV). Pass.

    On one side of the store, Apple II's. Been there, done that. Suddenly my dream of owning an Apple II seemed less interesting, there was other stuff to discover.

    On the other side, big noisy boxes with green screens that looked just a little too small for the gigantic box they were sitting on. I saw those in a business once, those must be the best computers money can buy! Headed over and couldn't figure the damn things out. The guy showed me but it was just F3, F5, F123. They didn't make any sounds, they didn't have any games, and the screens were GREEN.

    At this moment the Mac had some kind of game or tutorial running .. it was playing sounds, there was animation on the screen, a grown-up was interacting with it.. I just stared in amazement.. this computer was *alive*!!! I mean, it was interactive in a way the other one wasn't. I waited until it was free and instantly figured out how it worked.. happy mac, boot, mouse up and down, click, double click. I must've been sitting there for hours, listening to the sounds and watching smooth flicker-free animation.

    You get the point.

    The Mac made an impression on me. It still does today. It's still amazing to see a machine that feels like it *wants* me to use it. That somebody put some thought into every icon, every error message, even the handle on the top.
  • by lawrencekhoo (108310) on Thursday February 26, 2004 @10:29PM (#8404821) Homepage
    The following needs to happen before any Linux distribution can be accepted by the masses.

    I can sit down with 3 networked computers with printers attached. Two with windows pre-installed and sharing turned on, and another fresh out of the box. Without having to read through a HOWTO file on the internet, I should be able to:

    1. Install Linux on the new machine.

    2. Install Linux on one of the old windows machines, while preserving the data on it.

    3. Get the network to work and see shared hard drives on any machine from any other machine.

    4. Read and Write to shared hard drives, and set up passwords and security if I want to.

    5. Be able to print to any printer from any machine.

    6. Access the internet though dialup and DSL.

    I tried various Linux distributions over the last 5 years, and sadly, none of them come close to meeting all six requirements. These are pretty basic requirements that users will regularly have. If Xandros or Lindows or someone can set up a lab and work on it until their distribuition can handle them, they should dominate the market.

  • by mitherial (554418) on Thursday February 26, 2004 @10:30PM (#8404829) Homepage
    And it's what's keeping Microsoft in business -- because by Goddess, they may write crappy insecure overpriced shoddy software, but on this one issue their half-assed semi-competent best is an order of magnitude better than we usually manage.' What this quote (and ESR's overall attitude) fail to indicate, is that, for 95% of users ease of use combined with the appropriate functionality are 100% of what they are concerned with. Why should Joe-computer user get over the considerable learning curve of vi or emacs, when Wordpad/Office has more functionality than they will ever use, and an elegant intuitive interface? For Joseph T. Schmo's purposes WinOffice *is* a better product.
  • by dcam (615646) <david&uberconcept,com> on Thursday February 26, 2004 @10:32PM (#8404843) Homepage
    What if you've RTFMed, googled for answers two hours (finding three contradictory solutions) *before* you asked the question?
  • by MattTarr (93031) on Thursday February 26, 2004 @10:34PM (#8404848) Homepage
    seems to me that what the OSS community need is designer willing to work for free...

    m$ does not force the coders to build the interfaces.
  • by macshit (157376) <miles.gnu@org> on Thursday February 26, 2004 @10:34PM (#8404854) Homepage
    Hmmm, you seem fixated on the concept that (F)OSS is a "hobby." Do you feel threatened by it?

    It clearly isn't "just a hobby" for me -- my company pays me to work on it...
  • by Jerf (17166) on Thursday February 26, 2004 @10:38PM (#8404884) Journal
    We'll see how this goes, but in my open source project, I'm planning on instrumenting the program to allow the users to (voluntarily and anonymously, of course) report to the project server which preferences they are twiddling and which commands (i.e., menu commands) they are actually using.

    I'm hoping this will let me chop at the features and preferences and get away from "I'M A LOUD USER AND WHILE I'M THE ONLY ONE WHO TWIDDLES MY BAZZLES I'LL CRY IF IT'S REMOVED" by virtue of having hard numbers. (I made a Fruedian slip and typed "lout user", which works too.)

    (You shouldn't have bad spoofing problems until the project is much larger, by then I'm hoping to have a better gestalt understanding.)

    Feel free to snarf this idea, I'd love to see it more often.
  • by SmallFurryCreature (593017) on Thursday February 26, 2004 @10:38PM (#8404889) Journal
    Disclaimer: this is not about vegetarians I am just using it as an example. Nor is this a judgement merely an observation

    The ones who eat meat substitutes and those who don't. If you go into your local supermarket you will probabaly see veggie burgers trying to come as close to meat without being meat. I thought this was what vegetarians ate and had great admiration for being able to stomach that stuff. Turns out this is not the case for all of them. Some never borther with trying to create a non-meat hamburger and instead eat dishes made out of vegetables.

    The first group basically wants to eat hamburgers but without it being made out of meat. The others simply don't want to eat meat at all and can live without having hamburger like products.

    Some people seem to want to run windows but without it being Microsoft. Others just don't want anything to do with MS or similar at all and can live with it not being easy to use.

    Sadly these two groups often seem to get in each others way. I myself must really control myself to not call Eric Raymond a whining kid. Oops. Others will applaud him for saying what they are thinking. Point is neither of us is right. We just want different things out of our software.

    Problem is that most of the developers can't really be asked to cater for the first group. Why? Because to them it seems logical and easy. It reminds me of a dentist who can't understand why patients fear him more then constant tootache. Choose between cups and lpd? I find it hard to imagine a single cups developer not being able to give the correct answer any time of the day. So they think it is obvious for everyone. People that easily adjust to the fact that others do not know what they know are called teachers. Good teachers. How many have you met in your life?

    Basically you would need the interface and manuals co-designed by someone without a clue. These people are of course kinda hard to find for anyone who can't afford to hire them. Only companies like Red hat/Mandrake/Suse/IBM/HP will be able to spend the money that would be needed to truly make easy consitent configuration tools.

    The cups people can't really do this. To them the subject matter is too well known to realize where the users hand needs to be held. At the same time at least half their users will be wanting them to concentrate on improving the core program and not to waste time fannying about with useless gui wich they never use anyway.

    I think it is called being caught between a rock and a hard place. Now if only somone would start an opensource configuration project. But that is the problem isn't it. Those who could build that don't need it and those who need it can't build it.

    This dillema is usually solved by the exchange of money.

  • by Anonymous Coward on Thursday February 26, 2004 @10:38PM (#8404894)
    You know, I get really tired of these broad generalizations about Windows nowadays without providing a single shred of proof to back it up? Even ESR did it in the article (the part about "maybe it blue-screened a lot but....").


    Have any of you actually used Windows lately? I don't see any of this. I've had more RH9 and FBSD 4 & 5 boxes lock up on me lately than I've had XP or 2000 boxes lock up. Xzzy, can you provide an example of something that an end user would use (not any of their server offerings) that has more than 15 controls on the form? Why do you think they pioneered the use of WIZARDS! It's to provide a logical progression to a final software configuration state, rather than most OSS software which most of the time requires you to edit a config file (the equivalent of an essay question on an exam). Sorry, I don't feel like being tested on my reading comprehension today. I just want to get my box playing DVD's.


    Really, it's the interface stupid.

  • Re:In related news (Score:4, Insightful)

    by ajagci (737734) on Thursday February 26, 2004 @10:39PM (#8404896)
    Well, nobody is stopping JWZ from switching to Windows or Macintosh. I think he'll find out that the grass is not greener.

    On Windows, you get media players battling it out for control of your media. You get video playback that fails for no apparent reason. Something as simple as playing a hard disk mirror of a DVD can be nearly impossible (unless you install the same OSS s/w you'd run on Linux as well).

    And on Macintosh, Apple likes to limit what you can and cannot do with video. Want to load clips into iMovie and assemble them? Sorry, no can do--pay a lot more $$$ to get the professional stuff. And "professional" means lots of messy, complex buttons and features that are harder to learn than the OSS command line switches.

    It's simple: use what works best for you. Linux is popular because for many people, it simply works best. Windows is also popular because for many other people it works best. Those are depressing statements about the state of software.

    Rather than ranting, JWZ could try to improve things for a change: he clearly has sufficient technical expertise, but he seems to lack the will and the GUI design skills to actually do anything.
  • by Momomoto (118483) on Thursday February 26, 2004 @10:40PM (#8404903) Homepage
    You mean a bunch of
    volunteers didn't always think about the (l)users and created a bad UI? Wow, none of us knew that!


    This attitude is exactly what's keeping OSS from taking off. Referring to people who use the software as lusers is indicative of the disrespect that is shown towards people who use computers but don't know how to recompile their kernel or build their own device driver.

    This isn't high school any more, people. Time to grow up.

  • by Anonymous Coward on Thursday February 26, 2004 @10:43PM (#8404923)
    There's plenty of graphic designers and UI experts....

    mistake one in interface design is thinking its graphic design! Better looking buttons lead to user interface improvement with about the same frequencey that a new paintjob fixes your car's transmission.
  • by daviddennis (10926) <david@amazing.com> on Thursday February 26, 2004 @10:43PM (#8404924) Homepage
    Eric has some excellent points, but just to muddy the waters a bit, Windows often isn't any better.

    For example, I have to set up printing to JetDirect network printers at work under Windows, and it's horribly unintuitive.

    1 Run the printer setup wizard
    2 Say you're setting up a LOCAL printer, not a network printer
    3 Un-click "Detect automatically" and press Next
    4 Say you want to create a new port. Selecct TCP/IP port from the dropdown. A new TCP/IP port wizard pops up. Type in the IP address of your printer
    5 Select the printer make and model.

    It would probably be easier to set up CUPS on a JetDirect printer than Windows, based on the menus Eric cites. Too bad that wasn't what he had.

    D
  • Re:In related news (Score:3, Insightful)

    by ealar dlanvuli (523604) <froggie6@mchsi.com> on Thursday February 26, 2004 @10:44PM (#8404932) Homepage
    I hope that was sarcam.

    IMNSHO fetchmailconf should display the minimum information to almost everyone, and then have advanced buttons for the weird stuff.

    90% of all users are going to be fetching (auto-detected-protocol) email from a server using a username/password and stating that user 'something' there is user 'something else' here.

    I find .fetchmailrc much easier to use than fetchmailconf. That's not a good sign.
  • ESR is Right (Score:5, Insightful)

    by LMCBoy (185365) on Thursday February 26, 2004 @10:49PM (#8404962) Homepage Journal
    I've been using Linux as my main OS at both work and home for about 7 years.

    Here's a list of my recent hardware config experiences on my home machine, which dual-boots Gentoo and Windows XP:

    1. Canon Powershot A40 digital camera. WinXP detected and configured it in about 25 seconds. On Linux, it required two kernel recompiles, and searches through several sources of information (gphoto2 manual, message boards, Google) before I finally got the command-line interface to gphoto2 to work. Never got any GUI front-end working.

    2. Creative Webcam Pro NX. WinXP detected and configured it in about 25 seconds. Despite hours spent banging my head on the problem, it has yet to function under Linux.

    3. Nvidia GeForce4 Ti4200. WinXP detected and configured it in about 25 seconds. Linux: kernel recompile, install additional Xfree86 module, tweak, retweak, and re-retweak /etc/X11/Xf86Config. All accompanied by extremely liberal doses of docu searching online, of course.

    I love Linux like my brother, but seriously, hardware config on it is a huge PITFA, and provides the single largest contrast to the Windows world.

    I long for the day when I get a new gizmo, plug it into my box, and it "just works". Man, that would be so cool.
  • by texspeed (726961) on Thursday February 26, 2004 @10:52PM (#8404983)
    ESR's rant reminds me of an early assignment in my first professional job (principally hardware design but I generally found many of the software bugs for the programmers I was assigned). This particular assignment involved writing technical documentation in the form of a user guide for another project. Don't laugh - companies actually used to do this kind of training.

    Anyway, the acid test for any documentation was to take it to a secretary. Have the secretary read, understand and successfully use the project gear solely from reading the documentation.

    This proved to be an incredibly effective exercise for designers/builders/coders: a humbling lesson that something bright/shiny/cool you've created is virtually worthless if no one but you can actually use it. For many in the OSS commuity, this seems a lesson not yet learned. There is progress - but I often find myself thinking thoughts not so far from ESR's when I'm trying to configure this or that on one or another Linux box.
  • by teamhasnoi (554944) <(teamhasnoi) (at) (yahoo.com)> on Thursday February 26, 2004 @10:54PM (#8404990) Homepage Journal
    There are lots of people out there who can design an attractive interface, and lots of people who can design a informative one. There are also people out there who can't do either.

    Why isn't the OSS community looking at those with proven interfaces? Apple, of course comes right to mind, as well as BeOS. The thing is, programmers could have all the graphic designers working on their projects that they needed - IF the graphic designers had a way of creating a GUI without having to learn some new esoteric scripting language!

    Do I (as a graphic artist and layout guy) expect a programmer to:

    1) Come up with a fantastic, beautiful, informative interface to their software?
    2) Spend a year on the GIMP or Photoshop or Illustrator to learn how to make one?
    3) Understand that the super-cool lens-flare skull with glowing eyes might be a cool T-shirt for a poor high school metal band, and not for the interface to his software?

    No. Just like I'm not going to learn the ins and outs of C, ruby, python, perl, etc. I don't want to. I'm good at what I do. I'm good at what I know. I'm getting better at the things that interest me.

    Listen. Make it easy for artists to submit interfaces. A plugin. A skinner. A template. I don't know, IANAProgrammer. I do know that I was able to build an interface in 5 minutes with Apple's tools. Again, I know NOTHING about programming.

    The point I'm making is this: You (the programmer) make it possible (read: easy) for me (the artist) to make visual GUI changes, and I'll do it! For nothing! We like to do stuff like this! [216.239.39.104]. Make it possible and together we can get this linux thing on everyone's desktop.

    Continue to avoid/ignore/and deny this issue, and it'll be a short time to Longhorn, which from what I've seen, has the worst Winamp skinners already sewn up.

  • Re:Remember CML2? (Score:4, Insightful)

    by Stormie (708) on Thursday February 26, 2004 @11:00PM (#8405025) Homepage

    CML2 didn't go in because it added a mountain of new requirements to the kernel, not because "a lot of people don't like him all that much".

    Although, it is true that a lot of people don't like him all that much. With good reason.

  • by schuster (39361) <(ten.xoc) (ta) (retsuhcs.d)> on Thursday February 26, 2004 @11:05PM (#8405052)
    Not only are you right, but it goes beyond user interfaces. I'm a mac user but I install linux on my old pc every now and then to see what kind of progress you guys are making. My latest dist to evaluate is Ark Linux which is supposedly being built specifically for the desktop. Ark bundles KDE but not GNOME. One of the things that's really gotten to me is the process of choosing an application to open a file. What would be nice would be if I could just be presented with a list of installed programs that are able to open the file. There's far more to ease-of-use than GUI design. I suggest some of you read up on some HCI books.

    I do think that it's possible to get linux to the point where it can be ready for the non-technical user's desktop, but I also fear that making that happen will end up stripping out everthing that linux (and most of open source) stands for. (Forking, in particular just won't work.) If the community can get behind that idea though, linux on the desktop should be doable.
  • by Anonymous Coward on Thursday February 26, 2004 @11:07PM (#8405065)
    If it's true that the impetus for writing free software is to 'scratch an itch' then this would be why initialization is typically bad. YOU DO IT ONCE. Or at least seldom. An itch that happens once and goes away becomes a low priority item simply because the hackers who are familiar with the project aren't doing it very often.

    So these things do eventually get fixed because there are some classes of users out there who care about such things. For instance, the system integrators and distribution builders typically care about fixing these because they have a large number of people doing installs and they want to cut down on support costs associated with answering printer questions. Also, eventually some hacker will be annoyed enough by how bad a setup is to actually send in a bug report or a fix. Even some of the Aunt Tillys do it because they complain about how bad their linux experience was with specifity to someone who cares to fix it.

    Raymond's rant is fine in that whoever made the CUPs setup GUI that he is using will probably read it and fix the problem. Who knows, maybe some other projects will look at their installation for similar obvious problems. However he would be better off either sending real fixes to these people or sending them good bug reports rather than writing about it in his blog.
  • Usability is HARD! (Score:4, Insightful)

    by cgreuter (82182) on Thursday February 26, 2004 @11:07PM (#8405068)

    Designing a useable interface is difficult and the skills required for it are dramatically different from those needed to implement the back-end software. The CUPS wizard that ESR described was designed by programmers. Microsoft's equivalent was designed by usability experts.

    The thing is, most people think of software development as just writing code. It's not. Writing a useful program requires first understanding the problem and its possible solutions. It requires experts in the problem domain. That's why all of the really successful OSS projects have been things like programming languages, libraries, development tools and operating systems--those are all are things that programmers are already experts in.

    It's possible that a naive-user friendly Linux is beyond the abilities of the open-source community. Maybe there are no good usability experts willing to volunteer their time on some of these projects. In that case, somebody is going to have to pay for the work. So far, some of the distributions have already done just that and I keep having less trouble with Mandrake on each new release, so there's hope. Maybe in the future, different Linux distributions will be compatible but completely different in look and feel, each targeted toward a different market segment. That wouldn't be so bad.

    However, if the OSS community wants to solve this problem in an open-source way, we need to take it more seriously than just telling the programmers to smarten up. Linux is infrastructure, written by infrastructure experts. The configuration tools need to be designed by usuability experts and implemented separately from the things they are configuring.

    We need, in other words, a collection of UI geeks, a group of people who know how to deal with non-technical users and by programmers who will listen to them. This is the group that will write the control panels and configuration wizards and spend their time and energy making them better and more usable.

    The CUPS team (to pick one) isn't going to do that and shouldn't have to. Their job is to understand printing. Usability is a different problem entirely.

  • by SmallFurryCreature (593017) on Thursday February 26, 2004 @11:08PM (#8405074) Journal
    You see you found a fix for a problem. But saying that here is of no use. Put it were others looking for help can find it.

    You might even go so far as submit a patch for the documentation. Then everyone can find it easily.

    To many of the other people who had/have troubles with cups seem to think the cups development team owns them something and seem to think their time is worth more. Doesn't work like that. It only works if users put energy back by submitting good bug reports and patches/fixes.

  • by djmurdoch (306849) on Thursday February 26, 2004 @11:11PM (#8405088)
    seriously documentation is so damn important, and so easy to make. If you write some software, you know what you wrote, so just write a paragraph for each feature, it only takes like 5 minuets and then your software might acually get used.

    That's the sort of documentation you see in man pages, not the

    this is what will do, here is an example, here is another example, dont try and use it to do instead should be used.


    kind that is actually useful. Writing good documentation is hard. It is so easy to just give a list of a hundred things --- who wants to read that? You need to be a good writer to figure out what the user will want to know, and make it easy to find that.

    Writing good documentation is just as hard as other parts of UI design.
  • Re:In related new (Score:5, Insightful)

    by Mysteray (713473) on Thursday February 26, 2004 @11:11PM (#8405092) Homepage
    Yes, the fact that the dialogs don't follow an established STANDARD does hurt the usability, but I don't think that they are BAD.
    Yes, that is pretty much the definition of a bad GUI program.

    Some of the most usable UIs don't conform to an established standard. For example, there are shopping cart apps that can be used by people who've never used a computer before, yet they don't get in the way of the expert user much either. Some custom-designed kiosk systems serve their purposes very well without following any standard other than "touch me".

    Apple and Microsoft seem to throw out their own guidelines whenever they feel the need to "innovate". There's no hope of improving usability if no one's allowed to experiment.

    Check out Alan Cooper's books [cooper.com] if you want some solid reasoning behind this (better than I could give you). Edward Tufte [edwardtufte.com] is also a classic.

  • by randyest (589159) on Thursday February 26, 2004 @11:14PM (#8405104) Homepage
    Specifically, as the author eloquently states (IMHO):

    The thing to notice here is how far behind we have left Aunt Tillie. Rule 1 of writing software for nontechnical users is this: if they have to read documentation to use it you designed it wrong. The interface of the software should be all the documentation the user needs. You'd have lost the non-techie before the point in this troubleshooting sequence where a hacker like me even got fully engaged.

    It's embarassing, even to me personally, but he's dead right. Not just for Aunt Tillie, but for you and me (can I get a humming of the Star Spangled Banner in the background now please, thanks) -- no one should have to stop to read man pages or html docs unless they are doing the most esoteric things with an app. Obviousness for everyone! We all know the basics -f -r, blah blah "standard" command line interface, and it works because (1) things act like they should and (2) we are experienced enough to know that "should" in the software/tool world expects a little more from us intellectually-wise than "should" in the normal day-to-day buy some bread rent a movie world.

    The valid, relevant, even poignant point of this article, as I see it, is that it's not much work to go from where we are (which is comfy for us; a reasonable tradeoff 50/50 hassle for user/hassle for developer) to where we need to be to eat Microsoft's lunch (most hassle for developer, albeit 1-time hassle, and near-zero user hassle in most cases.)

    We blow this stuff off because we want to make it workable for those smart enough to deserve to enjoy it then quickly move on to the Next Great Thing that Needs to be Made Now. We Peter principle ourselves out of making a real headache for MS, which is something we (ostensibly?) want.

    Hmph. He said it well, and I for one am taking it to heart and thinking about how to make it better (with minimal effort, of course :) )
  • by westlake (615356) on Thursday February 26, 2004 @11:14PM (#8405111)
    I saw one too, a two page spread on the theme that "iLife is to your home is what MS Office is to your work." It reminded me that iTunes didn't become headline news until it was ported to Windows.
  • WRONG (a bit) (Score:3, Insightful)

    by SmallFurryCreature (593017) on Thursday February 26, 2004 @11:15PM (#8405114) Journal
    Question is how do we convince those who find gui development intrestting to work for free?

    True UI experts are not exactly short of work. Why work for free in a very complex job when you can be paid big bucks?

    UI development is a lot harder then "simply" coding a daemon. Mostly because the coder only has to know his subject matter. A good UI designer has to know his own subject matter, the subject matter of what he is designing a gui for AND every possible user of that gui.

    You can even wonder is this is something people do as a hobby. Cooks can cook for fun, coders can code for fun but marketing people don't marketeer for fun (do they?). Do UI designers design for fun?

    We got opensource lawyers, writers and coders. Now we need opensource UI designers. Gotta catch them all. (sorry)

  • by dj245 (732906) on Thursday February 26, 2004 @11:18PM (#8405136) Homepage
    I recently tried out MandrakeMove (Mandrake Linux's entry into bootable linux cds) and they've done a lot of work on this on their start menu. Its obvious what their intended uses and customerbase for mandrakemove is. They have a menu like "I want to..." with options like "play a DVD", "listen to a music cd", and other home entertainment-type things. Which is great for the person who just got it to take into Circuit City and run amok, not so great for people looking for typical start menu items, which are missing; like terminal, and system settings.
  • Don't use CUPS (Score:1, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @11:20PM (#8405146)
    Gooey interfaces are usually not well developed in the open source community because:

    1) programmers are usually more interested in writing the program than worrying about a nice looking GUI for it.
    2) there are often too many options for a fully functional GUI (see man printcap for example).

    CUPS is too complicated.

    Try this:

    1. Network the printer with an IP address

    2. Make a spool directory /var/spool/myprinter

    3. Create an /etc/printcap file:
    --------cut here---------------
    myprinter:\ :sh:\ :ml=0:\ :mx=0:\ :sd=/var/spool/myprinter:\ :rm=PutIPaddressHere:\ :rp=PutIPaddressHere:\
    --------cut here---------------

    4. Fire up lpd

    5. Use a utility like "mpage" format your doc and send it to the printer.
    mpage -Pprinter1 doc

  • by EvilTwinSkippy (112490) <yoda@eOPENBSDtoyoc.com minus bsd> on Thursday February 26, 2004 @11:23PM (#8405158) Homepage Journal
    Frankly, I have never been flamed for having a genuinely good question. Heck, even when I asked something boneheaded, the worst I would get would be a snide comment AND A LINK TO THE APPROPRIATE RESOURCE.

    Anyone looking to get into Linux need not be afraid. The Nick Burns' of the world do not bother to read newsgroups or participate in help-forums. And the trolls are pretty easy to spot.

  • by jp10558 (748604) on Thursday February 26, 2004 @11:23PM (#8405162)
    Well, the incentive is there for either people at Mandrake or Xandros or whoever actually wants to SELL Linux to people shying away from "XP Reloaded"(btw wtf? As bad as Matrix Reloaded?) or just getting away from whatever windows they have.

    It also makes sense for anyone who wants to dethrone Microsoft in the desktop market - and for some reason, there are a lot of people, even on slashdot, who want to do that with Linux. To do that, they need to make a widget that makes some sense to people other than the person who programmed it. Note, this does not mean dumbed down. Check out a Human Factors book or class sometime. It's amazing how badly designed many things throughtout our world are.
  • by Trifthen (40989) on Thursday February 26, 2004 @11:25PM (#8405173) Homepage
    Bzzzzzzt. Wrong. This guy was talking about setting up a network printer. You know, a printer you plug into a router that is *NOT HOOKED UP TO ANY COMPUTER*. He's right, you know. After you click "local printer", it gives you the option of specifying an IP address directly to the printer itself. What the fuck is that doing there? That should be in "Network Printers", except that Microsoft considers a network printer a printer configured locally on another computer accessible via SMB.

    So, I guess TCP/IP is not considered a network, according to Microsoft.
  • by Cthefuture (665326) on Thursday February 26, 2004 @11:26PM (#8405183)
    Hmmm, but Macs and PC's are so similar and any differences are mostly balanced. It ends up tipping towards the pragmatic consumer.

    Mac is easy to use, pretty, and expensive. PC is cheap and fast.

    Cheap and fast are fairly convincing by themselves, usability be damned.
  • by xod (37610) <lookslikeiwasrig ... m ['gma' in gap]> on Thursday February 26, 2004 @11:28PM (#8405196)
    Gumby users aren't the only ones to prefer Windows over Linux. I made the switch to Windows XP from Linux 3 months ago and I never looked back. After 5 years of running & admining various Linux distros (and 15 years of heavy computer usage before that), I figured I was able to take on Gentoo. After a full day of "fun", not only couldn't I boot into X, but I couldn't even mount my CD. Call me lame if you will (and I'm sure some of you will) but I'd rather spend my time developing software than googling howtos and editing .conf files to get my wifi card, printer, and laptop sleep to work right. My own work takes up enough of my attention; I want everything else to just work, and although previous versions of Windows bordered on unusable, XP has gotten it right, or right enough. (I keep it updated, run Firefox & Thunderbird, and cygwin for shell.)
  • by metamatic (202216) on Thursday February 26, 2004 @11:28PM (#8405199) Homepage Journal
    Don't forget sound. Linux sound is shitty beyond belief too.

    (I finally got ALSA working properly last week.)
  • Re:In related new (Score:3, Insightful)

    by ealar dlanvuli (523604) <froggie6@mchsi.com> on Thursday February 26, 2004 @11:29PM (#8405205) Homepage
    Yes, a self contained kiosk can use whatever UI suits the data. This isn't a self contained kiosk, it's a gui app using standard widgets in a nonstandard and rather confusing way.

    When designing a form using standard widgets, use them in the standard way. Think about it this way, would you purchase a car that had a rediciously nonstandard dashboard? I wouldn't.
  • by Anonymous Coward on Thursday February 26, 2004 @11:36PM (#8405240)
    The fact that his made that mistake in the past makes him all the more qualified to critique the subject now.
  • KDEPrint not CUPS (Score:4, Insightful)

    by Anonymous Coward on Thursday February 26, 2004 @11:41PM (#8405273)
    Your comment about the Mac using CUPS and yet being easy to configure for printer sharing goes right to a point Eric Raymond completely missed. His problem is primarily with the KDEPrint user interface and not with the CUPS print server. The Art of UNIX Programming, written by a very bright guy, does a good job of explaining the desired separation between the UI and the server.

    CUPS is an amazing print server full of options that can be configured to suit a particular environment. It is the best print server in the Linux/UNIX world and, I would argue, the best all around print server in existence. (Bonus points because, in the finest Linux tradition, it is an active open source project being led by a uniquely talented individual)

    KDEPrint is also a very nice piece of software, but it suffers from a failing common to many Linux/UNIX user interface programs: it presents too many options to the user. Rather than presenting a few simplifying assumptions to the user, these programs try to present the full power of the server. This is great for the advanced user but it floods the general user with too many choices.

    The Mac user interface on top of CUPS is a counter example. When the user hits the "Share my printers with other computers" button the cupsd.conf file is altered to broadcast the availability of printers and to accept jobs from machines on the local subnet. The print server is then restarted. This one simple button takes several steps that are very useful for most users; it does not however provide access to many of the more powerful, less common features of CUPS.

    And so, at the end of the day, I think Eric Raymond is noting that KDEPrint does not "dumb down" the presentation of CUPS options enough for the typical user.
  • by CornHole (735049) on Thursday February 26, 2004 @11:46PM (#8405302)
    Lemme say, I'm not a mac nut, but I play one on /.

    I don't use a Mac much, but I have to say, as far as GUIs go, they take the cake. The OS and its respsective progs (that I've used) are the easiest to use, setup, and/or work productively in, especially from a noobs perspective to the OS/Platform, that I have ever used. As a designer/code-monkey myself, user-centered UI design is one of the most challenging things I do. So my hat's off to the Mac OS and Prog UI designers.

    For OSS to gain mind/market share in the consumer OS world, UI design is the key. It must be accessable by Joe-moron, who doesn't know his printer from his bunghole, also allow the technical (read:geek) user to configure and customize to his hearts delight, and fill all the gaps in between. This is one of the most difficult challenges a designer faces, but one that must be solved effectively to have the "big year of OSS" I keep hearing reference to.


    As a side-note: programing and UI design don't mix (at least in my world) I have to take of my code-monkey hat off and give myself some time to get into design mode before I can do anything useful in a design sense. I dunno, but if someone, as an OSS contributor/programer, doesn't have the design sense God gave a goat it might be a good idea to holler at a designer (who does this stuff every day) to help ya work out the kinks of a tricky UI problem.

    Anyways, just food for thought...
  • Every non-technical user I know has similar sounding Windows troubles. And me, who rarely uses Windows, has to figure it out, and let me tell you right now - it isn't intuitive or easy to use in any way for the non-initiatied into "One Microsoft Way". This whole rant could well have been about any number of Windows sub-systems I've had to struggle with over the years.

    Honestly, this problem is pretty much endemic in all software. And that's not a good thing - it's a important lesson for *every* software developer to learn.
  • by spoco2 (322835) on Thursday February 26, 2004 @11:49PM (#8405316)
    Absolutely, I can't believe ANYONE was holding them up as a pinnacle of good design. They truly are horrible.
  • by j-pimp (177072) <zippy1981.gmail@com> on Thursday February 26, 2004 @11:53PM (#8405339) Homepage Journal
    So...just thinking to myself, um, what happens if Linus is...snuffed out? ;)
    Well, you got Alan Cox and the rest of Linus's trusted lieutents. Their will be chaos, a power struggle, and life will go on. If they don't get their act together, then their are the BSDs and the Hurd. The kernel is such a small part of linux. Even GNU/Linux is such a small part of what is linux. Their is so much non GNU free software involved in what we consider linux. You have X, KDE, VIM, xmms, mozilla, samba and alot more.
  • by bertok (226922) on Thursday February 26, 2004 @11:53PM (#8405340)
    Despite a degree in Computer Science and a few years of experience managing networks of all descriptions, like all people, I still find myself stumped by the occasional yes/no question in a program. Some of the time, I try to read the associated help, if there is one. All too often, I find that the help is a slight variation of the following:

    "To accept this choice, click OK. To cancel, click CANCEL".

    Well fucking duh. You know what I'm talking about: For an example, enter your computer BIOS (press 'Del' on most PCs during boot), and read the "help" for any of the entries. Do you know what every single setting there means? Quickly, what's Spread Spectrum Modulation? What are its effects and side-effects? What are the potential dangers? When would you want to use it? Can you answer any of these questions by looking at a UI that is packed with acronym laden yes/no choices? Probably not. I doubt most people outside of a motherboard design company could explain in detail what every single option does.

    Users aren't all stupid, even the non-computer literate ones. It's the user interface that is at fault, for not providing all of the information required to make a decision. Given sufficient information, most people can make the right decision. Given a yes/no question full of acronyms with no other information, even programmers and computer scientists can be stumped.

    A great example of how effective providing information can be, think back to the original Norton Disk Doctor for DOS. The dialog boxes in that program usually had several paragraphs of text, and asked one question. The text usually explained:

    • What the program will do in response to every choice.
    • What the pros & cons are of every choice
    • And, if applicable, the potential risks (eg: data loss) of your choices.

    Now, I clearly remember relatively computer illiterate people running that program, and making highly technical decisions without even realizing it. My father could easily decide whether he wanted to mark a sector bad, what kind of surface scan he wanted, and how he wanted to treat corrupted files.

    While Windows is in general mediocre (not great, just mediocre) in its UI design, at times it has glaring flaws. My favourite examples are applications that ask for a DSN connection string. Do you know how to construct a DSN connection string by hand? I don't, and I've been programming with databases for years. However, the doubly stupid thing is that the ODBC control panel already includes a dialog box that automates the process! So why do some applications, including some written by Microsoft, still ask for a DSN string?

    Command-line software (open source, or otherwise) is particularly prone to exhibit this problem, often to the same extent as the BIOS example. When executed with a "-?" option (or whatever), most programs will give a list of options, but rarely tell the user anything other than the existence of the option. This is no better than a dialog box asking a yes/no question with no further explanation.

  • by Sentry21 (8183) on Thursday February 26, 2004 @11:53PM (#8405348) Journal
    What I always miss in free software that I try to use is examples. Some command-line software I try to use has all the options cleanly documented in very specific terms with every possibility labelled and indexed by date and whatever the hell else, but it's missing one thing: examples.

    Try running hdparm for the first time, and you can see a pretty good example: if you mess up your syntax, it gives you the --help, without actually saying what it was you need help with. If it said 'invalid option' or 'you must specify a device', then that would be fine, but instead it gives me a screen and a half of junk that I've *probably* seen before (honestly, could you ever *guess* how to use hdparm and get it right?), without actually telling me what's the dilly-o.

    I'll say this once more, to all the documentation maintainers: if you have a command-line tool, you need to follow a few steps.

    If the parameters don't hash, tell them what the problem is. Don't just repeat the --help over again, that *NEVER HELPS*. Tell them what went wrong. If possible, tell them how to fix it, e.g. instead of 'invalid argument to -B' say 'argument to -B must be in range of 42-69' - bonus points if the argument range depends on outside variables that you can detect.

    If you have a man page, provide examples. Figure out the syntax of the most common things people will use your program for, and provide a few examples to give them a solid idea. Parameters are good, yes, but a lot of people don't have the mind for reading a bunch of variables and putting it all together mentally. We'll catch on faster if we can see an overview of the whole thing, instead of miles of microscopic detail that we have to piece together.

    If you don't have a man page, make a man page. Make an info page too, if you're bored, but don't spend too much time on it, no one uses them except the GNU zealots anyway (ok, that was a troll, I admit).

    If you have a GUI, take out any options that don't NEED to be there. Put anything that NEEDS to be there but won't be changed by most users into an 'advanced settings' dialog. Take a lesson from the Apple folks: you can make programs with only two changable preferences and still have it be a usable program for thousands of people. If you need to have that many preferences, maybe your program is too complex. Apple keeps its fanbase because it can do one thing: get out of your face. Because you don't have to worry about the assload of shit that Windows and Linux programs throw at you, you can get down to work and get your job done.

    And finally, to reiterate, autodetect whenever possible. It might take you longer, but it'll make for a better and more envious program - 'hey, I like how your program automatically detects networked file shares and adds them to the pop-up' or whatever. Another day of coding means the release date gets pushed back one day, but it also might save hundreds (or, depending on how well you do, thousands) of people a few hours (or days) configuring.

    --Dan
  • by DarkSarin (651985) on Friday February 27, 2004 @12:00AM (#8405381) Homepage Journal
    LOL!

    I suspect that I have ben 0wnz3r3d by a tr011, but I'll say it all the same: Windows is not the pinnacle of stability.

    This opinion is likely to be popular here, but the rest of what I say is not.

    Recently, I saw what I think is the best illustration of the difference between linux and windows. I have a box that was unstable in windows. Couldn't burn a CD for jack...loxor3d every time! Under linux I never had a coaster. I had other troubles, but not with that.

    At some point, windows got so bjorked that I decided that it was a HW issue, and replaced my mobo & cpu. Since that time, windows has locked on me exactly zero times. Ditto for linux.

    So what's my point? I find that on good solid hardware, they are about the same for stability (not security, mind you, but stability). However, on faulty hardware with perhaps a few problems, I found linux to be much more stable.

    That, to me, is the difference in terms of the technical side. There are others, but that's the one that sells me.

    On social issues, linux wins, hands down. This is from a convicted capitalist (and sometime republican/libertarian). I only bring this up to avoid some of the flames. M$ is socially irresponsible because they do everything they can to keep prices high, which hurts those who are not as economically stable as others. In the end, though, those who can't afford windows will win if they just use linux instead (free) of pirating winxp (like so many do).

    Any questions?
  • by spoco2 (322835) on Friday February 27, 2004 @12:01AM (#8405385)
    "We blow this stuff off because we want to make it workable for those smart enough to deserve to enjoy it then quickly move on to the Next Great Thing that Needs to be Made Now."

    I think you've hit the nail sharply on the head there... the problem with far, far too many nerds is that they are entirely utalitarian... if it works, well, dang it, that's good enough. I've proved I can get that to work, so I'm bored with it now.

    There kind of needs to be a whole set of other 'design nerds' who come along after the 'worker nerds' have done their bit, and make it all pretty and sensible to use... these 'design nerds' would have a good understanding of what the 'average Joe' is comfortable with in an interface.
  • Not true (Score:4, Insightful)

    by SmallFurryCreature (593017) on Friday February 27, 2004 @12:02AM (#8405388) Journal
    seriously documentation is so damn important, and so easy to make.

    Either you are one of the few technical writers or you never developed a software project.

    Writing a good manual is damned hard. In many ways even harder then coding itself. Why?

    Compare it with being an expert in your field and being an expert teacher in your field. Wich would you say is harder? The latter really needs to be good at three things. A good coder, a good writer and able to imagine how someone not intimatly familiar with the subject would look at it.

    Maybe you are a natural at this but most are not.

    For a laugh ask say a doctor to explain a complex medical condition in layman terms or a lawyer to explain SCO vs IBM in english. Now why should coders be any better?

  • Doesn't matter (Score:5, Insightful)

    by YrWrstNtmr (564987) on Friday February 27, 2004 @12:04AM (#8405400)
    Fedora, CUPS, whatever...

    PC here. Printer there. Make it so.
    In clear, precise, EASY directions.
  • by mshiltonj (220311) <mshiltonj@gm[ ].com ['ail' in gap]> on Friday February 27, 2004 @12:07AM (#8405415) Homepage Journal
    ESR specifically said he _wasn't_ bashing CUPS, per se. He was bashing poor usability as endemic of the open source community. Whether Fedora or CUPS is responsible to the bad usabilty he used as the example (or flashpoint of the rant) is beside the point.

    I absolutely agree with him that this is the biggest remaining obstacle OSS must overcome before it has a chance of being accepted by the wider mainstream population. This really is something MS does better, and the OSS community would benefit greatly by listening to ESR on this.

    The sticking point, though, is that creating a truly good user interface is hard and requires a different set of skills (and possibly training) that what joe coder has -- or possibly even interested in.

    Lots of OSS projects have poor usability and limited documentation because documention and interface design requires a person to do something other than coding. Documenting is tedious, no matter how useful it is. Usability testing and interface design, IMHO, is not much better.

    Developing a good interface requires exactly what ESR said: exert the mental effort to forget what you know and sit down at the system like a novice user who's never seen it before -- and watch a novice user in action!

    In commercial software, this is expensive research. It's not something volunteer coders scratching itches on thier own pet projects want to do.

  • Re:ESR is Right (Score:5, Insightful)

    by diamondsw (685967) on Friday February 27, 2004 @12:08AM (#8405419)
    Get a Mac. It really, honestly, truly does just work. And you get UNIX along for the ride.

    Someone had to say it. :)
  • by icebike (68054) on Friday February 27, 2004 @12:09AM (#8405422)
    Well he wrote fetchmail too, and the documentation there-of has to be the best example of starting in the middle and working toward both ends.

    How many thousands of man-hours have been wasted by how many hundreds of users trying to figure out what the heck he meant and why someone capable of writing it in the first place would be so incapable of orginaizing the docs.
  • Re:In related news (Score:2, Insightful)

    by Anonymous Coward on Friday February 27, 2004 @12:15AM (#8405463)
    A few years back I spent a couple hours trying to configure my graphics card and almost a week doing research on getting my modem to work. My sound card is a different story- I hacked the driver code to get it to work and it would still *pop* at the end of every single played sound.

    That turned me off to Linux for a few years. Windows was way better for me at the time (yes, all I wanted was to sign in, sirf the net, play quake2 or 3, etc, and take a break from the thinking involved in my studies and work). The whole process of getting my machine to work with Linux just totally turned me off. Windows was better for me at the time.

    At work we are in the process of moving from a UNIX environment to Redhat 9. Although this latest incarnation seems a lot better, I think it still has a long way to go in order to make me more comfortable with it (and no, I'm not a computer illiterate person... I just don't have a week of free time to learn the necessary things to set up my home machine and wireless network properly now that I have a very busy career and home life).

    Sorry Linux. Standards go a long way in making something acceptable.
  • by XenonOfArcticus (53312) on Friday February 27, 2004 @12:16AM (#8405471) Homepage
    Ok, personal OSS rant.

    RMS says that coders should give code away. You work as a waiter, or do something else for a living. I don't want to be a waiter. I want to write code. So, "something else" has become service and support.

    Here's the rub -- when you make your pennies on service and support, you have no economic motivation to make it easy and self explanitory! You make MONEY when it's hard to use.

    This I think is the downfall of the current OSS business models, and I haven't found a way out of it. OSS projects are destined to remain difficult as long as there is no economic motivation (and we've already established that there's no artistic/ego motivation) to make it beautiful and easy.

    I'm not saying that Windows is right or that Mac drool-proof design is right, or that OSS is fundamentally wrong. But I'd like people to understand the motivations that their choices steer them to. I feel bad when I get harangued by OSS types for making non-OSS products. Just understand that not everything is as cut and dried, and that most OSS business models have yet to be proven successful.

    Let the GNU/GPL/RMS/OSS/ESR flaming begin. I'm ready for it. I've thought this out for a long time, and I make a living writing software. And no, my software is not a paradigm of simplicity, but I'm not having delusions of taking the desktop away from Bill G by conquest.
  • What's Different (Score:2, Insightful)

    by briansz (731406) on Friday February 27, 2004 @12:17AM (#8405481)
    I notice a big difference in installation and configuration difficulty between 'traditional' distros like Mandrake, RedHat, etc, and my Knoppix hdinstall.

    I was a Mac (System 7, OS8, OS9) driver for more than a decade before I switched to Linux almost a year ago. Began with Mandrake and ended up with Knoppix on the hd. Knoppix gives few, if any, problems compared to the distros I've tried that require a more 'normal' installation - RedHat, SuSE, etc. I'm not saying all the interfaces are perfect or that things, CUPS incuded, don't bork once in awhile. But really, Knoppix is quite good. Much easier for a n00b who can use Google than the 'real' distros.

    IMHO, the LiveCDs should be the first priority for GUI and interface improvement. They are, after all, the primary tools used to evangelize new Linux users and are much less intimidating to the uninitiated.

    As I gained a little experience with Linux, I couldn't figure out why should I spend an hour wading through Debian's old text-based installer when I can literally have the entire Knoppix distro onto the hard drive and running in 15 minutes or so. Come to think of it, I still can't. I use apt-get all the time to install software (will never consider RPM again), and every peripheral I own plays nice with Knoppix, almost all right out of the box.

    That includes a MacAlly USB KB, Logitech USB Trackball, SB Live, nVidia card with 3D drivers, Adaptec U160 card, 3COM Gigabit NIC, HP Scanjet 6200C SCSI Scanner, Apple Laserwriter 16/600 printer (local/parallel), and Olympus D-280 USB digicam.

    When I read a mailing list detailing the plight of some poor slob trying to install some simple device unsuccessfully, one of the first things I think is, "Well, it usually just works on Knoppix." Perhaps we need to try and discern why that is the case.

    I am very appreciative of the efforts of many folks that wnet into all the packages on Knoppix. Because of them, I'm composing this on a dual 2100MP box with a free OS that ended up costing about $1300 less than a G5 tower. I can't give you technical reasons why you as a programmer might want to build on or extend distros like Knoppix. What I can pass along is my personal experience that it was easier to configure and use than anything else, even if a few things could be laid out a more logically.

    RTFM elitism aside, at the end of the day, that ease of use plus the overall stability is what keeps me using open source software instead of something from Redmond.

  • by CornHole (735049) on Friday February 27, 2004 @12:19AM (#8405494)

    mistake one in interface design is thinking its graphic design! Better looking buttons lead to user interface improvement with about the same frequencey that a new paintjob fixes your car's transmission.

    You are correct, pretty buttons does not a good UI make, however, UI design -- user-centered UI design (layout, workflow, etc., etc.) is VERY important. To continue with your analogy, your car has power-steering. But, human-interface designers made it so you get some tactile feedback from your car's steering wheel at speed (as opposed to the 60's Caddies which you could steer at 65 with your pinkie).

    It's the "design" process that's important. 1. What is this "thing" supposed to do. 2. What does the user(s) expect/know. 3. How's the user(s) going to act/react based on #2. 4. What's the simplest, most effecient and effective way to get to the desired end result given #1 #2 and #3 for as many cases as possible.

    Photoshop doesn't make you a graphic designer; programming skills don't make you a UI deisigner.

    Do what you do. Engineers engineer, programmers program, and designers design, but just like you wouldn't have a electical engineer engineer a bridge, or a web developer programming embedded system, you shouldn't have a graphic designer designing a UI... IMO.
  • Re:In related news (Score:3, Insightful)

    by mingot (665080) on Friday February 27, 2004 @12:26AM (#8405531)
    I put a DVD into the drive, click 'Open Drive', wait about one minute for the scan to complete, click 'Make backup', Click 'Ok', Wait between 10 and 60 minutes for the drive door to open, replace the DVD with a DVD+R, close the door, wait about 20 minutes for the drive door to re-open, and then pull out a freshly minted backup.

    It's pretty neat. Didn't require a man page, an apt get, or a kernal recompile.

    Of course I could certainly have visited this site Some directions I found on bunring DVDs under Linux [gecius.de].
  • by Orien (720204) on Friday February 27, 2004 @12:27AM (#8405538)
    I couldn't agree with you more. In fact I had a very similar experiance. You can see my previous rant [slashdot.org] about that. It's a shame that the grandparent poster so quickly discounted what ESR said. I found it very refreshing. In fact I was relieved! It was great to hear about so renound a hacker havings the same dumb problems that I have. I had almost the same experiance with CUPS, and I remember feeling stupid. The interface looked so simple that I felt dumb when I couldn't get it to work, but I feel much better having heard ESR rant about the same thing. I hope more OSS projects take his advice to heart.
  • by mingot (665080) on Friday February 27, 2004 @12:38AM (#8405597)
    This post (and its parent), albeit humorous enough, go straight to the underlying problem with Linux at present: a wilfull disdain for the non-savvy user. "Joe Sixpack" should be embraced rather than disdained (figuratively, of course).

    Indeed, but these people ARE idiots. Someone would have to pay me money to cater to the likes of them. Oh hell, they're already paying someone. Microsoft. And Microsoft, liking said money, seems to have no qualms about apeasing said users.
  • by demon (1039) on Friday February 27, 2004 @12:38AM (#8405599)
    If a program needs some piece of information, and there's some way the program can find it out without asking the user, the program MUST find it out by itself. Even if it's more work for the programmer. Asking the user is not an option. Period.

    I've run into software that made this assumption in the past. Yeah, it's nice when its assumptions make it look smart, and it gets it right 90, 95, even 99.9% of the time. However, there will ALWAYS, and I mean ALWAYS, be some unexpected corner case where the device it's talking to gives it wrong info, or something, and what it thinks about the hardware it's talking to is WRONG. 100% wrong. If the software assumes "I'm infallible! I'm always right! I know EVERYTHING!", you'll be beating your head against it, cursing it to high heaven, because it won't let you just bypass it trying to be smart, and tell it "you are the machine. you are stupid. do what i tell you."

    If the system is in an inconsistent state, it must detect that it is in an inconsistent state. It's not the user's job to validate the internal consistency of the system's tables.

    If it could always know if it was in an inconsistent state, or would be going into an inconsistent state, then you would be able to solve the halting problem. However, go take a course that covers finite state automata - you will learn about the halting problem, and why a program cannot always know if it's going to end up in an inconsistent state. Expecting the machine to just know these things is ridiculous, no matter how much sense it makes to someone who's not familiar with the nuts and bolts of the technology.

    And the first mistake you made is the same mistake that so many people have made before you. Rule #1 - the machine is STUPID. Computers only know the lies we tell them. Expecting the machine to be smart is just asking for trouble.

    Unfortunately, there are two major points of view on the human-computer interaction - one of them is the Mac and Windows mentality, which basically assumes you, the user, are a complete and utter moron, who could barely find your ass with both hands. This works OK some of the time, but when it doesn't work, the number of failure modes is simply astronomical, and the one the machine will pick is unpredictable at best. Then there's the more traditional UNIX mentality (which VMS and other similar systems also follow, IMO) - which assumes that you, the human, are intelligent, literate, and you do in fact know more than the machine about what you are doing and how you want it done, but the machine is a tool for you to achieve that. This means the machine doesn't make silly assumptions about what you do or don't want, and it doesn't try to force those ridiculous assumptions on you. It requires that you know more, and has a more daunting learning curve, but if something's wrong, you can fix it. You at least have the option of fixing it. Whereas with the former mentality, everything is so closed up, that even if you know exactly what you want, you're still stuck jumping through whatever hoops the people who assembled the environment put there, and if things break... well gee, you're just stuck.

    This is why I prefer Linux - and I don't _want_ it to be "just like Windows, but free!" If I wanted my operating system to make assumptions and decisions for me, I'd have just stuck with Windows. That's not what I want from a computer. It's more like, "you're the stupid machine, I'm the smart human. You're my bitch, you do what I say." That's the way I prefer it.
  • by jmh_az (666904) * on Friday February 27, 2004 @12:42AM (#8405623) Journal
    This line in the article, for me, is the key issue: "Where might I find some guidance on this, and why is this already taking too freaking long?"

    I'm busy. I have things to do. I don't have time to fiddle with someone else's idea of cleverness, or a badly designed interface that can't decide on how to assign command key functions consistently, or which lacks any useful help (the CUPS example is just a case in point). Nor am I interested in solving puzzles or pondering the greater mysteries of my Inner Tux. I just want to get the damn thing up and running so I can get on with what I wanted to do in the first place.

    Perhaps it's a matter of perspective: If the computer is an end unto itself, then things like usability for a wider audience aren't really relevant. But for a lot of folks, myself included, the computer is nothing more than a tool with which I hope to get some useful work accomplished. I'll use whatever works, even if it is Windows. Occasional crashes and lock-ups aside, Windows does help me get the job done and I don't have to spend half a day reading man pages and badly written "manuals" trying to figure out how to install and configure something, and that's what really counts for me.

    The bottom line is that I'll rm -rf a badly written tool's source tree just as fast as I'll pitch a cheap pair of pliers into the trashcan. They're both useless to me if they waste my time and impede my progress.

    Eric Raymond sums it up nicely with the statement that "the problem is that these simple things never occurred to developers who bring huge amounts of already-acquired knowledge to bear every time they look at their user interfaces."

    So the next time you look down your nose at some poor slob who just can't figure out how to install and configure something that you could do in your sleep, just keep in mind that there's a reason MS still rules the desktop, and it has a lot to do with millions of those poor clueless slobs.

  • by Anonymous Coward on Friday February 27, 2004 @12:57AM (#8405699)
    If it wasnt for the French, you yankies would still be singing God Save the Queen.

    Your nations founders were nothing but a bunch of cheese eating surrender monkeys. Rely on the French to help free them because they could not do it themselves, but when the French asked for help a few years later, you were nowhere to be found.

    Take a look at your president now. He looks just like a baboon. What other country would VOTE in a baboon?
  • by Anonymous Coward on Friday February 27, 2004 @01:01AM (#8405723)
    Users prefer usable software to powerful software, when given the choice.

    ...Including informed users such as myself. I've been using Linux for years, but what do I use to burn a cd? Not xcdroast or gcombust, even though I took the time to learn them. No, I use K3b because I want to just pop in a disc, drag-n-drop my files and hit the burn button!

    Now imagine an uninformed (read: MS windows) user trying to burn a cd under linux. They could spend hours digging through docs to accomplish a five-minute task, but they usually won't. They will give up on "free" just about every time, unless "free" comes with a user-friendly alternative (like K3b).

    Morgan

  • by epine (68316) on Friday February 27, 2004 @01:23AM (#8405809)

    I had the same problem trying to get network printers working under Fedora-core. Unlike ESR I wasn't confused by the glitzy graphics into thinking it would be a cake in the park. I went straight into google, wallowed around in Unix printer filth for a long time, and never did get it working.

    Unlike ESR, I don't see anything wrong with creating a glitzy skeleton around the printer configuration tools, as long as the programmers involved *intend* to continue improving the GUI and its intuitiveness.

    On the other hand, in my own work it's been a decade since the last time I presented a screen to a user that didn't say "Here is good magic, but it requires X and Y in order to function properly."

    By no means is this restricted to technical people. In every aspect of business, learning to set out assumptions ahead of decision making is a lifelong process.

    The problem with technology is that technology is mute. The user can't suddenly cock a cranky expression and demand "what assumptions are creating this goose chase?"

    ESR is trying to have his cake and eat it too. The declaration of assumptions is already more information than most people want. It's human nature for people to think that any information they don't know they need yet is too much information, too soon.

  • What matters most (Score:3, Insightful)

    by rossz (67331) <ogre&geekbiker,net> on Friday February 27, 2004 @01:26AM (#8405824) Homepage Journal
    Without having read the article, I'll put in my 2 cents worth on what matters most to the average joe-user:

    1. It installs easily.
    2. It works properly (for the most part).

    They don't care enough about security to do anything. They don't care about the license agreement (open source, what's that?).

    The only thing that matters is they can install it and it does what it's supposed to do.

    Open source programs usually covers point 2 extremely well. Point 1, however, is a serious issue with far too many otherwise excellent programs.

    "./configure; make; make install" is easy enough for us WHEN IT WORKS. A few too many times, however, I've run into dependency problems that caused some headaches. Using RPM has the same problem. It works great if the dependencies are already installed, but falls flat on its face when something is missing.

    Debian's apt-get is a huge leap forward, but because of old programs, is nearly useless if you use a default woody installation. Yes, I know Debian's premise is stability. What does that have to do with anything? The average joe is running Windows, so stability isn't an important issue!

    What is needed? Something based on Debian's apt-get, but GUI driven, and specifically designed for new software (as opposed to Debians stability mantra). Shiny buttons that let the user choose the "stable" versions , a specific version, or "the latest" would help. It should automatically grab dependencies unless specifically told not to.

    Lastly, a database of package locations (distributed, of course). The tool would query the database to find out where to get the packages that are needed. The database might also return dependency information, or it could delegate that responsibility to the actual location. This could be almost DNS-like.

    Just a few random ideas off the top of my head. Feel free to shoot huge holes into it.
  • by 0x0d0a (568518) on Friday February 27, 2004 @01:32AM (#8405848) Journal
    When you're reading a mailing list and someone emails "how do I do X", the usual response, as ESR has pointed out, is to simply answer them. If the problem comes up a couple of times, perhaps it goes into a FAQ. There is one missing thing, though, that doesn't happen. The author should ask "what could I change in the *software*, not the documentation or FAQ or whatnot, that would keep users from coming to ask me about this again."
  • Re:My experience (Score:3, Insightful)

    by flacco (324089) on Friday February 27, 2004 @01:32AM (#8405849)
    after I learned how to do it, it proved to be '''much''' easier to administer and manage than it is in windows.

    and you can do a lot more with it too. i'm a hero in the office because i figured out how to solve a long-standing Windows printing problem using CUPS and its filter capabilities. now all our problematic print jobs are routed to CUPS first where the print data is massaged before sending it on to its final destination.

    i asked about this problem on some windows irc channels and received brilliant responses like "write a middleware" and "well, i don't use obsolete legacy software".

    it wasn't easy to figure out how to do using CUPS, but at least it was *possible*. some more documentation and transparency about how it works would be nice though.

  • by bonch (38532) on Friday February 27, 2004 @01:34AM (#8405856)
    But everytime I point out someone's interface flaws, someone in the OSS community screams at me "it's volunteer work" or "program your own version then."

    Then I realize I don't want to work with a bunch of anti-social programmers.
  • by Anonymous Coward on Friday February 27, 2004 @01:42AM (#8405879)
    I'm a longtime reader of Slashdot, longtime observer of the open-source community, never posted before, hope someone takes my opinion seriously.

    I use some open-source applications and have installed Linux a few times. The reason I don't use it now is because of the exact problems ESR mentioned. Obscure problems, poor documentation, and having to wade through a zillion man pages just to get an idea of what the problem is.

    Far be it from me to tell any programmer how to do their job, but most of us in the Real World don't have time for this stuff. We just want the bloody thing to work without too much trouble, so we can get on with our jobs and/or lives. Microsoft, for all its many and fundamental shortcomings, understands this. Far too few Linux developers do. Ergo, when an end-user encounters a problem like ESR's and can't muddle his way through it, he's just going to shrug his shoulders and take the path of least resistance, which means Windows.

    I hate Microsoft, I hate their shoddy software, I hate their security problems, I hate their handholding, I hate their interfaces. I've been saying for years that if I ever meet Bill Gates, I'm gonna smack him. But I keep using his software, because if nothing else, at least I know it's going to do what I need it to do, dangnabit, and I won't need a computer science degree to make it work.
  • by Advocadus Diaboli (323784) on Friday February 27, 2004 @01:42AM (#8405884)
    Two things on that:

    Most of us don't have the time

    If I run into a situation where I have to use more time than I want to I just remember that there's an old equation saying "time is money" and so I buy my time by delegating the thing to a service vendor that does the job for me. Then I don't need to care about how much time it will take him, all I need is to pay some money for it.

    My second point in that is that ESR's example is a typical "configuration" example. Configuration is a process usually done once and if Joe User is not able to do it he shouldn't waste his time but let it be done by someone who knows. Just as a comparison: When I built my house all the heating system was installed by a plumber, even if I think I could have done it myself. But doing it myself would have required time and also time to learn things I just need to use once. So I didn't care about how that thing needs to be configured, all my concern is the real User interface, in that case what I need to do to have a warm house.

    And hey, isn't that the business model of Open Source? We give them the software for free and we charge them for service...

  • by Spy Hunter (317220) on Friday February 27, 2004 @01:44AM (#8405887) Journal
    Actually, newbies are the ones who need documentation the least. As has been said before, if your user interface needs documentation it is too confusing. On the other hand, experts who are doing something unusual or complex need documentation on how to do those things. Documentation written for newbies is useless because newbies can't find it and don't want to spend time reading it, while experts won't get any benefit from it.
  • by Microlith (54737) on Friday February 27, 2004 @01:51AM (#8405913)
    Fine then.

    You and all the other linux geeks can stop stuffing it in everyone's face. Don't claim something's better than windows until your OS does everything windows does and does it better.

    I see this argument all the time and it doesn't make sense. Half of the linux community wants it to succeed and the other half insists that it's "by geeks and for geeks" and never want to see it expand.

    So what's it going to be? Until $distro can use linux behind the scenes and beat Windows at its own game, linux will not take the desktop.

    And it'll likely because people like you and the parent post held it back, to keep it "by geeks and for geeks."
  • by Zachary Kessin (1372) <zkessin@gmail.com> on Friday February 27, 2004 @02:03AM (#8405953) Homepage Journal
    The problem is that the folks who made this UI made things harder not easier for the average user. I don't care how my print queue works, I just want to be able to hit "Print" and have something (and the correct something) come out on paper. Idealy it should go out on my local network and see if there are any printers already there and offer to add them. Now If I'm running a department with 100 computers and 10 printers I may care about the details but if I have a home network with 2-4 computers I don't. Just make it work, I have better things to do with my time that fight with CUPS.
  • by bonch (38532) on Friday February 27, 2004 @02:14AM (#8405984)
    Linux users don't like "Joe Sixpack" for a reason--he's usually the jock who picked on them in high school.

    A generalization, but it applies to most of the community--we're a bunch of generally shy and anti-social tech nerds who spend all day configuring an OS to use our mouse buttons correctly or play sound and think that means it's "powerful" and "flexible."

    We don't want it easy, because the true reason people love Linux so much is the satisfaction they feel from getting it working. That's why they feel so euphoric about it. It's the subconscious, unspoken truth. Make it easy to do things in Linux, and suddenly you make it a tool to get work done instead of a tool to tinker, and you take away its hipness.

    Which is why the Linux community is what holds Linux back.
  • by Anonymous Coward on Friday February 27, 2004 @02:26AM (#8406023)
    Not every project has someone like Linus though. I believe that what has made Linux successful is that Linus any time some sort of decision has to be made, he can convince most people that he is right and he can convince most of the people who disagree with him that it's not big enough of an issue to fight over. Linus isn't always right and he knows he isn't always right, but he has a general track record of never being too far off the right path so people are willing to trust him.
  • by Ilan Volow (539597) on Friday February 27, 2004 @02:39AM (#8406074) Homepage
    What we really need to have happen is the folks who still have such values as those of the original macintosh form their own linux environment where thinking differently about apps/environments is accepted and where essential macintosh freedoms (e.g. the freedom to criticize the living hell out of bad and confusing software) are fully protected. People like us need to stop putting our faith in hopeless projects like KDE and GNOME that are dominated by traditional unix hackers, and to start putting faith in ourselves and our own work.

    BTW, I've liked your previous posts regarding linux usability, for what it's worth.
  • by klic (739114) on Friday February 27, 2004 @02:59AM (#8406140) Homepage
    ESR is right on the money on his observations. His response is prescriptive, and wise, and well thought out.

    However, a constructive response is be even better than a prescriptive response. Eric's essay is an instructive example of the thought process that goes into debugging an incomplete user interface, and prescribes excellent principles for user interface design. The essay fails as a description of the process of bringing up a networked CUPS printer. While that was not Eric's purpose, I humbly suggest that his task is not complete until he does so. If he can find the time, he should create another web page, describing his CUPS problem, and the most direct way to solve it, now that he knows what he knows. Countless other users could find his example on the web, and emulate it if applicable.

    Windows comes from a box, Linux comes from a community. The solution to the Linux user interface problem comes from the community, too. We can compensate for the rough edges of our software by sharing our experiences and solutions on the web.

    If you encounter a difficult problem with Linux, and manage to solve it, don't just sigh and move on. Don't stop with a witty and cogent essay about the bad practices that led to your suffering. Figure out what worked, and write it down, and turn it into a web page. A HOWTO. A cookbook. Whatever you can write that helps others.

    Put your helpful web page in a stable place, where other folks can find it and link to it. Keep it fresh and updated as you learn more. Add links to other useful sites (this increases your Google score, and is helpful to your readers). Every once in a great while, you will get a nice email from someone, asking a question or providing further illumination.

    Write up your failures, too! You might warn others away from crippled software, or a wrong approach. You might help the authors of a FOSS application find an improvement. Best of all, someone might offer a solution to your problem - then you can change your failure page into a recipe for success!

    Most of what I've learned about Linux has come from the webbed experiences of others. I've tried to add a few writeups myself (for example, http://www.keithl.com/linuxbackup.html ), a few pages per year. This has resulted in valuable feedback. There are thousands of people doing this now, many (like ESR) far more prolific than I am. If 10 times as many people wrote about their Linux experiences, what a wealth of helpful information there would be, only a Google search away. This helps more people join us, which adds to the problem-solving power of our community.

    Best of all, someday some smart team will figure out how to gather the best of these contributions into help systems that are even more easily searched and evaluated than the search-engine/web-browser paradigm we work with now. Just as Linus Torvalds added a brilliant but relatively small bit of kernel coding to the nutrient-rich primordial soup of GNU free software, unleashing the power of Linux, so our small writeups and howtos will fuel the innovative user discovery systems that will drive the next wave of desktop computing. Open source will be a critical part of that - if user discovery engines can determine functionality from source code, it can relate configurations to behavior and guide the user towards solutions.

    Again, Eric's thought provoking essay indicates a problem, and helps us sympathize with the user of a traditional standalone program, isolated from the Internet. But the Internet exists. The cookbooks and examples that can help any user solve any ordinary problem WILL exist, if we all devote a little bit of time sharing our hard-won solutions on the web.

    If you can't do, teach. Even the best of us can't repair all the incomplete user interfaces out there, but we can still help others succeed with the interfaces that exist. Aunt Tillie is not alone; when she runs Linux, she can have millions of helpful friends.
  • by Tyrell Hawthorne (13562) on Friday February 27, 2004 @03:15AM (#8406210) Homepage
    My printer works. If Aunt Tillie wants hers to work, she can pay me to set it up for her, or she can pay me to write software that makes it easier.

    Why the hell is it CUPS's (or anyone else's) responsiblity to do this? If IBM and Red Hat are going to profit from easy printer sharing, let them write good config utilities. The CUPS team got the reward they were after. Their printers work.


    To a certain extent, I agree. It's definitely not the authors' responsibility. However, a lot of people would like to see free software used more, also by non-technical users. If you don't care about this, fine. There's no point in making your software user-friendly so long as you know how it works. But if you're interested in getting more people, including non-technical users, to use your software, then you have an interest in making it user friendly. And I believe a lot of free software authors do want their software to be more widely used.
  • by vatsal (692351) on Friday February 27, 2004 @03:15AM (#8406212) Homepage
    When it comes to documentation and making things more intuitive, you just cant blame the FLOSS developers,

    they are developing all that software because of their love for writing software, when that software is in a proper functional state(according to their expectations) they start losing interest in that(and thats natural as their first love is writing software, not documenting it), they just want to handle complex programming problems instead of firing an editor and writing about how the whole thing works.

    To them "Documentation" is kind of "shitty" work which no one wants to do, and thats where money comes in picture, in closed source or professional organizations you have to write documentation, you like it or not. and often you have dedicated guys who are responsible for that, also enough thought goes into look and feel of software along with core functionality of software.

    I remember reading Linus statement somewhere where he said companies like RedHat did what he never wanted to do like documentation and i think that clearly conveys the point.
  • by omarin (322924) on Friday February 27, 2004 @03:18AM (#8406221)
    I am SO happy Eric Raymond wrote this... just a few days ago I too was trying to set up my printer via CUPS, and ended up giving up/swearing up a storm. Bitchy comments from some Slashdot readers aside, we ought to listen to this man... Linux's main strength AND disadvantage is that the majority of the code writers/users are (like moi) tech-savvy geeks. But, the UI should not force us to become a full-fledge sysadmin every time we want to install a damn printer (or plugin, or etc...) Believe it or not, even though I am a geek, sometimes I just want to use the printer without giving a rat's ass how it happens as long as it happens. It's one of the few times that I don't hate MicroBarf or (cr)Apple. What many of the open source projects need is to recruit a local WinDoze/Macinosh weenie (their boss for example), and have them run through the projects' UI. If the user finds the UI easy, then great! Otherwise, it should be back to the (G)UI drawing board. Obscurity does not lead to usability, people!
  • Re:foomatic (Score:3, Insightful)

    by bonch (38532) on Friday February 27, 2004 @03:20AM (#8406229)
    With step 1, you've lost about 95% of the computing world.

    I have co-workers tell me to "slow down" even when all I'm doing is telling them to go to a website to install a driver.

    To you and me, "aptitude install foomatic-db hpoj hpijs hotplug" is a line of command consisting of shorthand names representing stuff. To everyone else, it's gibberish and it frightens them.
  • by bursch-X (458146) on Friday February 27, 2004 @03:21AM (#8406232)
    And of course Aunt Sally and her dog know that pointing your browser to localhost:631 will bring you to the web-based admin tool to setup your printer, because that's the first thing to learn in school.

    It's not his mistake to use the only "obvious" tool that's available on his box to setup the printer.
  • by anthonyrcalgary (622205) on Friday February 27, 2004 @03:22AM (#8406235)
    That is not true, and if you had used some decent documentation you'd know it. It depends on which UNIX you're talking about, and it varies, but some of them are MUCH better documented.

    I had attempted to put together a Linux firewall machine and use it on my desktop machine a number of times, but I could never get it working enough to make it worthwhile. Know what turned it around? I gave up on Linux for the firewall machine, and tried OpenBSD. The documentation was so much better, so utterly superior that I had everything I wanted working within about 3 hours.

    And then, with what I had learned, it took about an afternoon to get Linux working on my desktop. This was around november last year.

    With OpenBSD, if it's not in the faq it's in the man pages. If it's not in the man pages they say specifically where it is. Linux isn't anywhere near that point, even for the core stuff. I still ssh from my Linux machine to my OpenBSD machine just to get the man pages because they're that much better. These man pages are distributed under a license that would allow any Linux distribution to use them, or modify them and then use them. And yet they don't even take that setp. Go figure.
  • by FreeForm Response (218015) <comptonaNO@SPAMgmail.com> on Friday February 27, 2004 @03:26AM (#8406253) Journal
    Grandparent:
    I'm planning on instrumenting the program to allow the users to (voluntarily and anonymously, of course) report to the project server...
    Parent:
    What you're doing is called "anonymous usage statistics."
    When MS does it, it's "spyware." When you do it, it's modded up "Insightful."


    And when he does it, it's voluntary, anonymous, and optional. That would be the big difference between his "OK" way and the Microsoft "spyware" way.
  • by tehdaemon (753808) on Friday February 27, 2004 @03:28AM (#8406258)
    When I am trying to put together a command with all of the options needed to do something really weird, that 'app {opt1,,opt2] [opt3:dev1] opt4 source dest' crap is indespensible. What it is useless for is your first look at the app, and you want to do the simplest most straightforward thing, and you don't know which, if any, of these opts you need or not.

    To man page writers: do not exlcude the [opt] stuff. It is needed. but please, put in some basic examples. They are at least as important.

    (same goes for API documentation, show one bare-bones-minimum-to-make-it-work example, one or two I-am-using-as-many-options-as-possible examples, and then document each option. )

  • by Rysc (136391) <sorpigal@gmail.com> on Friday February 27, 2004 @03:34AM (#8406277) Homepage Journal
    I know the linux printing situation is screwed up, having been bitten by it many times myself. The reason I have and still will nod at the Windows problem and go back to my Debian box with a new anecdote is this: Under Linux the printing may be convoluted, complex, hard, unusable, and the worst thing to learn since neurosurgury, but problems /can be fixed/. There may be 3000 annoying things which might be causing any given printing problem which I'll have to sift through to isolate it and fix it, but /I can fix it/ and /there is an answer/.

    Does it suck for the end user who isn't me and can't fix it? Yes. It sucks worse than Windows' problems, sometimes.

    But I still point to the Windows problems as anecdotal evidence as to the superiority of my admittedly _broken_ system because under Windows my options are:

    Reinstall driver.
    Reboot.
    Repeat.

    If something is wrong this ritual will either fix it or not. If it fixes it, I shake my head and mumble about Windows, and get on with work. If it does not, I can repeat ad nauseum until I go mad, but there really is nothing else I can do. The error emerges from Windows, the 'fix' dissapears into Windows. What is going on? No one I know can tell me.

    This scenario /also/ sucks for the end user.

    I'll take uber-broken and screwed Linux half-assed attempts any day over that kind of black box shit.

    I know people will say this makes me somehow "elitist", but I don't see that. What's more elitist, to treat users like idiots, or to treat them like reasonable beings? I would like a better Linux printing situation and would help fix it if I even remotely began to grok printers. I sympathize with the plight of those who can't geek their problems into submission, and I wish it weren't that way. But just because WE suck doesn't let Microsoft off the hook: they suck too! In fact, from my perspective they suck MORE.

    In the Windows case all people can do is say "Well that's Windows for you, and we all knew it sucked anyway," whereas here we can say, "That's because the user didn't try do..." It's not that we're trying to justify anything, it's that ANSWERS EXIST to nearly every problem. The ultimate answer may be some UI redesign. But in Windows, the answers just aren't there, so all you can do is nod sagely about the problem, and ignore it.
  • by mveloso (325617) on Friday February 27, 2004 @03:43AM (#8406296)
    I've cheked out macosx's cups, and it's one of the most arcane things I've ever seen. How in god's name am I supposed to know what the URL to my printer is? What's a "class", and why would I want to manage it?

    That truly is a terrible interface. It's not the layout, it's the verbage.

    Plus, I think (but I can't tell) that if you go in and modify a printer it doesn't show you the current settings - it shows you the defaults. I never bothered to check because it's unclear whether the settings are saved if you hit "next".

    Truly terrible.
  • by Anonymous Coward on Friday February 27, 2004 @04:05AM (#8406346)
    Amen. I was just about to write an essay on a similar topic and submit it somewhere. It's not just that open source user interfaces are a failure in terms of usability -- they are slow and more bloated than Microsoft's (which is why I don't use Gnome or any desktop managers; try fluxbox or fvwm to see ho fast a window manager can be on modern hardware).

    A few years ago, it used to be that the Linux UI was spartan, but fast and uniformly configurable (by editing configuration files). Now, the distro's (Redhat mostly) have made supplanted the configuration files by shiny GUIs that either happen to work on your system, or when they don't, they leave you clueless as to what to do (try tweaking the video modes on Redhat when redhat-config-xfree86 fails -- where's xf86config?).

    Worse, it's not just UIs that suck. The autobreak tools suck: they have enabled clueless developers to create projects that look configurable, but are impossible to cross-compile. Also, the automatically generated configure and Makefile are unreadable. And configure.in only works right with a particular version of autoconf. Etcetera.

    Going further down the chain, gcc sucks really bad nowadays. The bugs I see posted on bugzilla were inimaginable in the early days of gcc. I'm not talking about C++ either, I'm talking about C on supported platforms. Come to think of it, gcc was only *really good* when it was developed by Cygnus... Remember that ? They split gcc because the FSF version was drowning, they brought gcc back to life (and produced the first decent C++ compiler) and then they were bought by Redhat. Now they're gone and we have gcc3 (the first branch that was unable to compile the kernel). Various projects compile only with certain versions of gcc. And so on.

    I surmise that the GNU project (as a whole) has many failures due not to the lack of volunteers, but to the existence of clueless developers.
  • by lussmu (638495) on Friday February 27, 2004 @04:09AM (#8406357)
    OSS isn't really a fair proposition if you don't have something to contribute.... or at least meet the developer half-way.

    Eh, well isn't that exactly what ESR said? If we ever want open source to spread to user bases outside of the tweakers and engineers, we need to finish our programs.

  • by Graff (532189) on Friday February 27, 2004 @04:38AM (#8406430)
    I too have struggled through a configuration of CUPS, coupled with samba printer sharing for windows users no less. A couple weeks later, when OS X 10.3 came out, I was amazed at what Apple had done for a front end to CUPS. It's extremely intuitive, and a vast improvement to previous OS X printer configuration schemes.

    And you know what? Apple keeps on doing this over and over again. People wonder why Macintosh users are so loyal, it's because you really can just sit down at the computer and do stuff, you hardly ever have to crack a manual or fiddle with weird configuration stuff.

    I'm just as technically competent as the next geek but I have to work with hard to configure Windows and Unix stuff at work all day. When I sit down at home I don't want to have to fool around with that sort of stuff, I just want to get to work. For me that means a Mac.

    Hey, a Mac might not be right for everyone and I'm always a proponent of using what works for YOU but I know so many people who were diehard Windows or Unix users who finally gave Macintosh an honest try and were blown away at the experience. Yeah, at first they were a bit clumsy because they were used to doing things a certain way but once those habits wore off they were much more productive.
  • Re:In related news (Score:4, Insightful)

    by ttsalo (126195) on Friday February 27, 2004 @04:41AM (#8406442)
    So what are these mystery Windows video files that don't work?

    Here's one example of Windows video playing annoyances...

    The newest Windows Media Player (that comes with W2k, 7.0) outputs DV video (the kind that comes from almost every digital camcorder, not exactly uncommon) in half size (360x288), which looks like crap. If you try to double the size, it just scales the 360x288 frames and the quality still sucks ass. You have to run "mplayer2", which starts the older version (6.4) (why the hell is it called "mplayer2"?), and there you can configure the DV codec to output the full resolution. It still won't work on the newer player, though. Now, if you want to play an DV encoded AVI, you'll have to remember to select "Open with->Windows Media Player", not "Open with->Microsoft(R) Windows Media Player" (which is the newer player that doesn't work right).

    This was on my laptop. On my desktop, DV audio codec has disappeared somewhere, dvd-compliant MPEG-2 files won't play (WMP goes looking for a suitable codec, doesn't find it), and DV avi files crash the WMP on exit, but this is just on my system, not a general issue. I'd just like to know what the hell broke these, and how to fix them. Currently I have to boot to Linux to play MPEG-2 files with mplayer...

  • Exactly! (Score:4, Insightful)

    by RoLi (141856) on Friday February 27, 2004 @04:53AM (#8406466)
    That's the big problem. The bashers (and even though I usually respect ESR, this time it's him, too) try out one server distribution (like Fedora where RedHat's managers even said themselves it wasn't targetted at the desktop!) and conclude that "Linux sucks".

    I agree with ESR's analysis, but not with the conclusion: What he found out was the usability problems in Fedora.

    I've set up network printers in SuSE many times for years and it has never been a problem.

    But what is a problem is that this mindless bashing discourages any improvement. So SuSE and Mandrake solved the issues. Do they get any kudos from ESR? Nope. To the contrary, they are lumped into the same category and it is claimed that they are as unfit as Fedora for the desktop. So those who have worked those usability problems are punished, too and get bad PR for mistakes they didn't make.

    This is really sickening.

    Nobody expects ESR to try out every distribution, but he should be honest enough to make conclusions and claims only about Fedora and not "Linux".

  • by RAMMS+EIN (578166) on Friday February 27, 2004 @04:54AM (#8406467) Homepage Journal
    Although I happily agree that most OSS leaves lots to be desired in terms of user-friedliness, I don't like ESR's rant much. Here's why:

    He criticizes CUPS for having a subobtimal configuration interface. I am impressed that it even has such an interface at all. A friend of mine once said that hackers often stop where the product becomes almost usable. This is very true, and the CUPS developers probably just focus on the implementation, rather than the interface, which, IMO, is the Right Thing to do.

    Secondly, what he tried to do should have required no action on his part, as it says in the documentation. It's not CUPS's fault that the Fedora Core team decided to ship their system with the required feature turned off. There are good reasons for turning the feature off, e.g. security considerations: don't run services that are not required, and remote printing certainly isn't required for everyone. Sure, they should have mentioned this and provided instructions for re-enabling it, but remember that all this is under development; there is room for improvement.

    Finally, I have to say that I have had both good and bad experiences with CUPS, but finally quit using it because it is much too heavy and complex for my needs. I just want to print, locally, and magicfilter takes care of this just fine.
  • by CCRancor (314979) on Friday February 27, 2004 @05:11AM (#8406505)
    The problem with bad GUIs and guides in open source software comes from the fact that creating a good user interface is the most boring and tedious programming task there is. One has to handle all the possible wrong uses (there are about 100 per correct usage) in a way that gives good feedbackt to the user.
    Since most people developing software for Linux work for free and out of their own will there usually isn't enough incentive to do the boring stuff. An employee for a software company however could lose his job if he didn't do it.
  • by Moraelin (679338) on Friday February 27, 2004 @05:20AM (#8406521) Journal
    No, sorry, I don't think it's PHBs who make a project usable. You know a PHB has been at work if you see a GUI with:

    - a ludicrious colour scheme that 25% of humans physically can't read (two true cases I actually worked on: cyan on blue, and light orange on orange-ish yellow)

    - some unreadable font (free hint: Sevenet 7 is a literal pain in the eyes in 1600x1200)

    - 250 k of graphics on every single page, including, but not limited to, splattered across the tabs or instead of plain text for text field labels, and with funny roll-overs on every single word

    - a fetish for frames in frames in frames

    - a pain-in-the-ass navigation, where you have to go through pages after pages of marketting bullshit and self-loving to get to anything that might interest you (free hint: I'm already on your page. You already have my attention. Stop trying to force feed me your marketting. Let me just buy the damn thing I came for, or I'll take my business somewhere else.)

    - overkill and mandatory use of javascript and flash. Not to help the user experience (e.g., neat helper functions that recalculate the totals and whatnot). But obtrusive, annoying, abuse of the user's browser and time

    Etc.

    (As opposed to GUIs made by coders, which tend to be just an illogical, ugly, and haphazard collection of controlls thrown together on a page. With no consideration for aesthetics, grouping or functionality. The user should be thankful that he's getting a GUI at all, right? Real Men edit cryptic config files in vi.)

    What Microsoft and Apple have is not PHBs, but usability experts. People who actually have an education and years of experience in making it easy and obvious for the end user. People who will constantly ask themselves and the user "how can we make this better?" instead of jumping to the "RTFM, you fsking n00b!" answer.

    As was said, if you have to say "RTFM", then your UI has a problem. Doubly so if you're wantonly making the user learn a new interface instead of applying the standard skills he/she already has, and which would have solved the problem just as well.

    Briefly: You are coding for the user. Not for your own ego.

    That's something that Apple and Microsoft understood relatively early.
  • by serviscope_minor (664417) on Friday February 27, 2004 @05:50AM (#8406602) Journal
    Briefly: You are coding for the user. Not for your own ego.

    No. Plain wrong. If you're writing OSS there's a good chance you're writing it for yourself and releasing it for those who may find it useful. It is bizarre indeed that people think that what an OSS coder does in his spare time for fun should somehow be specifically for the benefit of other people. Talk about unwarranted expectations.

  • Re:In related news (Score:3, Insightful)

    by martingunnarsson (590268) <martin&snarl-up,com> on Friday February 27, 2004 @07:10AM (#8406762) Homepage
    iMovie and the other iLife apps are entry level programs designed to provide basic functions in a easy-to-use and easy-on-the-pocket way. If they could do everything the pro-applications could, nobody would buy the pro-apps. Makes perfect sense.
  • by martingunnarsson (590268) <martin&snarl-up,com> on Friday February 27, 2004 @07:28AM (#8406796) Homepage
    Yes, everybody expects this stuff to just work, and so nobody appreciates that it works flawlessly 99% of the times in Windows. Same thing with adding hardware, XP is really good at that.
  • by Tsu Dho Nimh (663417) <abacaxi@@@hotmail...com> on Friday February 27, 2004 @07:28AM (#8406798)
    I have repeatedly had the same problem ... whoever writes the help files and user documentation has NEVER follwed it step by step or watched a novice do it. They don't realize where their experience is filling in a critical gap in the information.
  • Ok, pull up the documentation in your car where it describes how to change the oil.

    Usually I have to get a Chilton's manual for that. Assuming of course I don't pop the hood, discern where the fill cap and a drain cap are, and try to read the capacity off the block. Or I could say fsck it and pay the service station to do it.

    Tinkerers don't need manual. Manual people know they need several. And consumers know they need to hire a pro.

    Car a bad example? Ok, when you bought your house, did it come with a document that tells you where all the wiring and plumbing are routed, and detailed directions on how to add new service?

    If you did, I really have to find out who your builder was. For me, I live in a 1910 era trinity. The house was rennovated at least twice. I recently discovered that all the outlets on the second floor go through one outlet box in bedroom. The hard way. I have old plumbing, new plumbing, and the electrical system is radically different than what would have been in the house as built. Assuming the house had electricity at all.

    Go on jury duty. Do you get a manual for that? How about getting married? Or having a baby? We do really complex things all without a guidebook. Even religion can be roll your own, or just show up twice a year and we take care of the rest.

  • by Tsu Dho Nimh (663417) <abacaxi@@@hotmail...com> on Friday February 27, 2004 @07:36AM (#8406821)
    The trick to getting dvdrecord to work is to know that it only supports "-dao" on most drives."

    Why doesn't the software help file clearly state that? The insistence that Linux users ferret out these tidbits in order to get something to work is what is making people stay with MSFT. I installed SuSE 8.2 and discovered that it didn't install a functional DVD burner even though it was distributed on DVD... there was vague mention of some things I had to acquire and install and configure if I wanted to use a DVD burner. To hell with that ... Win2000 happened to be available and the DVD burner software that came with the drive works fine wiith it.

  • by martingunnarsson (590268) <martin&snarl-up,com> on Friday February 27, 2004 @07:37AM (#8406823) Homepage
    I'm a design nerd, when can I start? I think the problem is no programmers will like newbie-friendly interfaces. My experience is that programmers think it takes too many clicks and too much extra work. I'm not talking about "Wizard" guides here, but basic interfaces. Programmers want direct control, beginners want user friendly interfaces. The programmers will have to stand back, they can use the command-line interface.
  • by Anonymous Coward on Friday February 27, 2004 @07:47AM (#8406864)
    you're so wrong, i don't know even know when to start.

    there's no motivation for organizations to participate in open source - nor make it user friendly. IBM won't do a darn thing to help usability because the only way you can make money with OSS is through services - thus making something usable isn't in their best interests.

    second, perl and python shouldn't be used for UIs. I'm not saying they can't, but they are definately the wrong tool for the job.
  • by moranar (632206) on Friday February 27, 2004 @07:59AM (#8406904) Homepage Journal
    Note: it's not because I'm trying to specifically exclude stupid users, it's just that it takes a hell of a lot more work to create a dumbed-down interface, and that these type of interfaces often make things slower ...

    Hint: a good interfase is not dumbed down. It's elegant. Just like code. If you treat users as idiots, they'll shun your software. If you make an elegant interfase (GUI, CLI, what have you) they'll use it.

  • by jp10558 (748604) on Friday February 27, 2004 @08:03AM (#8406921)
    And this thought process is why Linux will not take over the desktop. I don't know if this is a prevelant attitude in open source - but an average consumer doesn't want to contribute to the software - they want to USE the software. They are not looking to join a club or academic inquiry, they want to buy a computer and surf the net, type up a paper etc...

    Go buy windows

    Indeed.
  • Re:In related news (Score:2, Insightful)

    by dave420-2 (748377) on Friday February 27, 2004 @08:09AM (#8406952)
    I beg to differ - being ugly does add to its unusability. If a UI looks like a car crash, I'm less likely to want to wrestle with it...
  • by silverbax (452214) on Friday February 27, 2004 @08:17AM (#8406990)
    I agree wholeheartedly with the article, and it's not just CUPS. It's pretty much everything open source. Guys like me are very open to pushing open source into the workplace, but until these problems are solved, it will not happen. Period.

    An example of a good product made correctly is Mozilla.

    Mozilla was easy to roll out, starting with the development teams. I just told them, "run the installer". Then I show them tabbed browsing, javascript debugging and error description, and better W3C support...and BANG...50% of the developers are now using some flavor of Mozilla and/or Firefox.

    This is the ONE THING keeping OSS from real influence.
  • by djmurdoch (306849) on Friday February 27, 2004 @08:35AM (#8407076)
    The problem with bad GUIs and guides in open source software comes from the fact that creating a good user interface is the most boring and tedious programming task there is.

    No, that's not it at all. Programmers are great at creating tools to get rid of boring and tedious tasks. There are some good tools for removing the tedium of user interface design (Delphi, for example), but not open source ones. Even with the tools, it's not at all easy to put together a user interface that looks good, feels right, and works.

    The reason there are poor user interfaces for most software is that designing a good one is hard. There aren't many people who are good at it, and they are in high demand.

  • Splendid.... (Score:4, Insightful)

    by tiger99 (725715) on Friday February 27, 2004 @08:39AM (#8407092)
    I have been grumbling about setup and configuration issues for months, often on Slashdot, and I am delighted that someone as prominent as ESR has become aware of this type of problem.

    If we get some top-grade developers motivated to work in this area, it will all get fixed. I actually think that it will happen quite soon. XFree86 configuration is another place that comes to mind, just try even an advanced distro like SuSE, with a popular Nvidia card, and a 1600*1200 monitor, and you will see what I mean! it ends up in a black screen of death every time, because the stupid configuration program runs in X, misconfigures to the point that the monitor gives up (or goes bang?), and dies. The bit which is without excuse is that if you get it working with a manual edit of the config file, and later run Sax, it blows away all your hard work.

    SuSE is no worse than the others, in fact it is better than most, but like a lot of excrement found in the Redmond sewage system, it tries to be too clever without knowing all the facts.

    Samba is another thing that needs attention, same sort of reason. I have full sympathy with the Samba developers, there are only so many hours in a day, and they have to interwork with bug-infested, undocumented protocols that change as often as Sir Bill changes his underwear. So, it needs more people, working on the user and administrator interface. It does not help that every distro does its own thing, needlessly duplicating effort. In the case of Samba, almost all of the work could be common across all Linux distros, BSD, BeOS, Solaris, even the hated SCO.

    I hope these issues get serious action soon, it will enormously help in the process of getting OSS established on the desktop. It is even far more important than developing the next version of the kernel, after all we have reliable kernels now, thanks to the hard work of Linus and many others.

  • by hyphz (179185) * on Friday February 27, 2004 @08:48AM (#8407143)
    Although he might be right about OSS having poor UIs, it's really getting to the stage where there are so many things in general UI design that are broken that it's becoming ridiculous. Let's see:

    [i]Trying to be clever and failing[/i]. The author wanted server autoprobe. Funny, that, it wouldn't be the first time when I've wanted to tear a configuration system to bits because it insisted on using an autoprobe and offering a selection box, when I [i]knew[/i] where the appropriate server/connection was but couldn't select it because the autoprobe wasn't finding it and there was no free entry box. This even got to one stage where I had to manually edit an .INF file to add the connection name. Ok, UI folks, another principle to bear in mind: anything the computer knows may be wrong.

    [i]Using the passive voice[/i]. As in "the system is waiting for the Close Programs dialog box to be displayed". Um, excuse me? That's like me sitting in my office saying "I'm waiting for my work to be done". Just as it's my job to do my work, it's "the system"'s job to display the Close Programs dialog box, and it isn't doing it.

    [i]Abuse of OK and Cancel[/i]. I should not have to say that an error message is "OK". Unix had this alright with "Dismiss".

    [i]Nested OK and Cancel[/i]. Got IE? Tools, Internet Options, Delete Files. Are you sure you want to delete files? OK. Now you're back at the Internet Options screen, but there's still an OK and Cancel button showing. Does clicking Cancel cancel the deletion? Nope. So why is it there? Again, "Apply" and "Dismiss" avoid all of these.

    [i]Not saying why things are the case[/i]. Tell me why options are ghosted, tell me why errors occured. I know [i]you[/i] know why, because you just came off the if statement that checked the condition in question.

    [i]Confusing information with help[/i]. Information is possibly unrelated facts. Help is directed at progressing the task the user is doing. If you aren't smart enough to figure out how to do that, you can't offer "help", no matter what you name the button.

    [i]Non-temporal progress bars[/i]. The progress bar should show the % of time left, out of the total time the process will take. I don't care about the arbitary tasks your program breaks the function down into, I just want to know how long I have to wait. Oh, and a 100% progress bar should never appear. At 100% progress the task is done and the progress bar disappears. If you have other things to do with the results of the task, then from my POV as a user, that's all part of my wait so should be part of the task the progress bar allows for. Setting a progress bar to 100% should be an assertion failure.

  • I like the fact that the GNOME interface has remained fairly consistent over time. I don't have to re-learn everything with each release.

    That's one of my core complaints about Windows, too. I remember when Windows 95 came out, and I kept hitting that damn "X" button instead of the maximize button. And I was only twelve years old.
  • by Tsu Dho Nimh (663417) <abacaxi@@@hotmail...com> on Friday February 27, 2004 @09:17AM (#8407379)
    Simple - you need technical writers to write thehelp files and critique the GUI for you. Most technical writers are too busy (and too fed up with writing by the end of the day) to help much.

    There are many universities that have technical writing programs. If you asked their professors to assign or accept documentation for OSS as course work, you could probably find plenty of fledgeling tech writers who could join the project and clean up the writing and the GUI.

  • by OS24Ever (245667) * <trekkie@nomorestars.com> on Friday February 27, 2004 @09:34AM (#8407523) Homepage Journal
    I use iMovie to pull in my video of my 2yr old girl running around like a fool and send it to her grandparents on the other side of the north american continent.

    I've never found it unable to 'do what you need to do' other than the ability to make lasers shoot from her eyeballs or something fun like that.
  • by friedmud (512466) on Friday February 27, 2004 @09:36AM (#8407544)
    Dude, I'm sorry but I have to reply...

    About your "4 seconds to load home" thing. The problem is you aren't seeing the fact that Konquerer is ATLEAST 400% better than windows explorer.

    You can't do ANYTHING with windows explorer - you have to load up a hundred different programs to get the same functionality. With konquerer you can quickly preview just about ANY file format. You can open most formats directly in the window. You have tabbed browsing, in your file manager! (which internet explorer doesn't even have).

    You can connect to many different protocols (such as: smb://, http://, ftp://, nfs://, imap://, fish:// and a whole bunch more) and manipulate the files just as if they are on your local machine.

    And a WHOLE BUNCH MORE!

    Everyone keeps yelling at the KDE people because of startup times for opening the home folder. They keep comparing that time to opening My Computer. The problem is - that's like comparing the startup time between Windows 3.1 and Windows XP. Sure I could start 3.1 in .01 seconds - BUT WHAT THE HELL GOOD WOULD IT DO ME.

    Quit ranting about shit you don't stop to think about first.

    Derek
  • by Jerf (17166) on Friday February 27, 2004 @09:45AM (#8407643) Journal
    Some things are very rarely used but still important in some situations. Some options will rarely be used because they were not easy to find, which can also skew your stats.

    Way ahead of ya. (I have the bad habit of thinking about these things.)

    If there's a feature that requires three or four commands in succession, you should be able to see the drop-off over time. (Of course a feature should be as simple as possible, but sometimes you can't avoid the fact that they need to enter three or four bits of information, possibly in sequence.)

    If there's a pet feature that I like, but nobody uses it, at least this gives me an opportunity to ask why, rather then blindly assuming that it's being used and understood. (In other projects you can sort of get this by the number of people asking for features that already exist, but that's not as reliable.)

    I intend to process the preferences based on how many were twiddled by a given person, so if you only set one away from the default, it gets your "full vote", while if you twiddle lots, you show as caring about a lot of little features but not as much. (I'm thinking of scaling this logarithmically, so if you twiddle two features, you have like 75% interest in both; I don't care if they add up to 100%, I care if it shows what's going on.) As for commands, I intend to cut off the top X commands (which in this context are likely to be things like "Copy" or "Paste"), and go from there to see what people are actually using. Some commands, like "Open File from Web" may not see much use numerically, but still be very important, whereas "Move Up Paragraph" may be used bajillions of times, but technically, if it were removed it would only be moderately annoying overall.

    There's also the point of view of "How many people used this command more then three times (to get over people just "Trying it out")?" which I think would be interesting; if you've got some obscure data format that only 3 out of 2000 people use, you may want to pull it out into an optional plug-in that those three people can install, to get it out of the main menus, but still keep it around (as long as it is passing its unit tests...). It would also be easier for a very, very small group of people to maintain a plug-in, whereas they would have no interest in maintaining it if it were in the core program (and who could blame them?).

    Sure, interpretation will be tricky, but I think it will be doable, and without the data you're shooting in the dark.
  • by Junks Jerzey (54586) on Friday February 27, 2004 @09:49AM (#8407691)
    Note: I'm not trying to flame!

    There's a great difference between advocating something--Linux, in this case--and really opening your eyes, seeing both the good points and the warts. Far, far too much Linux advocacy has been of the blind variety. People who use Linux for a handful of geeky uses rant and rave about how its superior and how everyone should use it. When someone asks "But is there a program as good as Blah that runs under Linux?" The response is almost always an enthusiastic "Yes! There are dozens! And they're open source! The best one is XYZ." Then in reality the dozens turn out to be half-baked personal projects unsuitable for general use, and XYZ tends to be better, but nowhere near what the person is wanting in terms of polish and quality. Those endearing advocates who insist that The GIMP is on par with Photoshop come to mind.

    The next level of advocacy is realizing that this is true. JWZ, and now ESR, have followed this path, and many, many others who are not so egotistical.
  • by Tsu Dho Nimh (663417) <abacaxi@@@hotmail...com> on Friday February 27, 2004 @09:58AM (#8407804)
    "Anyway, the new k3b has support for dvd burning, and the underlying tool set includes the dvdrecord stuff. It works. Well."

    As I expected ... the traditional answer of "Try Yet Another Distro" when something that should have worked doesn't. Well, I've tired of TYAD ... I'd have to check my notes to see how many I actually have tried, but it's upwards of a dozen over the past two years.

  • by Tsu Dho Nimh (663417) <abacaxi@@@hotmail...com> on Friday February 27, 2004 @10:08AM (#8407914)
    Of course you have Windows XP Pro, Nero, and dvdrecord........ Which were all paid for, and legally licensed under your name. As your "copy" of autocad 2003, and all these beautiful softwares with EULA that to be ligitimatly use require you to PAY for the right to used them. Of course you did get all these legally. I know I miss the point.....

    Yes, you TOTALLY missed the point, which was that SuSE distributed a version on DVD, and despite knowing that the users were going to have a DVD player and maybe even a burner, didn't bother to make sure that burner and player software were installed and configured. They took the easy way out and expected EVERY user to track down the necessary information and download other files to install and configure the DVD burner/player.

    Implying that I am a software pirate helps Linux improve? How? I have a LEGAL copy of Win2000 and the DVD software that came with the burner is also legal. Looking at the Program files, everything I have on my system is legal: either FOSS or purchased.

    What WAS your point, anyway?

  • by Anonymous Coward on Friday February 27, 2004 @10:17AM (#8408001)
    please re-read his article... you really haven't understood a word he wrote...
  • Re:In related new (Score:3, Insightful)

    by cybergrue (696844) on Friday February 27, 2004 @10:41AM (#8408253)
    Apple and Microsoft seem to throw out their own guidelines whenever they feel the need to "innovate". There's no hope of improving usability if no one's allowed to experiment.
    Apple and Microsoft have large UA (User Assurance) departments that they can show existing and new UI designs to, and get feedback. This step is expensive, and as it involves non-geeks, is not done often in the FOS world. To make an interface user friendly, you need feedback from people who are not familiar with the system. People who are familiar with the system will say things like "Why would users do something like that", "Oh, to do that it would be easier to use the command line," or "RTFM." Whereas user who are not familiar with the system will have much different expectations, like being able to do what they want from the GUI, and not having to jump through a large number of hoops. Btw, this problem is not limited to FOS projects, but to all development that does not go through rigors UA step. In the book Insanely Great, Steven Levy gives a few anecdotes about how Apple got its first UI right. It involved bringing in computer illiterate people on a regular basis to try out the system while it was still in development. Feedback was given to the designers and programmer immediately about what had to be changed or polished up.

    Too many FOS projects just try to make the UI "the same as" Apples or MS's interface. This works if the project does the same thing as what is being copied (plus users can move over to the FOS product without much addition training), but breaks down if there are too many differences. This is what has happened here. I don't know if the CUPS team even designed the GUI or not, however it appears the GUI was not well thought out ER is ranting about.

    There is an additional problem here in that rigors UA does not currently fit very well into the FOS development model, and until we figure out a way to include it, then FOS projects will suffer from the "its too hard to use" syndrome. As I mentioned before, proper UA is expensive, and I fear that it will be done only for large and well funded projects. Some designers have a good intuition about what works and doesn't, and a crude form of UA could be done by showing the design to family and friends, but this has its own set of problems (but its still better then none at all)

  • by Greg W. (15623) on Friday February 27, 2004 @10:51AM (#8408359) Homepage
    Microsoft has already moved on and is creating virtual machine run-times and a DirectX hardware-accelerated desktop. Linux is still trying to get a desktop off the ground with "cute" names like KDE and GNOME

    Yeah, like "DirectX" isn't a cute name....

    the snappy responsiveness OS X and Windows XP have

    Windows XP isn't snappy. It spends at least half a second doing some stupid "fade in" instead of opening up a damned widget immediately. I guess this is supposed to make it less intimidating or something. That, and the Fisher Price colors. I don't get it, personally.

    (because to Linux users, registries magically = bad because Windows happens to have something called the "registry")

    No, registries are bad because they're opaque and complex. They fail, and when they fail, it's catastrophic. (AIX has a registry, too. It's called the ODM (Object Database M-something). I've been a professional AIX sysadmin, beginning with 3.1. I've seen ODM failures. They're not pretty.)

    I don't want one on my real computer. I'll let Windows have one, because you need one for Windows, and you need Windows for gaming. But my real computer should work the way I want it to, and for me that's ~/.xsession, fvwm, rxvt, mutt and vim. I know most of you don't share my view, and that's fine. You can have your CORBAs and your "Let's save the state of every application so we can bring them all back up when the user logs in, and they'll never have to edit a file to customize their desktop!", and I hope you enjoy it. But when it breaks, I'll just sit there and look at you. I won't have to say "I told you so". But you'll know that I'm thinking it.
  • by cybergrue (696844) on Friday February 27, 2004 @11:05AM (#8408487)
    Maybe Microsoft's usability design benefits from the fact that they have a bunch of pointy haired guys around, while the open-source projects exclusively consist of collections of Dilberts?

    Nahh, its the absence of Tinas [dilbert.com]on the project that are the difference. The tech writers and the User Assurance staff bridge the gap between the geeky (software)Engineers and the 'little people' who buy and use the product.

  • by jelaplan (757131) on Friday February 27, 2004 @11:09AM (#8408516)
    While this topic has generated mountains of discussion, I found only one mention of usability testing. In the case of setting up printers, a few user tests would have done wonders for revealing the barriers to success. The developer could probably fix such problems without trouble or if necessary document the critical impasses. While style guides and best practices are useful to someone building something, actual testing is invaluable for revealing critical, show stopping problems. Given how easy it is to test, it's a shame that more people don't use it to reveal weaknesses and improve their software.
  • by Anonymous Coward on Friday February 27, 2004 @11:14AM (#8408585)
    I thought the philosophy behind a unix-like OS was KISS, and one program for one purpose?
  • Re:In related news (Score:3, Insightful)

    by gjash (443298) on Friday February 27, 2004 @11:18AM (#8408631)
    There is no denying that windows is a magnitude better in actually getting something done on computers for the masses. As much as I keep installing Linux and hoping I can just boot it and it alone, it just can't happen now. I'm a "mass" actively hunting for an alternative to Microsoft and although Linux is getting closer it's a good 3 to 4 years away from even getting close to marginally replacing windows. Again, I say this as someone who is actively attempting to dump Windows. Show me a Linux program that can get near DVD Shrink so I can stop booting windows!! Please!! Or getting the TV out working on my system??
  • Classic. (Score:2, Insightful)

    by Overd0g (232552) on Friday February 27, 2004 @11:25AM (#8408712)
    The lack of recognition of the primacy of "ease-of-use" is a huge problem for open sourcers. This will be a difficult skill gap to bridge, because Microsoft is driven by profit (customers), and therefore will be incentivized to actually produce things that people, other than propeller-heads, want. The world really, really, really, doesn't give a rats a$$ about how elegant your design is, but because your reward system is based on peer approval, rather than "customer" (a concept that doesn't event exist in open source) approval, you'll never understand this.

    To summarize: making something complex is easy, making something simple (and useful) is very hard.
  • Re:Yep (Score:2, Insightful)

    by Golthur (754920) on Friday February 27, 2004 @11:30AM (#8408759)
    Exactly. ESR is right on the money on this one. If I (as Joe Sixpack) have to worry about editing a text file with vi (or EMACS, just to prevent a flame-war), then you've already lost me.

    The user interface for this should pretty much be:

    1. Joe clicks the Print button.
    2. CUPS says "You don't seem to have a printer set up, but I found this one on your network. Is this the one you want?".
    3. Joe says "Yes, dammit!"
    4. The document gets printed.

    Notice the absence of "File | Add New Printer..." and a lengthy wizard.

    This doesn't mean that CUPS *can't* have the funky text file with all the detailed configuration options for the ubergeek. In fact, for more complex networked situations, you *need* this level of configuration.

    But for your average desktop use, definitely not. Joe should never need to know that there even *is* a configuration file, unless he chooses to make himself aware of it.

    UI and engine tend to be completely separate in the Linux world, which in my view is *good design*. The problem is that, in the Open Source Community, we have lots of "engineers" and not too many "UI designers". Net effect: rock-solid, stable, highly functional programs with the *worst* UIs *ever*.

    What Linux needs is a dedicated team of UI people (*not* graphic designers, but actual usability people) that you (as an engineer) could submit your rock-solid, fantastic engine to, and *they* would make the UI for it, so you don't have to.

  • by viktor (11866) on Friday February 27, 2004 @11:36AM (#8408822) Homepage

    > The trick to getting dvdrecord to work is to know that it only supports "-dao" on most drives."

    Why doesn't the software help file clearly state that?

    I so agree with you, but I'd go even further: Why does the software not set this flag automatically if it's the only one that works?

    The luxury of ignorance. If only one flag works, and/or is required for correct operation, then I should not need to know about it at all.

    Unfortunately, writing such software is difficult and, most importantly, boring. It's not C00L to have written software which is trivial to use, and the FLOSS community is unfortunately still driven by the wish to become famous for having written something C00L.

    So what we should ask ourselves is: how do we make it 1337 to write software that grandma could use?

  • by Ilan Volow (539597) on Friday February 27, 2004 @11:51AM (#8408968) Homepage
    The second the Free Software community started trying to push their stuff on schools, governments, and corporations, every Free Software developer earned a moral obligation to improve the usability of their stuff and they lost the right to say "Quit whining about what you're getting for free". The instant you put your software in areas where people don't have a choice in the software they use, you are no longer "just a volunteer".

    Free Software Developers either need to make their usable or they need to stop their lobbying and go back to the server closet they came from.

    We talk about world domination, but we'll neither have it nor deserve it until we learn to do better than this. A lot better.--ESR
  • by rpk (9273) on Friday February 27, 2004 @11:57AM (#8409025)
    Apple Mac OS X printing uses Rendezvous AND CUPS to make sure that, in the absence of a user's choice, SOME printer is selected. It can't do this all the time, but normally, if you've got a printer connected somewhere on your network, you can print from another Mac without ever having to configure anything. Sure, Apple's configuration dialogs and printer management GUI is decent, but the real value is not having to see them at all.
  • Re:In related news (Score:3, Insightful)

    by webster (22696) on Friday February 27, 2004 @12:00PM (#8409067)
    What a delightful post. It criticizes someone for making an uninformed attack on Windows, then makes the same kind of attack on the Mac. Well, for the record, I regularly use Macs for playing video, and those problems are indicative of a bad user, not bad software.

    Actually, there is no such thing as a bad user, there is only bad software. And let's face it, at this stage in technology there is only bad software. Software repeatedly does what we tell it to do (using an obscure "language" we cannot possibly understand completely), not what we want it to do. Software obstinately refuses to learn from us no matter how loud we scream at it. Software - all software - sucks. Operating systems - all operating systems - suck. Each OS is better at doing some things than others. All OSs that currently exist do enough things well enough to attract a good many users. Some of those users get good enough at the "language" of an OS to be able to get the software to usually do a fairly decent approximation of what they want. Then they forget the effort that went into learning that "language", and get upset when asked to make the same effort for other platforms.

    It takes awhile to learn how things work on any platform, and only after that effort has been made can an opinion be considered informed. And anyone who has problems playing video on a Mac either has not made that effort, or has a faulty Mac.
  • by IndigoDarkwolf (752210) on Friday February 27, 2004 @12:52PM (#8409672)
    Your answer: Moneys! $ix-figures is incredibly 1337 in most denominations (Japanese need to add 2 more zeroes to enter "1337n3ss"), and it's actually plausible if you're really that good of a programmer and UI designer. Money is a wonderful incentive to write good GUIs, and all the good GUIs seem to be coming from corporate environments.

    The real problem is: Cool programmers who are writing new cool software for Unix don't usually give a [censored for the kiddies] about how user-friendly their software is, because the people who do get it working are smart and l33t (ie, their peers) and go "Hey, that's really cool".

    And Grandma's not one of our peers. She's an old lady we don't see very often who uses her brand-new $6,000 10-GHz Pentium VI with it's 1337 platinum-, gold-, and diamond-plated ThermoNuclearDevastationToOurCompetitors core to shuffle cards for 8 hours a day. And in the geek community she rates no sympathy for having lived through WWII, instead, she's berated for not having kept up.

    But when Grandma or Grandpa pays... well, it doesn't take a management systems degree to see the past trend.

  • by Hardwyred (71704) on Friday February 27, 2004 @01:06PM (#8409821) Homepage
    People seem to consistently miss the point of open source software. As an OSS user, you ARE the Beta tester, developer, end user and marketing department. Software is developed to scratch an itch, sent to the general public who then complain that it doesn't scratch their particular itch, the software is tweaked, made better, and before you know it we all have fleas!
    No wait, that's wrong. But you get the idea. It drives me nuts to see people harp on how poor an OSS piece of software is when they haven't done a single thing to contribute to that code. This is OSS folks, you dont just yell at a vendor that you paid money to (you did pay money right?) until they change their app. You have the source, resources are online everywhere to help you learn how to code. Use that energy towards fixing what you see as a flaw instead of complaining about it.
  • Re:In related news (Score:4, Insightful)

    by Lagged2Death (31596) on Friday February 27, 2004 @01:34PM (#8410139)
    It's not just ugly, it's pretty non-intuitive too.

    For example, what's the difference between "Save" and "OK?" Why are "Save" and "OK" in the middle of the dialog, in a seprate sub-pane? Why not put them at the bottom? What do the sub-panes indicate, anyway? Why is there a list of accounts in the account options dialog? Surely the options here apply to only one account at a time. How do I add a New Server on the "Novice Controls" page - type in the name and then -- what? The "Protocols" section - are those check boxes or radio buttons? If they're radio buttons with zero explanitory text, why not just use a combo box? What is the relationship between users and servers - and shouldn't this be obvious from the interface?

    The fact is, good user interface design is a discipline unto itself, and people who are good coders or good system architects aren't necessarily any good at UI design. It's hard, and it's full of trade-offs, like engineering is. It doesn't get the respect it deserves from anyone (with the possible exception of Apple, who still make a few horrifying blunders if you ask me). And I say this as someone who has been responsible for some UI design decisions, and who can see from that personal experience that he didn't (initially) appriciate the difficulty of the task and still isn't very good at it.

  • by Shurhaian (743684) <<ac.ocegoc> <ta> <satirev>> on Friday February 27, 2004 @01:48PM (#8410273) Journal
    Donning my flame-retardant suit right now, but:

    FreeBSD's handbook [freebsd.org] does a fair job. The chapter synopses state at the beginning what you should know / be able to do before reading, and what you WILL know / be able to do when you're done. It also has a reasonably extensive and thought-out bibliography, divided into overall categories(users vs. administrators vs. developers, etc). Also, its mailing lists are, in my experience, populated by quite friendly people - even if they don't have information that helps me(which they generally do), I don't feel like I'm being looked down upon for asking, even for the basics.

    Its installation can be a little hard for new users to grasp, especially the bit near the beginning about hard drive slices, but the information in the handbook helps ameliorate this. About the only thing I really miss from the install is a time estimate/percentage complete/whatever.

    Getting X set up correctly is the first major hurdle I run into, but now I more or less know how to work around my computer's instabilities and get things running.
  • by JLMore (757174) on Friday February 27, 2004 @02:02PM (#8410412)
    One of the (many) reasons that the various *ix's are better than the Massive Microsoft Monolith is that most programs are designed to do one thing (and only one thing). That means that most *ix programs come with a simple (read: stupid) user interface, usually from the command line or from STDIN/STDOUT. (Frequently, they have both.) Therefore, some digigeek can write the program that does the bit manipulation and only speaks geekish, but someone interested in User Interfaces can write an application that provides a clear and functional interface. The connection between the two may be a System call or a Pipe. What a simple and powerful idea: the developers that understand bits and hardware write the part that interests them and those that understand users can write the parts that interest them! The connection between the two is a standard interface. In Gates' world, everything is part of a single entity - Microsoft. If someone wants to add a new feature or improve an interface, that person must understand the entire monolith. User interfaces are completely controlled by M$. Although this guarantees a minimum acceptable interface, it leaves no room for growth. I have always thought the simple interface idea was one of the most powerful features of *ix. This is the reason there are multiple shells in *ix. It allows the possibility that programs with poor user interfaces can be easily improved, with encapsulation (wow, just like OOA/D).
  • by Tsu Dho Nimh (663417) <abacaxi@@@hotmail...com> on Friday February 27, 2004 @02:28PM (#8410720)
    "As an OSS user, you ARE the Beta tester, developer, end user and marketing department. "

    If you restrict your user base to those who can be all of the things you mention, including expert coders, you will never make it out of the geek ghetto. I'm the user. I do report bugs in the software I use frequently, so I guess I'm the QC persons too. I do not write code, not do I plan to learn how. When QC staff tells programmers they have a problem, it's the programmer's problem to fix it.

  • Re:In related news (Score:3, Insightful)

    by cayenne8 (626475) on Friday February 27, 2004 @03:19PM (#8411295) Homepage Journal
    I'm just learning about these tools myself...but, it appears there are a number of tools to do what you wish with Linux and DVD backup/create...

    They all seem to be commandline, though, which for me is fine. I do see some of them seem to have GUI tools you can use with them, but, from what I'm reading, people are just writing some custom scripts where they can control all aspects and do as they wish with the files...

    The tools I'm looking into are:

    • dvdrtools
    • libdvdcss
    • dvdauthor
    • dvdrip
    • dvdbackup
    • mkisofs
    Here's a thread I'm looking at [gentoo.org] as well as this thread [gentoo.org]

    Hope this helps. So far, looks like you can really do a lot with the linux tools, but, it isn't point and click. I remember seeing another thread that was pretty handy..used XML to create your own menuing system...will have to look for that one..

  • by Bob Uhl (30977) <.eadmund42. .at. .gmail.com.> on Friday February 27, 2004 @05:32PM (#8412449) Homepage
    Free Software Developers either need to make their usable or they need to stop their lobbying and go back to the server closet they came from.

    We don't need to do anything. Our software works well: it is more stable and produces better results than the competition's. Compare the output of *roff or LaTeX with Word. Compare the uptime of a Unix host with that of Microsoft's products.

    Yes, much of our software requires a bit of intelligence to use. So does a car. Any moron can make a pungee stake with a pocketknife: it takes skill to use whittling tools to make a statue.

    Not that there are not ways in which things can and should improve. esr is quite right that the CUPS setup process is ridiculously difficult (although I disagree with one of his points). He's quite right about the broad issue at hand: there's too much poorly designed software out there.

    There's a difference between difficult to learn and difficult to use. Things done once, then forgotten (like setting up a printer), should be easy to learn--effectively, every time you do 'em you're learning 'em again. Things learnt once, then used daily can get away with being difficult to learn so long as they are easy to use. The GIMP is a pain to learn--but it's incredibly powerful to use, and beats xpaint hands-down. LaTeX is somewhat difficult to learn--but its output is heart-rendingly beautiful, and beats everything else hands-down. The violin takes years upon years to learn, but a good piece of violin music beats all the guitar-and-drums pieces ever played.

    The problem is that some software is neither a guitar (easy to learn, but not as pretty to hear) nor a violin (difficult to learn, but beautiful to listen to), but is instead a Rube Goldberg contraption requiring seven hands, and instruction manual and three pet monkeys to produce a loud, raspberry-like sound.

  • by pigscanfly.ca (664381) on Friday February 27, 2004 @05:38PM (#8412504) Homepage
    So what ?
    We are working for free . If you want feature XYZ or documention on how to use XYQ then pay me .
    I will do what I want to do unless some one pays me some money.
    OO writers are , for the most part volunteers , you cant ask some one ,reasonably, to write documentation for free when all they wanted to do was build a cool app that did something interesting .
    If you want a nice GUI or documentation for over the money.
  • by jdunn14 (455930) <jdunn@NoSPaM.iguanaworks.net> on Friday February 27, 2004 @05:50PM (#8412591) Homepage
    It is nice to be able to use the login prompt to protect the access, but I was a little confused the first time I saw this prompt too. Thats not because root never occured to me, but it does feel a little wrong to enter my root password in some random dialog popped up by mozilla. I realize that it pointing at my local machine, but still, it just not a great way to do it. I try not to enter a root password in anything more than a console(or X) login prompt, an ssh login, or a sudo. Technically there's no real risk with cups, but eww.
  • by tc (93768) on Friday February 27, 2004 @05:54PM (#8412622)
    And I think you're missing the point of software. Software exists to make your lump of hardware useful for something other than a doorstop. In order to do that, it has to be useable by the people who want to use it. And unless you're writing a compiler, it's completely unreasonable to expect the majority, or even a significant minority, of your users to have software development skills.

    When those users complain about the crappy interface to your software, they are giving you feedback about your software. That's an important part of the development process. It may not be as l33t as writing C, but it's still part of software development. These people do not have the skills to fix the problems themselves. Nor is it in any way reasonable to expect them to aquire them in order to use your software.

    Furthermore, even if they do have the skills, it's still pretty unrealistic to expect them to fix the problem. Even the most prolific developer cannot possibly fix single-handed every bug or annoyance they encounter in every piece of software they ever use. The ramp up times on new codebases are just too high.
  • by Dirtside (91468) on Friday February 27, 2004 @08:25PM (#8413690) Journal
    Here's a hint: Fanboys of any stripe can never take criticism. It's nothing particular to OSS. Microsoft, Linux, Apple, Matrix, Star Wars, Star Trek, nVidia, ATI, Matrox, Blizzard, XBox, GameCube, PS2, Christian, Muslim, Scientologist... makes no difference. Fanboys are just a subspecies of zealot. And we are all hopefully aware of just how rational zealots tend to be.
  • by Minna Kirai (624281) on Saturday February 28, 2004 @04:08PM (#8418356)
    ...no mystery instabilities or DLL hell,

    Linux can have phantom instability too. Just install the closed-source NVidia drivers (to play those 3d games), and you too can enter the world of semi-predictable voodoo crashes.

    Oh, and on Linux they call it "libc/gtk/gcc version hell" instead.

This file will self-destruct in five minutes.

Working...