Open-Source Software and "The Luxury of Ignorance" 1471
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.'"
In related news (Score:5, Informative)
Here's all he actually says (Score:5, Informative)
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:
Thats fedora, not CUPS (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.
Re:Yeah, a real surprise (Score:3, Informative)
Network Printing != Aunt Tillie (Score:3, Informative)
The configuration problem is simple. I have a desktop machine named 'snark'. It is connected, via the house Ethernet, to my wife Cathy's machine, which is named 'minx'. Minx has a LaserJet 6MP attached to it via parallel port. Both machines are running Fedora Core 1, and Cathy can print locally from minx. I can ssh minx from snark, so the network is known good.
(my emphasis)
He's given up his right to claim newbie ignorance right there. Aunt Tillie couldn't even conceive printing through a network.
Re:Goddess? (Score:2, Informative)
http://www.principiadiscordia.com/
Re:My Fellow Slashdotters... (Score:2, Informative)
2. analyze down to the smallest detail; "This writer anatomized the depth of human behavior"
(www.cogsci.princeton.edu/cgi-bin/webwn)
Windows printer setup is just as bad (Score:3, Informative)
Re:In related news (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.
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 [apple.com]
IBM/Ease of Use/Design [ibm.com]
Microsoft User Experience and Interface Design Resources [microsoft.com]
KDE User Interface Guidelines [kde.org]
Since these links come from an older install of Mozilla, some may have changed.
I'll say this slowly so you can understand... (Score:3, Informative)
opensource fonts and printing successes (Score:5, Informative)
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
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)
Re:Yeah, a real surprise (Score:5, Informative)
I write code for a living. I can code in Perl, C++, C, VB6,
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.
Re:Why aren't macs more popular? (Score:2, Informative)
Oh yeah and they cost a lot.
What the hell are you using, Windows for Workgroup (Score:2, Informative)
On Windows XP on the machine the USB/Parallel Printer is attached to.
Start | Printers and Faxes | Select Printer | Right Click - Properties | Share Tab | Share this Printer | Type in a name, press OK. A little hand appears under the Printer Icon to show that it's shared.
On the Windows XP Network Client.
Start | Printers and Faxes | Add a Printer | Next | A Network Printer, or Printer attached to another computer | Browse for a Printer
Select the machine the printer is on, select the printer.
Driver get's installed automatically, test page prints, and it just f*ing works.
Re:In related news (Score:5, Informative)
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.
Re:Thats fedora, not CUPS (Score:3, Informative)
Re:Not neccessarily true (Score:4, Informative)
Printer manager in KDE 3.2 (Score:2, Informative)
Re:In related new (Score:2, Informative)
I'll have to recreate them here, but my other points were
(some of the problems can't be seen from the screenshots)
The ui of fetchmailconf is completely different from any other mail configuration program I have ever seen. (yes, IMO very different == less usable)
It suffers from the usability problem of "configuration modes" - advanced/beginner mode.
It segments the parts of the dialog very strangely
Poll interval is to be entered in unspecified units
If you click edit, it pops up an error telling you to select an item from the (empty) list.
I'll stop there, there is really a lot wrong with the program. I'm guessing you have never used the program, but it is definitely not a shining example of usability, not just due to its use of tkinter.
-Mark
Re:In related news (Score:5, Informative)
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.
Re:In related news (Score:1, Informative)
Re:In related news (Score:1, Informative)
Re:foomatic (Score:3, Informative)
2) foomatic-datafile -d hpijs -p HP-PSC_750 >
2) plug printer in
3)
4) http://localhost:631, add printer, not hard
As I said, I had to put in a bit of work up front learning that, but it's not that hard.
The downside is the extra effort required on my part to learn stuff. The upside is the cost and the freedom.
I'll tell you which I'll pick.
Re:Thats fedora, not CUPS (Score:3, Informative)
Re:In related news (Score:5, Informative)
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
What is an easy way to setup printing? (Score:4, Informative)
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?
Re:Are you saying... (Score:2, Informative)
Re:In related news (Score:3, Informative)
But that's where other 'professional' companies excel. They have the bucks to hire in these gurus. Like Keith Olhfs at NeXT, as one very well known example.
Open source has made strides, but, to quote James Tolkan (more or less) 'they need to be doing it bigger and better than the next guy'.
And that can cost $$$.
Re:In related news (Score:5, Informative)
Gnome Hig [gnome.org]
Dear god, the writer needs to get a clue (Score:3, Informative)
Aunt Tillie will not have multiple systems, let alone have a small personal LAN. She will have a boxed Gateway or Dell that comes preocnfigured with a printer. If she needs anything more done than plugging in cables, she will call you, her dear nephiew/niece, to come "fix her printer" for her.
What's more, most detect such things on install just fine. There's not much of a chance she'd not have her stuff set up physically prior to installing the software, if she ever felt so bold to try Linux.
The only people claiming that Linux is ready for the desktop of mere mortals - or will be anytime soon - need to get out more and meet some common folk. Computers in general aren't really ready for common folk, but they're lucradive enough for companies to sell them, and cool enough to make commoners want them anyway.
I digress.
Re:In related news (Score:4, Informative)
HINT: You can post on this thread to kill the points.
I Just Gave A Talk On This!!!! (Score:2, Informative)
http://abuzar.com/ [abuzar.com]
Please, feel welcome to give me feedback
Remember fetchmail, then? (Score:4, Informative)
* 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.
Re:Here's all he actually says (Score:3, Informative)
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.
Re:Dream system (Score:3, Informative)
Re:Here's all he actually says (Score:3, Informative)
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
Re:In related news (Score:4, Informative)
Re:I'd volunteer GUI designs... (Score:5, Informative)
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 [greenend.org.uk]
Most of it also applies to UI bugs.
Re:Here's all he actually says (Score:3, Informative)
Re:Here's all he actually says (Score:5, Informative)
Quote:
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?
Re:In related news (Score:3, Informative)
Re:In related news (Score:5, Informative)
Re:foomatic (Score:3, Informative)
That's a lot of typing. Not only is the parent post absolutely correct, but lots of typing introduces the possibility for typos. Typos make things not work. When something you don't really understand doesn't work it's very frustrating because you have no idea why it didn't work, and thus no idea how to fix it.
For example, you have no step 3.
Think of it this way: Every time a person has to touch something, the chance of them screwing it up (either by accident, apathy or by their own lack of knowledge) increases. Microsoft has reduced installing a printer to four "touches" - Plug in power, plug in data, press power button, click "okay".
You method required about 164 "touches" to type all that in... and that's not counting all the "touching" you have to do looking for and reading various documentation just to figure out how to do it in the first place!
Also, I'd like to ask how you know where "http://localhost:631" came from. Nobody associates printing with the internet (And EVERYBODY associated http:// is "the internet"...) This step is especially confusing. It's completely non-obvious. You can not use "experience" as an answer, because the average user will not have any.
Why can't "hotplug" do that for you?
The fact that much of the Linux community is so condecending towards users who "don't get it" isn't exactly helping the cause, either. Unless you're already established a name for yourself in one of the social circles it's almost imposible to get any real, straightforward, one-on-one help.
You also mention cost. I don't know about you, but my time isn't always free. This point has been brought up by other posters already.
And considering the Linux Revolution has yet to happen, despite it being heralded for years now, maybe one is better... I'll give you a hint in case you misinterpret it: Microsoft. It may be crap but it's crap everyone can use, and when you get right down to it the job gets done. That's a pretty steep mountain to climb.
=Smidge=
Windows doesn't even work like ESR says it does (Score:3, Informative)
In any case, Windows terminology dictates that a JetDirect is a 'Local' printer (in the sense that there is no computer on the network managing the print queue to qualify it as a 'Network' printer, equivalent to the Unix terminology of 'remote') and in order to set up such a printer one must Add a Port (Standard TCP/IP). It is at this point, and only at this point, where various versions of Windows will attempt to autodetect something. So ESR is giving Windows designers credit for far more than they've actually done
Re:In related news (Score:5, Informative)
Re:Why the arcana? Why not publish the knowledge? (Score:3, Informative)
The k3b site is http://www.k3b.org/ and there's a binary package up there for SuSE 8.2, so you don't have to do that really hard thing known as "compliling" or "figuring out how to read the INSTALL doc". Heck, you don't even have to go to google and click on the first link returned by a search for k3b - the homepage is linked right in the "about k3b" box in the application on your computer right now.
Re:In related news (Score:3, Informative)
Joel's 'UI Design For Programmers' [joelonsoftware.com]
Hamster
Read the Pre-FAQ (Score:3, Informative)
Re:Here's all he actually says (Score:3, Informative)
What piece of MS software reports statistics behind your back and non-optionally?
Seriously.
WinXP: When a program crashes, I get the little crash dialog asking if I want to send a crash report to them or not, with 2 buttons labelled "Send" and "Do Not Send". Depending on the app or the type of crash, I pick the appropriate response.
Office 2003 has a little icon in the Systray that asks me if I'd like to participate in helping them make it better blah blah. This went away promptly after I answered "No".
Media Player 9 has a checkbox on the front page of its Options dialog asking if I would like to send anonymous usage statistics. It's unchecked, for "No". I left it that way.
Real's RealPlayer (whenever I feel some strange demonic urge to install it) always defaults all those usage statistics options to "Yes". You get to choose those options during the installation, but it's obvious to anyone with any design knowledge that they're making it as difficult as possible to turn them off and deselect them (i.e. hiding the options at the bottom of a scrollable list in a dialog that's too small to begin with). Thankfully, their program crashes too much for me to even send them anything in the first place.
Re:In related news (Score:3, Informative)
What's a kernal?[1]
Seriously, though, it's just because you know Windows better -- I'm sure many Windows newbies would have a hell of a time with your backup procedure, as would those used to MacOS. Hell, I'm a sysadmin, supporting three different operating environments, and it took me about fifteen minutes to find and operate the CD-burning software on my friend's Windows 2000 machine.
On my home linux box, installing a DVD-RW and testing it only took me about five minutes, including boot time -- primarily because I'm more comfortable with Linux.
The big thing I get out of Linux, though, is flexibility; I have a backup script that does a very good job of backing up my system onto a single DVD-RW; I can have the backup running while I work on the machine, and with compression I get about 6G on the disk. It doesn't back up certain directories (my MP3 and movie collections, which are backed up elsewhere), and presents me with a nice summary when its done. Took ten minutes to write and test.
I guess my point is that, whichever system you know best and are more comfortable with will be easier.
[1] Sorry, couldn't resist. *grin*
What did he expect? (Score:2, Informative)
Re:In related news (Score:3, Informative)
Re:Anyone remember the Steve Jobs of yesteryear? (Score:3, Informative)
To me it doesn't matter that this problem was finally fixed; that the problem existed in the first place and that it took so long to fix (with many not considering it to be a problem) really says a lot about the KDE project in general.