Slashdot Mirror


Open-Source Software and "The Luxury of Ignorance"

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.'"

22 of 1,471 comments (clear)

  1. In related news by prostoalex · · Score: 5, Informative

    JWZ was trying to get video to play on his box. More than a year old, but still a good guide to interface design.

    1. Re:In related news by GMC-jimmy · · Score: 5, Informative
      More than a year old, but still a good guide to interface design.


      That isn't a 'good guide' at all! It's barely more than a rant if you can manage to read between the lines.
      Here's some useful links to UI design concepts.
      I got these from the default installation of Mozilla.
      Bookmarks > Mozilla Project > Developer Information > User Interface Design:

      Macintosh Human Interface Guidelines

      IBM/Ease of Use/Design

      Microsoft User Experience and Interface Design Resources

      KDE User Interface Guidelines

      Since these links come from an older install of Mozilla, some may have changed.
      --
      __________________________________
      Free your mind - Flush your toilet
    2. Re:In related news by GAVollink · · Score: 5, Informative
      It may be ugly, but in every case (save the shot behind the fetchmailconf link) there is a separate help button for every item. The "designed" link has a perfect example of a "probe for supported", as he is asking for in his article.

      Here's where I cave a little... On the last screen shot, it did take me a little too long to figure out that the password being asked for is listed in the topmost sub-section. However, I'm confident that the help button would have told me what I'm looking for.

      If anything, mrroach's post does point out smartly that the article is a plug to "do things more like I do". Yeah, not so "pretty", but sure as feces, it won't get Aunt Tilly too flustered.

    3. Re:In related news by Anonymous Coward · · Score: 5, Informative

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

      I routinely bittorent avi's and recode them as mpegs and use dvdauthor and dvdrecord to carry neat videos back to my parent's DVD player to show them. It bridges a generational gap.

    4. Re:In related news by Sentry21 · · Score: 5, Informative
      That isn't a 'good guide' at all! It's barely more than a rant if you can manage to read between the lines.


      It would seem JWZ would agree with you:

      Then in January, the jackasses over at Slashdot posted a link to it, calling it a "review" of Linux video software. I guess you could consider it a review, if you were to squint at it just right. But really what it is is a rant about how I had an evening stolen from me by crap software design.

      It's a rant, pure and simple.

      --Dan
    5. Re:In related news by polin8 · · Score: 5, Informative

      For completeness:
      Gnome Hig

    6. Re:In related news by mingot · · Score: 4, Informative

      I guess the person who modded me up didn't realize that the scenario I described above is using Dvd Shrink + Nero + Windows.

      HINT: You can post on this thread to kill the points.

    7. Re:In related news by sinistral · · Score: 4, Informative

      XEmacs compiles with no problem on Mac OS X (assuming you have X11, the Developer Tools, and the X11 SDK). It's also available from DarwinPorts.

    8. Re:In related news by Anonymous Coward · · Score: 5, Informative

      If you configure emacs with '--with-carbon --without-x' you get a carbonised version of xemacs, which is absalutely the best emacs there is. Doesn't need X11 and looks great. You need to have texinfo installed beforehand. See 'http:/ /members.shaw.ca / akochoi-emacs /'.

    9. Re:In related news by cloudmaster · · Score: 4, Informative

      I guess that you didn't realize that's pretty similar to K3B's DVD copy function (or a couple clicks shy of K3B's "make eMovix disk") - on Linux. :)

  2. Here's all he actually says by JoshuaDFranklin · · Score: 5, Informative
    Here's all he actually says (it's at the end):

    So, if you are out there writing GUI apps for Linux or BSD or whatever, here are some questions you need to be asking yourself:

    1. What does my software look like to a non-technical user who has never seen it before?
    2. Is there any screen in my GUI that is a dead end, without giving guidance further into the system?
    3. The requirement that end-users read documentation is a sign of UI design failure. Is my UI design a failure?
    4. For technical tasks that do require documentation, do they fail to mention critical defaults?
    5. And, most importantly of all...do I allow my users the precious luxury of ignorance?
    1. Re:Here's all he actually says by shellbeach · · Score: 3, Informative

      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.

      Actually, one of his mistakes was that he tried to use some crappy distro-based config tool, rather than CUPS native web-based admin tool (hint: point your browser at localhost:631) That's pretty easy to use if you know anything about computers, and has direct links (via the web) to all the CUPS documentation.

      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.

      Well, it probably doesn't help that the people who wrote CUPS are now pushing (or so it seems - click on the "Get drivers" link on the www.cups.org page) a commercial front-end (with extra drivers) called ESP Print Pro, one of the features of which is that it "Provides easy to use GUI and WWW interfaces". Which would seem to imply that there is a deliberate effort not to extend the CUPS user interface.

    2. Re:Here's all he actually says by Anonymous Coward · · Score: 3, Informative

      I have been reading the threads on Slashdot for about a year now to try to keep with the development of a Linux desktop for general use. More people than you may realize despise using Windows and anything put out by Microsoft. More people than you can imagine outside of your vacuous world have been trying desperately to hold out for an easy Linux OS and Desktop and not go to XP.

      I have tried to overlook the condescending and patronizing references to anyone outside of the "community" as "Joe Six-pack", clueless, etc, and attributed the remarks to immature high school kids who seem to post here.

      But apparently I was wrong.

      I am not a code slinger therefore by the Slashdot definition I am stupid? I get it now. The "Community" is nothing more than a bunch of pedantic self important children.

      Eric Raymond is a grown up. If you take him seriously and listen to what he is trying to tell you then you may actually accomplish something with your collective "brilliance". In the process you may learn a thing or two from the unwashed masses. You might even have an epiphany and realize that although you think you know everything there is to know you aren't always right.

      And ...yes.....there is a willingness to pay real money for an alternative to Windows by the clueless.

    3. Re:Here's all he actually says by FreeForm+Response · · Score: 5, Informative

      I know you're not supposed to read the article and all, but..

      Quote:
      ...It redirected me to http://localhost:631/ which was OK, though the redirect went by too fast.

      And I found myself looking at a web page that was not obviously useful for troubleshooting my problem. I tried clicking on the button marked "Administration" in hopes the tool behind it would be a bit more discoverable than the configuration. I got a password prompt.

      Hello? How am I supposed to know what to do with this thing?

  3. Thats fedora, not CUPS by bluGill · · Score: 5, Informative

    The problem is in Fedora, not Cups. Cups works just fine, and more or less like he wants it to, if that is all you ever use. Fedora, using whatever configuration system it uses placed some unuseable stuff there.

    Granted Cups could use a lot of help, but he wasn't using a Cups configurator, he was using some other configurator that can work with not only Cups, but also SMB, LPR, and a bunch of other stuff. I don't know the solution, but bashing the Cups guys won't get you any closer to it.

  4. Windows printer setup is just as bad by Geordie+Korper · · Score: 3, Informative

    Last I checked to print to a network printer under Windows using IPP or LPR you don't choose Network, but instead choose Local. Network printing really means print server printing under Windows, but esr somehow holds that up as an example of a standard to live up to? No thanks. CUPS may be a little rough, but at least when I connect to a printer using ethernet I don't have to choose non-network as the printer type. Of course really it is a print device under windows since according to Microsoft Introduction to Network Printing "The printer is the software interface between a print device and the print clients". Yeah right.

  5. opensource fonts and printing successes by WillAdams · · Score: 4, Informative

    And here I was all set to moderate. Oh well.

    pdfTeX, Latin Modern, and FontInst to name three opensource projects involving fonts and printing which are absolutely fabulous.

    pdfTeX in particular is so robust it's used to do things like provide railroad timetables on-demand and to run commercial printing imposition systems. Take a look at http://custompub.aimsapp.com to see an interactive example.

    Latin Modern is an excellent example of taking an opensource thing (the venerable Computer Modern), applying a new opensource application (MetaType1) and getting a new result (an up-dated and corrected and Type 1 font which is Unicode encoded so as to be suitable for use w/ a wide variety of the world's languages)

    FontInst (a font installation utility for TeX written in TeX) is in a class by itself, and anyone who wants to be humbled should read _The TeXbook_, then look at its source code. Amazing. The only thing in the same class is the BASIC interpreter BASIX which was written in TeX (find both on http://www.ctan.org)

    Other new and up-and-coming projects include: Scribus (page layout) and Cenon (drawing) and pfaedit (interactive font editing). If there were only alternatives to / equivalents of Adobe's TouchType.app, Fauve Matisse / Corel Painter / Alias Sketchbook (natural media painting) and Creaturehouse Expression (and a handwriting recognition program), TeXView.app (IPC .dvi preview and a TeX eq -> eps Service) I could switch to open source for all my work.

    The want of something like to Creaturehouse Expression is especially painful since Microsoft bought out Creaturehouse last year, and despite a promise, purchasing of the program did _not_ come back on-line in November of 2003.

    William
    (PS - and Latex3 should be in the works soon now that _The LateX Companion, 2nd Edition_ is soon to hit the presses)

    --
    Sphinx of black quartz, judge my vow.
  6. Re:Yeah, a real surprise by dcam · · Score: 5, Informative

    Then why keep saying Linux is ready for the desktop? Why WHY WHY?

    I write code for a living. I can code in Perl, C++, C, VB6, .Net, ASP, Javascript, HTML, VBS, PHP, SQL, VBA. The only commonly used languages (scripting and other) that I haven't write code in that I am aware of are Java and python and I've read a fair bit about java. I write my utilities to manage my computer, for example I coded a quick C++ app to manage my backups recently and I coded a perl utility to find duplicate bookmarks in my mozilla. I'm trying to establish here that I'm pretty technically oriented.

    Guess what? I don't run linux. There are two reasons:
    1. I write code generally for windows and occasionally I take work home.
    2. I don't have hours on end to spare learning how to use Linux effectively.

    I love the idea of Linux and at times have made the attempt to migrate my desktop to Linux, with the plan of starting by dual booting, and migrating my environment across bit by bit. Well guess what: each time the GUIs didn't work and I spent half my time hacking around in RC files. You get *awfully* tired of that after a while (or I did).

    I might think about running Linux for servers, but I want to see a lot more work of the quality of knoppix done before I consider it with making the effort. Unless of course I get fired and have a lot of spare time on my hands.

    If you want linux to achieve market acceptance it must be written to work for the dumb home users and it has a hell of a long way to come.

    PS I'm not interested in being told that Ruby, D, ALGOL, Brainf**k or $favorite_language are commonly used languages.

    --
    meh
  7. Re:Not neccessarily true by KingOfBLASH · · Score: 3, Informative
    1. xinetd isn't enabled by default on the "normal" settings because it's assumed if you need it you're saavy enough to set it up and edit the config files.
    2. Mandrake comes with webmin, so you don't need to go through the process of editing files by hand if you install the webmin RPM.
    3. If you use the mandrake "printer drake" it is relatively straightforward to set up new printers
  8. What is an easy way to setup printing? by failedlogic · · Score: 3, Informative

    My question is - How can *I* easily setup a printer in Linux? Without the easier GUI offered by KDE or GNOME, I've found CUPS and other printing systems virtually impossible to configure. I have an HP5L printer. I'm really happy to see ESR write about this.

    I'm a fairly adept technical user. I prefer to use Slackware and a bare minimum Window Manager ie Window Maker. KDE and GNOME offer nice GUIs to configure CUPS but its overkill to install either to setup a printer.

    I've been planning on switching all my essay writing to Linux for practical reasons. One of the only reasons I'm using Windows to do work on is that printing is really hard to setup on 'Nix. I'm not using a lot of fancy fonts - mostly Times - but I do all my writing in either OO or AbiWord. My understanding is that of the older printer daemons don't work/output.

    What options do I have?

  9. Remember fetchmail, then? by 0x0d0a · · Score: 3, Informative

    ESR also did fetchmail. Fetchmail has an *excellent* configuration interface.

    * First, the config file is simple and small. A typical configuration should be simple and small. Take a look at the difference between the size of a basic sendmail and a basic postfix installation, and you'll notice an astonishing size difference -- thousands and thousands of lines.

    * Second, fetchmail enjoys good defaults. If you enter the minimal set of options in the config file, it generally works properly.

    * Third, and this is the biggie, fetchmailconf is an excellent GUI config tool. It can autodetect most of the configuration, and if there are multiple supported protocols/auth methods, it uses the "best", which is really better than most commercial email clients can do. Note that one *still* has full access to the simple, readable output that it produces. It doesn't hide anything from you at all, so it doesn't hurt power users that know exactly what they want the software to do, but it makes things much easier for new users.

  10. Re:I'd volunteer GUI designs... by warrax_666 · · Score: 5, Informative

    Maybe it has something to do with the way you point out those flaws...?

    If you're a programmer working on something which scratches your itch, there a good chance that you already know how your own program works. Having someone come and say "Nonono, this interface is crap!" without actually providing suggestions for how to make it better is annoying at best.

    Annoying as it may be, the "program your own version" may also be a valid argument from the programmer's perspective. If changing a UI is a lot of work, then the programmer may not actually have the time (or motivation; remember they've already scratched their own itch) to implement your set of changes. But you can still do it or get someone else to do it if you feel strongly enough about it. Remember, what you're getting is free (probably as in beer and freedom), so the programmer has no moral obligation to do anything for you.

    But I've usually found that if you are polite and above all humble when you suggest fixes (be it UI fixes or regular bug fixes), then people will usually do it out of the goodness of their hearts. Btw, you might check this link:

    How To Report Bugs Effectively

    Most of it also applies to UI bugs.

    --
    HAND.