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.'"
Why aren't macs more popular? (Score:3, Insightful)
Open Letter to ESR (Score:-1, Insightful)
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)
Igorance and the double edged sword (Score:5, Insightful)
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).
Re:Here's all he actually says (Score:5, Insightful)
Re:Luxury of Punditry (Score:5, Insightful)
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)
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)
Re:Open Letter to ESR (Score:5, Insightful)
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.
Its really interesting ..... (Score:5, Insightful)
Linus has been talking about this recently, are we going to start seeing things like Linusorganizer, Linword??, hehe, that would be nice.
Eric, we love you but... (Score:2, Insightful)
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)
Re:Bah (Score:3, Insightful)
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.
Re:Igorance and the double edged sword (Score:5, Insightful)
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)
Re:who's we? (Score:5, Insightful)
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.
Re:Open Letter to ESR (Score:5, Insightful)
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.
the user is the bridesmaid, the admin gets laid (Score:5, Insightful)
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)
He's right (Score:5, Insightful)
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)
Yep (Score:5, Insightful)
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)
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.
Re:Here's all he actually says (Score:3, Insightful)
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)
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.
Re:Why aren't macs more popular? (Score:4, Insightful)
Re:Open Letter to ESR (Score:5, Insightful)
It's attitudes exactly as yours that will relegate Linux to a niche. You are not helping Linux and OSS, you are hurting it.
Re:Luxury of Punditry (Score:5, Insightful)
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.
I think you forgot to wear your glasses (Score:3, Insightful)
Insightful article, but... (Score:5, Insightful)
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*.
Predicatable Failure vs, Random Success (Score:4, Insightful)
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)
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)
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
Good Article but... (Score:5, Insightful)
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)
Your ignorance answers the question (Score:3, Insightful)
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)
So, in advance, yeah, I do want fries with that.
OSS Fanboys Can't Take Criticism (Score:5, Insightful)
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.
I wonder if the distro isn't the problem (Score:3, Insightful)
It seems to me that at least one major locus of the problem is being missed here. ESR says:
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.
Re:Why aren't macs more popular? (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:5, Insightful)
Re:Your ignorance answers the question (Score:5, Insightful)
MS network printer setup worse (Score:5, Insightful)
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.
Re:Here's all he actually says (Score:5, Insightful)
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
Re:Here's all he actually says (Score:4, Insightful)
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.
Re:Yeah, a real surprise (Score:4, Insightful)
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 thoughtOSS developers often miss the point (Score:5, Insightful)
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
Re:Here's all he actually says (Score:5, Insightful)
Eric, are you posting under a new name? (Score:3, Insightful)
Re:In related news (Score:0, Insightful)
Dream system (Score:4, Insightful)
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
Re:Yeah, a real surprise (Score:5, Insightful)
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?"
Re:Your ignorance answers the question (Score:4, Insightful)
Re:Eric, we love you but... (Score:5, Insightful)
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
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).
Re:Not neccessarily true (Score:5, Insightful)
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.
Re:Not neccessarily true (Score:5, Insightful)
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....
Re:Here's all he actually says (Score:5, Insightful)
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)
Re:My experience (Score:4, Insightful)
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.
Re:Yeah, a real surprise (Score:5, Insightful)
Interface Design 101 (Score:5, Insightful)
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)
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.
CUPS killed my printer, sorta. (Score:3, Insightful)
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.
For Once ESR is Dead On The Money (Score:5, Insightful)
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
god damnit this guy is 100 percent right (Score:4, Insightful)
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
Re:Your ignorance answers the question (Score:3, Insightful)
Re:Here's all he actually says (Score:2, Insightful)
People like this hurt the Linux/OSS movement more than they help it.
Re:Dream system (Score:2, Insightful)
What do you feel that Linux provides that Mac OSX does not? OSX is "stable" and "etc."
Re:Eric, we love you but... (Score:2, Insightful)
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.
Re:Network Printing != Aunt Tillie (Score:1, Insightful)
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!
Re:Igorance and the double edged sword (Score:4, Insightful)
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.
OSS - Always third place? (Score:2, Insightful)
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)
Re:Eric, we love you but... (Score:2, Insightful)
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.
Re:Not neccessarily true (Score:1, Insightful)
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.
Re:Not neccessarily true (Score:3, Insightful)
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.
Re:Yeah, a real surprise (Score:3, Insightful)
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 /.?
Re:the user is the bridesmaid, the admin gets laid (Score:2, Insightful)
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)
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)
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.
Re:Here's all he actually says (Score:3, Insightful)
User Interface Design is hard! (Score:4, Insightful)
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.
Raymond said it himself (Score:5, Insightful)
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.
Re:ad-hominem IS the argument (Score:5, Insightful)
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.
Re:Why aren't macs more popular? (Score:5, Insightful)
Re:Here's all he actually says (Score:5, Insightful)
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.
Re:Open Letter to ESR (Score:3, Insightful)
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?)
Re:Yeah, a real surprise (Score:3, Insightful)
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).
Re:Network Printing != Aunt Tillie (Score:5, Insightful)
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.
Re:Here's all he actually says (Score:5, Insightful)
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)
Take a look again and tell me why
#1 There are ok/quit/save buttons at the top and what they apply to,
He's exactly right. Here's how to fix it. (Score:5, Insightful)
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:
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)
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)
http://www.linuxjournal.com/modules/NS-arti
"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-arti
Re:foomatic (Score:5, Insightful)
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=
Re:Why aren't macs more popular? (Score:2, Insightful)
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
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.
What needs to be done (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:2, Insightful)
Re:Take Your Lumps, People (Score:2, Insightful)
Re:Here's all he actually says (Score:3, Insightful)
m$ does not force the coders to build the interfaces.
Re:OSS Fanboys Can't Take Criticism (Score:3, Insightful)
It clearly isn't "just a hobby" for me -- my company pays me to work on it...
Re:Here's all he actually says (Score:5, Insightful)
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.
There are two kind of vegetarians. (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:5, Insightful)
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)
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.
Re:Yeah, a real surprise (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:5, Insightful)
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.
Windows isn't much better (Score:4, Insightful)
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)
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
ESR is Right (Score:5, Insightful)
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
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.
ESR's rant reminds me of... (Score:2, Insightful)
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.
Mod this -1: The truth hurts. (Score:4, Insightful)
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)
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.
Re:Luxury of Punditry (Score:2, Insightful)
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.
Why Initialization is a Low Priority (Score:1, Insightful)
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)
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.
Have you documented it? (Score:3, Insightful)
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.
Re:god damnit this guy is 100 percent right (Score:4, Insightful)
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)
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.
Re:Here's all he actually says (Score:5, Insightful)
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
Re:Why aren't macs more popular? (Score:2, Insightful)
WRONG (a bit) (Score:3, Insightful)
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)
Re:Interface Design 101 (Score:2, Insightful)
Don't use CUPS (Score:1, Insightful)
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
3. Create an
--------cut here---------------
myprinter:\
--------cut here---------------
4. Fire up lpd
5. Use a utility like "mpage" format your doc and send it to the printer.
mpage -Pprinter1 doc
Re:Take Your Lumps, People (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:2, Insightful)
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.
Re:What the hell are you using, Windows for Workgr (Score:4, Insightful)
So, I guess TCP/IP is not considered a network, according to Microsoft.
Re:Your ignorance answers the question (Score:3, Insightful)
Mac is easy to use, pretty, and expensive. PC is cheap and fast.
Cheap and fast are fairly convincing by themselves, usability be damned.
Re:For Once ESR is Dead On The Money (Score:2, Insightful)
Fonts and printing? (Score:3, Insightful)
(I finally got ALSA working properly last week.)
Re:In related new (Score:3, Insightful)
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.
Re:JWZ and usability (Score:5, Insightful)
KDEPrint not CUPS (Score:4, Insightful)
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.
Re:User Friendliness Reserved for Macs... (Score:2, Insightful)
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...
Is Windows any better in this regard? (Score:4, Insightful)
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.
Nail, head, hit right on there... (Score:4, Insightful)
Re:Are you saying... (Score:3, Insightful)
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.
My take on the "click OK to click OK" disease. (Score:5, Insightful)
"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:
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.
Re:what I'd really like... (Score:3, Insightful)
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
Re:Here's all he actually says (Score:4, Insightful)
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?
Now there's a good point: (Score:5, Insightful)
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)
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)
PC here. Printer there. Make it so.
In clear, precise, EASY directions.
Re:Thats fedora, not CUPS (Score:3, Insightful)
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)
Someone had to say it.
Re:JWZ and usability (Score:2, Insightful)
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)
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.
Grandmother sucking eggs (Score:5, Insightful)
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)
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.
Re:Here's all he actually says (Score:5, Insightful)
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)
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].
Re:Here's all he actually says (Score:2, Insightful)
Re:Here's all he actually says (Score:3, Insightful)
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.
Re:He's exactly right. Here's how to fix it. (Score:3, Insightful)
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.
In case you missed it... (Score:5, Insightful)
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.
Re:"Shaking like France" (Score:2, Insightful)
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?
Re:Interface Design 101 (Score:1, Insightful)
...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
Re:Here's all he actually says (Score:3, Insightful)
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)
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.
Developers: Answer, but also fix (Score:5, Insightful)
Re:My experience (Score:3, Insightful)
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.
I'd volunteer GUI designs... (Score:5, Insightful)
Then I realize I don't want to work with a bunch of anti-social programmers.
An end-user's perspective (Score:4, Insightful)
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.
Re:OSS developers often miss the point (Score:2, Insightful)
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...
Re:Here's all he actually says (Score:5, Insightful)
Re:100% correct and nicely said. (Score:1, Insightful)
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."
Re:Here's all he actually says (Score:5, Insightful)
Honest truth? Here it is... (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:2, Insightful)
Re:Anyone remember the Steve Jobs of yesteryear? (Score:5, Insightful)
BTW, I've liked your previous posts regarding linux usability, for what it's worth.
Construction, not just prescription (Score:2, Insightful)
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.
Re:Raymond said it himself (Score:2, Insightful)
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.
Thats where money comes into picture!!!! (Score:4, Insightful)
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.
Damn good screed... (Score:3, Insightful)
Re:foomatic (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:5, Insightful)
It's not his mistake to use the only "obvious" tool that's available on his box to setup the printer.
Re:Here's all he actually says (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:5, Insightful)
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.
Re:Okay, I've gotta say it (Score:2, Insightful)
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. )
Re:CUPS killed my printer, sorta. (Score:3, Insightful)
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
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.
Whoa! That UI sucks too (Score:3, Insightful)
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.
the Gnu that failed (Score:1, Insightful)
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.
Re:Not neccessarily true (Score:2, Insightful)
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.
Re:Here's all he actually says (Score:4, Insightful)
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)
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)
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".
Who's being igno-rant here? (Score:5, Insightful)
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.
Problem with the programmers (Score:5, Insightful)
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.
Re:Here's all he actually says (Score:3, Insightful)
- 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.
Re:Here's all he actually says (Score:2, Insightful)
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)
Re:Here's all he actually says (Score:3, Insightful)
So, it wasn't just me!!! (Score:3, Insightful)
Re:Here's all he actually says (Score:3, Insightful)
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.
Why the arcana? Why not publish the knowledge? (Score:5, Insightful)
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.
Re:Now there's a good point: (Score:4, Insightful)
Re:Are you saying... (Score:1, Insightful)
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.
Re:Here's all he actually says (Score:2, Insightful)
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.
Re:Not neccessarily true (Score:2, Insightful)
Go buy windows
Indeed.
Re:In related news (Score:2, Insightful)
This is the issue with open source, I'm afraid (Score:5, Insightful)
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.
Re:Problem with the programmers (Score:3, Insightful)
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)
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.
It's not just Linux, though... (Score:4, Insightful)
[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
[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.
Re:Anyone remember the Steve Jobs of yesteryear? (Score:2, Insightful)
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.
How to get others to do TFM and TFGUI for you! (Score:4, Insightful)
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.
I don't feel limited in iMovie (Score:3, Insightful)
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.
Re:At its current rate, there won't be a "big year (Score:4, Insightful)
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
Quit ranting about shit you don't stop to think about first.
Derek
Re:streamlining for most users (Score:3, Insightful)
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.
Seems all Linux zealots end up this way (Score:5, Insightful)
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.
Re:Why the arcana? Why not publish the knowledge? (Score:3, Insightful)
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.
Re:Why the arcana? Why not publish the knowledge? (Score:5, Insightful)
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?
Re:ESR : You Ignorant Lazy Moron :) (Score:1, Insightful)
Re:In related new (Score:3, Insightful)
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)
Re:At its current rate, there won't be a "big year (Score:3, Insightful)
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.
Re:Here's all he actually says (Score:2, Insightful)
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.
Usability testing: an easy but powerful tool (Score:2, Insightful)
Re:At its current rate, there won't be a "big year (Score:1, Insightful)
Re:In related news (Score:3, Insightful)
Classic. (Score:2, Insightful)
To summarize: making something complex is easy, making something simple (and useful) is very hard.
Re:Yep (Score:2, Insightful)
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.
Re:Why the arcana? Why not publish the knowledge? (Score:5, Insightful)
> 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?
No Migration Without Representation (Score:5, Insightful)
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
The Best UI is No UI (Score:2, Insightful)
Re:In related news (Score:3, Insightful)
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.
Re:Why the arcana? Why not publish the knowledge? (Score:2, Insightful)
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.
Re:Why the arcana? Why not publish the knowledge? (Score:3, Insightful)
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)
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.
Re:Eric, we love you but... (Score:2, Insightful)
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.
The Strength of *ix vs Microsoft (Score:4, Insightful)
Re:Why the arcana? Why not publish the knowledge? (Score:3, Insightful)
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)
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:
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..
Re:No Migration Without Representation (Score:3, Insightful)
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.
Re:Because he's a USER (Score:3, Insightful)
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
If you want a nice GUI or documentation for over the money.
Re:Here's all he actually says (Score:2, Insightful)
Re:Why the arcana? Why not publish the knowledge? (Score:3, Insightful)
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.
Re:OSS Fanboys Can't Take Criticism (Score:3, Insightful)
Re:Sorry, almost forgot... (Score:2, Insightful)
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.