Open-Source Software and "The Luxury of Ignorance"
Bootsy Collins writes "Using the recent experience of trying to configure
CUPS
on his home network, Eric Raymond has
written an interesting new screed on poor design of user interfaces in general, and configuration interfaces in particular, in open source software, entitled
The Luxury of Ignorance.
A sample quote: 'This kind of fecklessness is endemic in open-source land. And it's what's keeping Microsoft in business -- because by Goddess, they may write crappy insecure overpriced shoddy software, but on this one issue their half-assed semi-competent best is an order of magnitude better than we usually manage.'"
JWZ was trying to get video to play on his box. More than a year old, but still a good guide to interface design.
So, if you are out there writing GUI apps for Linux or BSD or whatever, here are some questions you need to be asking yourself:
Well, if ease-of-use is paramount, why aren't Macs more popular?
There's your problem right there "I have a desktop machine named 'snark'."
- Nick Busey
www.pedalbmx.com
www.nickbusey.com
That's not necessarily true. Mandrake set up CUPS and just about everything else I've needed with no problems at all. It's all about what you're doing. For some programs under some distros you need to be a programmer to install and / or set them up. Under other distros, and with other programs, it can be a breeze. (Just look at how well Knoppix does!)
I had a very hard time configuring cups for the first time, but after I learned how to do it, it proved to be '''much''' easier to administer and manage than it is in windows. It was also easier to change configurations without breaking multiple user's print settings. This is true with a lot of open source things. Hard at first, but once you get the hang of it, there is no going back.
The Television Wiki
What a rant! Im going to send mod points to Eric Raymond's house by mail.
Ignorance and the user won't step out of their bounds beyond their Internet Explorer and Outlook. Unfortunately, others like Gator and BetterInternet will do it on their behalf.
In the end, a computer is more like a car than an oven, capable of great power but requiring a good deal of knowledge to use (and not run over people in the process).
Doing the Right Thing should not be preempted by making a buck.
Who is he talking about?
Has he been spending too long on slashdot, such that he now worships Natalie Portman or something?
...ESR was found beaten severely, with the names of several CUPS developers found tatoo'd on his forehead....
It is punditry, but it's also something that has been said quite a few times before, including by Miguel de Icaza of GNOME fame.
Really. There is a ton of OSS software with really shitty user interfaces, but anything involving fonts or printing seems to be crappy beyond belief.
Congratulations on perfectly illustrating the attitude that keeps anyone from solving the problem. Congratulations to the moderator who gave you +1 Funny for doing exactly the same.
Anyone who can't use an interface you understand isn't as smart as you and therefore is not worthy of consideration. Is that it? You can see where this leads when a developer hears criticism of the UI - they designed it, so of course they understand it. Stupid users! Of course it's their fault.
And then they go and blame the same users for choosing windows...
You mean a bunch of volunteers didn't always think about the (l)users and created a bad UI? Wow, none of us knew that!
This problem does exist, and is being worked on. C'mon, just look at the GNOME Project. They have a whole team of UI designers working to make it better for the common man. I know ESR has been a big contributor to open source, but in this case: submit a patch or shut up. Identifying a problem we all know exists isn't that amazing.
Everything depends on what system you are configuring CUPS on. I'd agree with you for Mandrake Linux, but configuring CUPS under Slackware is anything but easy. I think one of the major problems is that people come out with great tools (i.e. CUPS), but they require a certain amount of effort / sophistication to use / configure, so distros like Mandrake, Suse, and Red Hat write their own configuration tools. Only problem is that because each distro is set up slightly differently, configuration tools aren't portable across distros. Perhaps what we need is a collaborative effort by the major distros to create 1 size fits all config tools.
The entire nation considers your written and spoken rants both condescending and highly obnoxious.
Are you kidding me? This is precisely the thing that we need to concentrate on. If we can't be critical of ourselves - MS sure can.
Dear Anonymous Coward, The entire slashdot community considers your written and spoken rants both enlightening and amusing. Please, be our leader, and write more opinion pieces. Thank you, Everyone.
How Important developers of the GNU and Open Source Movement are living the obscure land of kernel hacking and going to write some userland code. Many times, in Free Software, the underlying system, the lower level development is made by the most competent developers, and so is robust, stable, actually the best out there, but the front ends, well, they just don't have the same quality, so, for the unexperienced user, it looks like crap. I think it's time that we change this, and start showing that GNU can also be reliable on the Desktop, not only showing how fast it is, but also good end-user interfaces. It's not that i don't like KDE, GNOME, XFCE, etc,etc, they are ok, but i think that if we put the best people to work on it, they will be even better.
Linus has been talking about this recently, are we going to start seeing things like Linusorganizer, Linword??, hehe, that would be nice.
WTF am I doing replying to an AC at 5 A.M on a Friday night?
True, the guy really pegs the zealot-o-meter, but he's also right on this one. Ad Hominem isn't a valid argument.
"Faith: Belief without evidence in what is told by one who speaks without knowledge, of things without parallel." - A.B.
It's true that the OSS community needs to beef up many area of the developpement process.
Software isn't just about the code the same way that a car isn't just about the engine.
For people to want to use it in the first place, to enjoy it once they've started using it and to stay with it, a "product" needs many qualities.
This (often) explains why an inferior design can becomes the norm.
So lets get cracking with artists, GUI/interface designers and and documentation writers!
I will anticipate the "Well, why don't you do something! Where's the patch?" posts and answer:
I'm doing what I can with the talents that I have (often amounts to writing suggestions to developpers, bug-reports, spreading the word on new stuff and donations).
Treehugger? Treehugger... Treehugger!
I honestly have not ever heard someone use that term outside of The Clash. I shall use it tomorrow a minimum of twice.
.-=Wit is educated insolence=-. -Aristotle
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.Dear ESR - :)
We will accept your critcisms of CUPS when you fix it. It is, after all, open source
-Your OSS pals.
I know that something called "CUPS" exists on my iBook. I just don't know what it is or what it's supposed to do. And yet, I've never had any trouble accomplishing any task on my iBook that I've set out to achieve. I guess this is why OS X is better than Linux in some ways.
Anyone who can't configure CUPS shouldn't be talking about ignorance...
Do you even KNOW who Eric S. Raymond is?
Your credentials had better be damned good before you go around casting aspersions like that. There aren't too many names in open source software bigger than his.
Education is a better safeguard of liberty than a standing army.
Edward Everett (1794 - 1865)
Looks like someone was strapped for cash and sold his slashdot acconut on ebay to some Nazi freak.
graspee
Talk about luxury of ignorance. I pitch open source software to family/friends/bosses every chance I get. Now this one time, I was telling my boss about OpenOffice when MSOffice bailed out on him.
Boss: Damn. This MSWord thingy sucks.
Me: You should try using Open Office once. Its a good sub and its free!
Boss: Free? I am telling you one more time. Stop downloading things off of KaZaA damnit
Me: No. No. No. You got me all wrong. Its free as in 'free as a beer' free.
Boss: Does it have Clippy?
Me: What?
Boss: I looovvvvee Clippy. He is so cute
Me: Well, it doesn't really have a Clippy per se but...
Boss: Oh common. How do you expect me to use it if it doesn't have Clippy. I am a PHB
Me: What?
Boss: I am a pointy handed boss
Me: Handed? Ohhh well. Nevermind.
At that point I just walked away defeated by clippy and luxury of ignorance.
Free XBox, PS2
The entire nation considers your written and spoken rants both condescending and highly obnoxious.
I refuse to read anything he has written, because that would be documentation. ...And I don't believe in documentation (but then again, neither does he apparently).
Although CUPS is easier than hell to setup to me, this is a major problem with OSS, ease of use. We geeks write software, and most of the time don't think about the pee-brained morons on the other end. And even sometimes we don't think of just simply the normal person at the other end. We create interfaces, and leave them at that, assuming we do create GUIs. Installation is usually a bitch, and the layout of a GUI generally takes some time. Please note that this is not a majority problem, the majority of OSS software is actually good in the interface design. But, this is true with a lot of commercial products also, so take this with a grain of salt.
Bored? Why not join a decent mess
...I can assure you that Windows has had its share of warts in this area too. Local browser elections, anyone? Yikes.
WinXP does seem to have cleaned things up considerably, though. Hopefully folks can just see this article as food for thought...
The Army reading list
Uhm, I guess you've never heard of ESR before. When he talks about the open source community as, "We," he really means "we." He is actually doing the work.
ESR is part of the community. He's not some teenager whining that the software doesn't work - he's a respected figure pointing out a problem in hopes that it will be recognized and fixed.
--
http://nemilar.net - Not your grandmother's soup kitchen
Nice to see that enough ESR fanboys had mod points handy, to so quickly cover up that link to his racist rantings.
He's right. How about something simply if you're trying to connect to a Windows based printer or a *.Unix based printer?
This guy is way out there
"they may write crappy insecure overpriced shoddy software"
as oppsed to OSS, which is crappy insecure shoddy software, but at least it's not overpriced.
The problem is in Fedora, not Cups. Cups works just fine, and more or less like he wants it to, if that is all you ever use. Fedora, using whatever configuration system it uses placed some unuseable stuff there.
Granted Cups could use a lot of help, but he wasn't using a Cups configurator, he was using some other configurator that can work with not only Cups, but also SMB, LPR, and a bunch of other stuff. I don't know the solution, but bashing the Cups guys won't get you any closer to it.
Either I can take his side and be called an idiot because I'm sure someone will claim to have an easy solution to my problem. That's what someone claimed the last time I mentioned I couldn't get MPlayer working and then of course the suggested solution didn't work. Or, I can stay out of the discussion entirely. I think I'll do the latter instead.
That rant, to me, sounds like another programmer who can't cope with the idea that most people do not think like programmers when it comes to understanding software, and would rather blame the user than have the strength to take an honset look at the situation and what he/she could do differently to improve it.
I know writing GUIs is a pain (I'm not a professional programmer, but I've had to do nothing but coding for 2 years), but programmers have to stop blaming the users and other people who point out things like this. It's just a denial that 95% of all people using a computer need something simple because, to them, IT IS JUST A TOOL, and they need to use it to produce a product, not to hack on and explore.
ESR has a good point -- if FOSS is going to replace closed source, or hold its own, or even continue to grow, FOSS programmers will have to get realistic in understanding how users think instead of blaming users because the programmers don't want to make the effort to understand the other side of the issue.
For the good of the FOSS community, ESR needs to speak out more, and people like the above poster need to "please shut up" and listen to other points of view, instead of hiding their head in the sand in denial.
There aren't too many names in open source software bigger than his.
There aren't too many egos in open source software bigger than his. Wake me up when he actually does something though. And no, half-rewriting the kernel config system and then throwing a screaming tanty when told that no, we're not going to all install Python just because he want us to doesn't count.
First of all, as a self-taught Linux user I am delighted that someone as talented as ESR can have a hair-pulling session doing something like setting up CUPS. I have had many an evening like this. Excruciatingly close to getting something done, something that should be simple, and instead spending hours feeling stupid and incompetent. He's right, and he's right about the fact that this is why there are countless unused Linux install discs littering desk drawers under Windows machines, tried and abandoned by people who hate Micorosft, hate Windows, who would LOVE to support an alternative, but can't make it work.
The user is the loser. There's a clubby, exclusive, snotty attitude among user's groups. The online resources are hopelessly disorganized or relentlessly dinged with ads. The vision that Stallman has of software as knowledge, rather than product, is lost among the throng of sociopaths that spout RTFM at users that ask the same questions over and over.
Well, you know why people have the same questions over and over? Because the software is obscure and the documentation is unhelpful. GNU is based on people solving their own problems and then giving other people an opportunity to use thier solutions. Documentation, at best, is an afterthought. Once you have solved a problem, there's no need to go back and explain it to yourself, any documentation that does exist arises purely from the virture of developers, not because they need it themselves.
The fact that the most useful thing you can have with this enormously powerful gem of human progress (the computer) when trying to use Linux is a printed-out HOW-TO, probably downloaded and printed from a Windows box, is more than ironic, it is shameful. The tools for providing context-sensitive help are there, they just are unused. The developers don't care about the user, they've solved thier problem by this time.
If OSS developers needed robust documentation in order to distribute their product, they would either develop it or not distribute their code. But they don't. There's no reward for the developer.
This brings me around again to the notion of licensing software developers and then making them accountable for the usability of the product. Not as an avenue for exclusion, but to build a community of developers devoted to the user, a Mr. Goodwrench sort of certification standards, that tests it's releases against naive and novice users. How you make this work I have no idea.
Red Hat should be doing this already, but they've clearly left the home user at the altar.
The best way to do is to be.
I spent HOURS AND HOURS trying to get CUPS working on my Linux box with ONE SIMPLE PRINTER on LPT1! It spit out vague error messages and error codes and google searching turned up nada. I eventually gave up and installed LPRNG which only took JUST A FEW HOURS after tricking out magicfilter to work properly (I still had to force the stupid printcap file to find the appropriate directory). Face it, setting up printing under Linux can suck.
I always try and get an open source-coding friend of mine to understand this, and it never seems to sink in.
Interface design is an incredibly important part of any software project - it's like the clothes you wear to a job interview. Sure, you *might* get the job if you wear your regular jeans and t-shirt, but if you take the time to dress up, you will create a much more favourable impression on the potential employer you are meeting.
Similarly, taking the time to make your user interface polished and intuitive is one of the best ways to end up with happy end users who tell other people how great your software is. It lets them know that you care enough about the software you create to spend a few extra hours making it look nice instead of shoving it out the door as fast as possible.
"...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
Yeha, I visited a tribe in Tanzania, their chief was complaining about lack of Postfix configuration books.
My question is why does this guy make the front page of Slashdot? Don't tell me he's the only blogger on the Internet who's so wise and profound.
I want to delete my account but Slashdot doesn't allow it.
How are his views on gun controls in any way relevant to this discussion? His beliefs regarding the control of lethal weapons has nothing to do with his ability to configure CUPS!
sig:- (wit >= sarcasm)
You're all missing the point. Trying to configure CUPS does suck if you're on your own trying to figure it out. Anything with Linux is this way. I'm not a college-aged dork sitting in a dorm not getting laid with 20 other dorks playing EQ. I'm trying to figure out how to use this powerful tool, and if I have to spend 3 days studying dusty man pages to set up a frickin' printer - forget it. Takes me 10 minutes to write a script to install a queued novell printer when I click on a NAL - and then leverage that against 10,000 machines that I don't have to touch. Will Linux do this one day? I hope so.
Looks like someone was strapped for cash and sold his slashdot acconut on ebay to some Nazi freak.
Looks like someone was strapped for time and didn't bother following the link before concluding that the Slashdot poster, rather than ESR, was the Nazi freak.
At some point none of the hacking and configuration, usable GUI or otherwise, is worth my time. Spending a day futzing around with a parallel port printer is not cost effective. Buy a network printer, print over TCP/IP and be done with it. Use appliances that solve the problem. Don't try to hack the microwave so that it perfoms like a toaster oven.
- [no response. evar]
- This is different from Windoze - I know that! I don't want "Windoze" (how cute, BTW) I want to tell you that your fucking design sucks rocks!
- If you want stupid, use Windoze instead - Again, very cute. Also arrogant and stupid.
- This is how it's done in Linux - Well shiieet, of course it is. That doesn't mean it's correct.
- Did you RTFM|Google? - Well of course, for the last fucking 4 hours, just.
- The next version will have... - That's great except that if I Google for what you said about this version I see the same thing. Wow, Usenet is great, eh?
- We're not going to add that, that's stupid - Of course!
- Use [x] instead - Yeah, except that [x] has been in alpha for the past nine years.
- Check out [this page] - Fantastic. If that's not a 404 I guess I'll have to learn Japanese! Weee!
- You're welcome to ask for a refund - Wahahaha!!!
It takes a rant from ESR (who despite his pretensions doesn't know much about human interaction) to get people to do things right? Wow.I always get a chuckle when people compare Linux to OS X or Windows in usability terms. KDE looks absolutely fantastic after I log in, but the fun stops there. If I actually want to do anything else I have to fire up vi and edit 1,000 conf files. Give me a break.
And yes, ESR is right. This is one of the things that keep Windows users in Windows and perpetuate what you folks call "monoculture". Whining about it and blaming everything on "M$" won't fix anything. Great software ultimately sucks if I can't use it.
I'm sorry. I finally realized what was going on, and that the linked to thing was by esr, so it was all about 'oh dear, esr is rascist', but the post taken at face value doesn't make this clear, and resembles too closely a lot of the rascist crap that is on slashdot.
I suppose you might say that the user interface of the post was confusing... (Last ditch attempt to regain karma, both in the religious sense and the important sense).
graspee
I agree, CUPS has definately been the easiest server software I have ever set up. It was even easier to use than apple's usb printer sharing.
With a house full of macs, CUPS was easily configured to work with all of our computers. It even workes with netatalk printer deamon flawlessly.
To attest to CUPS ease of use, everyone in my home knows how to use it and does rutinely. For people that think spam is a steep learning curve, that means a lot.
What he probably is having trouble with is his kernel configuration of libraries or something that isn't allowing CUPS to function properly. Maybe he doesn't have any fonts installed. But as said by several others, this is dependent on the distro you use. I hate how people use the "Linux" term for anything under the sun, from a Zaurus to a renderfarm. This guy should be complaining about his distro's problems. There are plenty of easy to use, easy to set up distros. But he wouldn't get on slashdot for complaining about that.
The configuration problem is simple. I have a desktop machine named 'snark'. It is connected, via the house Ethernet, to my wife Cathy's machine, which is named 'minx'. Minx has a LaserJet 6MP attached to it via parallel port. Both machines are running Fedora Core 1, and Cathy can print locally from minx. I can ssh minx from snark, so the network is known good.
(my emphasis)
He's given up his right to claim newbie ignorance right there. Aunt Tillie couldn't even conceive printing through a network.
Yes... exactly his point. IF you want Linux to succeed on the desktop, you will have to one day realize that the *vast* majority of users will have little to no technical experience or expertise. Not only will they have criticisms but they will not, and have absolutely no desire to, fix such issues. Instead, they will abandon it and go find something else easier to use.
It's attitudes exactly as yours that will relegate Linux to a niche. You are not helping Linux and OSS, you are hurting it.
show me the code, or shut up
Have you looked for the code?
Your post tells of smacks of an attitude all too typical in open source... You believe only code gurus should criticize software. Eric may or may not be a code guru, but that argument is flat wrong. Bad interface is why Linux is taking so long to make inroads on the desktop. It's a legitimate problem that needs to be addressed and maybe *JUST MAYBE* people who write code are not the best user interface designers. Maybe users are simply not as deterministic as software.
Education is a better safeguard of liberty than a standing army.
Edward Everett (1794 - 1865)
He got so pissed he couldn't type straight!
Buy the President
sig:- (wit >= sarcasm)
I think that mine is bigger than his... Oh you were talking about something else?
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d
The article was insightful, and it contains some things I still did not know after wrestling with integrating CUPS, Turboprint (crappy Canon printer) and Samba, but to be fair to the CUPS developer, they did not write redhat-config-printer; Red Hat did.
CUPS and Turboprint works well, as it turns out, the problem is that printing from OOo (Linux), printing from OOo (Win) using CUPS' postscript driver, and printing from OOo (Win) to a Windows printer results in different page margins being used. Bummer. At least the fonts look identical if the same fonts are used on both ends.
And for those people with new Winprinters wondering why raw printing from Samba does not work anymore, you need to add the Windows user as a printer admin. Not documented *anywhere*.
Michel
Fedora Project Contribut
Perhaps Mr. Raymonds' problem is that he EXPECTS all open source stuff to work flawlessly first time out of the box instantly just BECAUSE it's open source.
In the Windows world it's always a little like being a landmine tester by hitting it with a hammer. So we expect that the configuration dialog for the printer device will just hang or crash for no obvious reason. We expect that MS common UI design isn't and most of the critical functions are never in the same place.
Predictable Failure. We hope for a minimal effort, at best. But in the OS world we think sheer brilliance will save us all no matter how obscure. So when it doesn't we experience a level of frustration and disappointment we're not accustomed to.
Why does Microsoft do GUI design better? Because if you pay a programmer a lot of money, he'll do whatever boring work you want him to. They may even have some folks who find GUI layout and design interesting.
There's the problem. Anyone know how to make GUI programming more interesting?
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
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.
With closed source the responsibility lies solely with the company to solve the problems.
With open souce, problems are just an excuse to try to force people who find problems to "join the cause" or you can just ignore any problems they find.
Here's a crazy idea members of the Open Source community such as yourself need to get through your thick skull: take responsibility for the crap you write. If you write the code, it's YOUR responsibility to fix the problems. No one else is obligated to fix a line of code and is more than free to point out the flaws.
He didn't write CUPS so why should he feel obligated to fix it? He's a USER. He didn't write the code. He didn't design the interface. As a USER he's in a position to criticize. It's what users do.
Whinning he doesn't treat you like a king and kiss your feet for blessing him with what he sees as crap, is not going to do anything to win support for the project.
This is why I choose what Open Source projects I use very carefully and rarely recommend them and never because they are Open Source.
Ben
Work Safe Porn
The way to get help with your linux problems is to troll and say "Linux is teh suxx0rz because XYZ doesn't work!"
Then 4,000 penguin-fanboys will come out of the wood work, each with a distinct solution to your problem!
Now had you asked for help, they would have said "Read the man page! n00b!"
As for me, I can't really help you. I run AIX. And some other window'd operating system that allows to to remotely access my AIX boxes.
In the future, I would want to not be isolated from my friends in the Space Station.
All in all a pretty decent article.
I agree with many of his points, if there is one thing I dislike in the *nix culture it is the elitism, and holier than thou attitude that many people in said culture have towards users. This is just one more sign of that elitism, we spend hours and hours making very good stable, well designed software, and then we demand that you read a 1500 page book to be able to use it... That's stupid, now you can say "if they don't want to learn they shouldn't be using this software" but that's dumb too... my dad is an attorney, he wants to work on cases, and do legal research and the like, thats what he's interested in, he doesn't want to spend an hour a day figuring out how to share printers/files and send emails, and he doesn't want to have to pay someone $150/hr every time he needs to add a printer to his network. My wife is a psychologist, she wants to care for her patients, and work on her book, she doesn't want to be bothered with figuring out how to configure her computer, and she shouldn't have to be... That said, the author shouldn't have been bashing the CUPS guys, the configurator in question is an inhouse product by redhat/fedora, no other distribution uses it, and the default setting of having the broadcast turned off was also a decision by redhat/fedora not the CUPS programmers (well it might have been made by the CUPS devs, but redhat/fedora had every opportunity to change that default behavior). I appreciate the article though because he is right on in critisizing the community for their lack of vision in this regard. (btw, I admin a 7000 node network, and the entire thing is controlled by linux and unix servers, there are windows nodes, but I would never run windows on the server side, and I rarely use it on the desktop either so don't count me as some MS apologist)
Contrary to what you think, the least expensive Mac is the entry-level eMac, which costs $799. Check it out for yourself.
Ignorance like yours -- particularly to compare a $300 Intel box with a Mac -- is a huge reason for Apple's lack of market share. Apple has made a LOT of mistakes on its own, but people like you who THINK they know something about Macs are just as big a source of the problem.
Yep, there's the answer! Don't buy a new PC, GARAGE SALE yourself a Mac!
http://www.linux-mag.com/2000-01/img2/pub_01.jpg
http://www.linuxthemovie.com/STILLS/Eric_Raymond.j pg
I believe everything he says...
It's really easy to jump on the Anti-Microsoft bandwagon when it's time, and say "Linux is ready for the desktop, it's high-quality and easy to use, why doesn't it overtake that crap from Redmond". But, when push comes to shove and sombody points out the things that scare off non-technical users from using Linux, OSS "advocates" really seem to have a hard time accepting constructive criticism.
Look -- if it's just a hobby OS, fine, this criticism is totally baseless and cruel. But, if you all want to see your labor of love have a real shot at the desktop market, you're going to have to take criticism like that and work with it -- if it seems angry, it's because end-users get frustrated when they're promised an easy-to-use system, and they have to spend more time wrestling with configuration than actually doing what they need the OS to do.
Either take the criticism as advice and use it to add value to your software so it can be accessible to a larger audience, or accept that your OSS project is just a hobby.
Communism was just a red herring.
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.
$799 is 2.667 TIMES the cost of the $300 PC in the example.
Way overpriced for the difference in your precious "user experience".
Feh.
I have been since 1998. *BELCH*
anatomize-1. dissect in order to analyze; "anatomize the bodies of the victims of this strange disease"
...so, your problem is what, exactly?
2. analyze down to the smallest detail; "This writer anatomized the depth of human behavior"
(www.cogsci.princeton.edu/cgi-bin/webwn)
http://www.farmerbob.org
Well, in fact, setting up a network printer in Windows is certainly not better.
You have the choice between "Local printer" and "Network printer". If you do have a network printer like an HP with a JetDirect card, the correct choice is NOT "Network printer". It is "Local printer", and later you have to add a "Standard TCP/IP port". ("Network printer" is only to add a printer shared over SMB by another computer)
So while he has a good point on a bad interface, and while it is true that for some things Windows may have a better interface, it certainly doesn't for networked printers.
relieved themselves in ESR's coffee this morning to make him this pissy?
on a serious note, yeah he has a valid point but
a) he could put it across in a less-ranty way which would go down with people a lot better
and b) often the primary goal in open source projects is "make it work"... then as a second thought "make it pretty". and often we never get to the second one because of time, money, etc.
I remember trying to get fetchmail to work. What a nightmare.
I myself am always pleased by software with documentation that
1) lists all possible options
2) lists their possible values
3) lists the default value for every option
4) of course explains the option
and finally the program itself should be able to dump a listing of all options and their current values. The list could optionally be used directly as a config file again. That is software I like. Think Postfix for example and postconf specifically.
For software with potentially very complex/confusing scenarios there should be some intro that gives an overview. I find Postfix a bit lacking wrt that. Sendmail style virtual domains, Postfix style virtual domains, virtual mailbox domains, uh? All you can find is "tutorials" that spit some options in your face and basically tell you: "Do it like this and that. I won't explain, just do as I say"
Apache is another thing. I wish Apache had a tool that would graph all the options that apply to a given url/vhost/file. I hate climbing the dependency tree in my head every time since I can't seem to manage to fully grasp the whole thing. Its documentation complies to the above points very well, though.
To summarize: good documentation together with an overall clean design of the program is the most important thing.
Of course it runs NetBSD. BTC: 1NT7QvbetmANwaMzhpVL6
Wow. If he can't configure CUPS using gui-based programs, then he definately needs to do something else with his time (like jump off cliffs). I know several major distros have pre-installed control panels that help you configure your printers. Most even have wizards to do it for you. Then there's always the CUPS webserver to do it (http://localhost:631). Or the X Printing Panel (xpp). Or the Printer Utility Program (pup). Or...
Sorry I have to totally disagree with you on this. I tried using CUPS and it was a royal pain in the ass, just for the various reasons ESR mentioned. In fact it was far easier to set up LPrng than CUPS. The documentation it pointed to for me was worthless. The fact I had to go there made it a poor design in the first place.
All the people that I run into who start using Linux have the same problem, they have to constantly read a lot of documentation from various sources, which I find totally unnecessary in order to do a basic configuration of something.
That's fine if you want to learn UNIX etc, but not if you just want a more stable alternative. People are tired of unstable systems, but they totally hate unuseable systems (read difficult to configure).
People ask me all the time about Linux and I have to give them the caveat (once it is set up properly) they can have what they want. That is a huge caveat, and one that frightens the general populace. It's like telling them they have to be able to rebuild a motor before they learn to drive.
I will say however that the gui designers over at MS do have one thing going for them. They have been designing their ui to meet the needs of 80+% of the computing population. Of course in some areas of the open source market there will be those that don't realize with the advent of newer easier to install distro's there will be those point and click users who will complain about the ui of said open source application. Some people will put up with bugs,viruses and the like to have everything a snap to setup.
I can think of at least one OS project that IMO has a very userfriendly configuration interface. Oddly enough, it's the Microsoft SMB File Sharing protocol compatibility project Samba. SWAT (Samba Web Administartion Tool) is a very nice configuration interface, that is both much more powerful and much easier to use than the Microsoft counterpart. And of course, the fact that it works in nice too.
Join moola.com, play games to earn money.
Yeah, because on the Mac, they don't have some stupid dialog that pops up and says "You have plugged in a camera, would you like to click through a puzzling 17-step process that doesn't give you any options?"
When you plug something into a Mac, there's not a celebration. Those Mac guys are into the whole "we know we plugged in a joystick. We expected it to work, why are you telling us this?"
That man couldn't code if his life depended on it.
And looking at this from his perspective, complaining seems to be much more profitable.
The kernel configuration system back in 2.4 was crufty and not very user-friendly. So Eric decided to build a new system, CML2. It ended up not going in for a variety of reasons, not the least of which was probably a lot of people don't like him all that much. However, in that case he was practising exactly he is preaching here - making software easier for non-gurus to use.
Any sufficiently advanced technology is indistinguishable from a rigged demo
--Andy Finkel (J. Klass?)
It's fine to say RTFM to a spotty student who spends his entire free time in front of his Linux box, but ESR is making a valid point that no-one seems to pick up on:
.conf files to get Linux working, only to attract abuse from the same people who encouraged me to use it in the first place?
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
sig:- (wit >= sarcasm)
Make the web sites look better!
Slashdot sucks
This is especially true if its a non-trivial piece of software. Several times new programmers have come into software packages I've been working on, don't bother to read the structural documentation or even the useful other code that serves as examples for how to improve and extend upon the existing structure.
Instead they try and do things their own way, often end up doing things redundantly or breaking something else and just otherwise fouling more than they contribute.
The best person to improve upon software is the person who designed in the first place! Or someone who's worked on it extensively enough to know the quirks, the reasoning behind non-obvious parts and knows the rest of package throughout.
Telling a user to fix a poor piece of software is incredibly frustrating and lame to those of us who, god forbid, have other things to do in our lives.
-
I've held a fairly obvious view for a long time with regards to interface design (be it computer or otherwise):
;)
Unless you're working under a predefined framework, chances are, your design is going to differ from someone elses when you both attempt an identical solution.
This isn't an answer on how to deal with this issue, as the answer(s) are everywhere, it's more of a thought process that keeps me from going crazy.
How many times have you worked with a piece of software or hardware only to move on to another one that was similar in concept, but totally different in execution? It's gotten to the point that I've stopped trying to become an expert at everything, and simply want things to work (maybe I'm just getting older, and have less time and/or memory).
Maybe that's why companies like Apple have a strong following, with a mantra of "it just works".
The next time that Joe Administrator is getting cocky with "oh, you didn't know how to configure file XYZ for ABC", remember, they're just being programmed to use an arbitrary interface, thought up arbitarily by some designer.
And that folks is why I'm working to get out of System Administration, and into programming
[end rant]
Q: What do you think about American Culture?
A: I think it's a good idea.
(adapted from Gandhi)
Lord help us if he tries to modify a Gnome menu....
The better point might be that there are fewer names in open source more derided than ESR.
Here's my idea of a dream setup: the best of both worlds. The consistent GUI of Windows or Mac OSX, and then the rest of it consisting of all that is good from linux(stability, etc).
.conf file. Why would you only have a few configuration options?
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
Come on, are you telling me when something ticks you off about a piece of code you download the tarball or cvs the code and learn the whole thing and dedicate yourself to its betterment??? I hope nothing about the kernel or Mozilla or Mysql tick you off or you are looking at six months of hard study.
Last I checked to print to a network printer under Windows using IPP or LPR you don't choose Network, but instead choose Local. Network printing really means print server printing under Windows, but esr somehow holds that up as an example of a standard to live up to? No thanks. CUPS may be a little rough, but at least when I connect to a printer using ethernet I don't have to choose non-network as the printer type. Of course really it is a print device under windows since according to Microsoft Introduction to Network Printing "The printer is the software interface between a print device and the print clients". Yeah right.
NO he is not doing THE WORK.
he is doing some.
then whining about printers and UI, instead of trying to improve it. like i said, he should put up, or shut up.
he could show how to do things properly instead of bitching and moaning.
If you are going to karma whore, at least try to get your acronym definitions right.
Meetings: None of us are as dumb as all of us.
Nerd: Derogatory term typically directed at anybody with a lower Slashdot ID than you.
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.
... trying to print from one computer to another using cups, and I found the experience just as frustrating.
I think its worse than ESR makes it out to be. CUPS is worse than useless. It looks like a printing system, but it is (in my experience) inscrutable and very, very unreliable.
I just threw away a printer, which in its lifetime probably printed 3x more postscript-as-text than actual rendered output, because CUPS is unreliable: try to print, get postscript gibberish, reboot, it keeps on printing gibberish, turn off printer, shut down cupsd, reboot, turn on printer, repeat 3ish times, and I'd occassionally get lucky and it would print non-gibberish for me. I expect that without this added wear, the printer would still work fine.
You might think I should consult the CUPS FAQ, but the CUPS FAQ 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.
I generally take ESR's rantings with a pinch of salt. I understand where he is coming from but I think sometimes he has a tendency to go over the top. However in this piece he is right on.
/etc/rc0.d is for.
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
"And then I visited Wikipedia
Maybe ESR could just whip out some of those guns he's got, further arm hiself with his rampent Xenophobia, and kill-em all with a hearty dose of intolerance.
Sorry... been reading his blog. I am truly frightened, and rest assured that moving away from Chester County, PA was the right thing to do.
That's amusing. I'm guessing from you AC post, that you're of the 'shut up' variety?
It's hard to know whether it's worth replying to an anonymous moron who can't understand the point of a post. But just in case there are any other children out there who also missed the point, the guy I was responding to quoted a price for the least expensive Mac that was 50 percent higher than the real price. THAT was my point. The poster was displaying gross ignorance about what Macs cost. And if you are stupid enough to believe that a $300 white box from Uncle Fred's Computer and Taxidermy Shop is the equivalent of buying a Mac, you're displaying vast ignorance, too, but just of a different kind.
Are there many people studying these concepts? There have to be at least some people with some training in UI that can offer their volunteer work on some projects. It isn't just coders people need anymore. Heck, some good artwork wouldn't hurt, and the occasional artistic touch...
Seriously.
Try having your grandma setting up a printer with gnome or kde. Better yet try a usb printer.
Send grandma a small video and watch her try and figure out how to play it on linux.
Or best yet watch grandma try and use xcdroast.
Try reading through man pages for stuff like ssh keygen, or X, or any other sort of technical software. Is it really that hard to give human readable description of how to use the shit?
this is what will do, here is an example, here is another example, dont try and use it to do instead should be used.
instead of stuff like this
-e Convert OpenSSH to IETF SECSH key file
?????
seriously documentation is so damn important, and so easy to make. If you write some software, you know what you wrote, so just write a paragraph for each feature, it only takes like 5 minuets and then your software might acually get used.
The same principals go for graphical interface as well as command line interface. Think of a gui as just a extention of cli. This doesn't apply for all software, obviously things like openoffice dont have a cli. But these apps are pretty rare, and the few that exist work pretty good, browsers and office and stuff.
Bottom line, this guy is right. We need better quality apps and configuration utilities for linux.
Adam
Selling software wont make you money, selling a service will.
he has done a great job of explaining a very big issue with linux right now. (with a poor job of proofreading) cups is one of many linux gui helpers that makes the very default action VERY easy, easier than windows, but if you need to do anything outside of the norm, you are lost. i was able to use cups to get a test page to my printer faster than i can under windows. it was just easy. but as seen here, when you step outside of the dead normal, your lost. ive told people that you can hand linux right now to either a TOTAL newb at computers, or a very experienced person. everybody in between, which is about 70% of the desktop computer market, will be very lost and frustrated.
Why not have a democratic way of deciding what makes a good UI, and which features belong to an interface? Linux reminds me too much of vangaurd Communism, with leaders and their huge egos taking over entire sections of the movement, and insisting that their way is the best. Then, when another big ego joins a project, a split occurs, along with all the attendant needless complexity. Why not instead use a democratic method of determining what belongs in an interface, and which features are important? Then we can have a fair method of arbitrating disputes, and programmers can write software that reflects the wishes of users, not just make wild guesses at what people want. So, we could have three levels of Linux... Beginner, Intermediate, and Expert. The interface of an app would have a different range of choices depending on what level the end user decides to install. They could then go to a configuration for each app, so that if they wanted to have on app be set at "Expert" level, they could do that. The difference between that and now is that the interface is too often decided by developers not the users.
I agree with Mr. Raymond, Microsoft does have an advantage in the sense that because they are a dictatorship, they can efficiently decide what kind of interface they want to design. However, the disadvantage that Microsoft has is that they don't allow end users to vote on what kind of interface they want. Microsoft is making wild stabs in the dark at what people want. Linux doesn't have to imitate Microsoft, but we do need to come with some system of unifying the architecture and interface design. Linux is relying too much on markets to decide, which is a bad decision, instead, we could use democracy to arbitrate how decisions are made. This would reduce the need for big egos that the movement has right now.
Because of the nature of Open Source, we can't count on competition to weed out bad UI design. There are no market pressures when the product is free. Mr. Raymond is wrong, it's not lack of expertise that's holding the Open Source movement back, it's lack of any kind of feedback mechanism to let the programmers know what the users want. Until we create a feedback mechanism (I just suggested one off the top of my head), we will continue to have these problems.
Why? Because he's a USER. Not a programmer. Developers have a responsibility to listen to their userbase. If you want market-share, then when your users say "I don't understand X", you DO NOT say "well, FINE, fix it yourself!" That is ENTIRELY the wrong attitude. ESR may be confrontational, but you're even more so.
Why doesn't your approach work? Because they're simply going to walk away. Software is so complex these days that many people, even programmers, couldn't possibly contribute without investing a serious amount of time. Hmm, which is a better use of resources- 12 hours of a user messing around learning your functions, conventions, library calls etc(and probably introducing more bugs than features)- or 15 minutes for you to add the button yourself?
I know -exactly- how he feels. Countless times I've found software that has a super-spiffy web page, touts how damn good it is to anyone who's reading- but you unpack the source and Jeeeeesuschriiiiiist you can't figure out which way is up- and I've been building and compiling unix packages for almost 10 years(when i was yer age, we had to edit makefile library paths ourselves! None of this automake...) Then, if you get it built, you run it and menus have confusing names, there's no help file, there are secret options nobody mentions that are in the ~/.myprogram directory, and so on.
The mldonkey p2p client was an excellent example. The developers continuously worked on all sorts of weird theoretical schemes for this and that, while the userbase clamored for a manual(there was none), a description of what each setting did(ditto- the developers would cheerfully add some oddly-named option and not explain to ANYONE what it did), or for features that were common in other clients. Such as the ability to share a file without having to restart the client(shocking!) But hey, you got three different algorithms to pick from for how it managed sources for files. Yaaaay!
Please help metamoderate.
And here I was all set to moderate. Oh well.
.dvi preview and a TeX eq -> eps Service) I could switch to open source for all my work.
pdfTeX, Latin Modern, and FontInst to name three opensource projects involving fonts and printing which are absolutely fabulous.
pdfTeX in particular is so robust it's used to do things like provide railroad timetables on-demand and to run commercial printing imposition systems. Take a look at http://custompub.aimsapp.com to see an interactive example.
Latin Modern is an excellent example of taking an opensource thing (the venerable Computer Modern), applying a new opensource application (MetaType1) and getting a new result (an up-dated and corrected and Type 1 font which is Unicode encoded so as to be suitable for use w/ a wide variety of the world's languages)
FontInst (a font installation utility for TeX written in TeX) is in a class by itself, and anyone who wants to be humbled should read _The TeXbook_, then look at its source code. Amazing. The only thing in the same class is the BASIC interpreter BASIX which was written in TeX (find both on http://www.ctan.org)
Other new and up-and-coming projects include: Scribus (page layout) and Cenon (drawing) and pfaedit (interactive font editing). If there were only alternatives to / equivalents of Adobe's TouchType.app, Fauve Matisse / Corel Painter / Alias Sketchbook (natural media painting) and Creaturehouse Expression (and a handwriting recognition program), TeXView.app (IPC
The want of something like to Creaturehouse Expression is especially painful since Microsoft bought out Creaturehouse last year, and despite a promise, purchasing of the program did _not_ come back on-line in November of 2003.
William
(PS - and Latex3 should be in the works soon now that _The LateX Companion, 2nd Edition_ is soon to hit the presses)
Sphinx of black quartz, judge my vow.
You must get a REAL kick out of those morons who buy $30,000 cars because they actually like to have cars that last and are comfortable to drive. If we were all smart like you, we could be getting new cars for about $8,000 or so.
I tried to install the ut demo on a rh7.3 box. No problems were reported with the install, but on execution Xlib complains and the program crashes. Why should I waste my time with this crap? The Windows version installed and worked without a hitch. Linux has a long way to go before it is ready for the desktop for home users without an IT staff.
Jeez, I can't believe I'm telling ESR this, but with foomatic + hpijs + hpoj (for HP printers) in Debian it is a piece o cake.
Easily as easy as Windows.
It was hard to get started but once you read the what's what's what's available it's easy.
My recent experience was trying to print to an inkjet connected to a windows machine. Since it was remote, I decided I didn't need a spooler, so I didn't install cups. Instead, I found foomatic, which is supposed to cut through the many layers of drivers in one slice. Through no efforts (reading several confusing and inconsistent tutorials) could I get foomatic to produce a file in my printer's format. Nor did it give me intelligible error messages. I finally posted to the main list at linuxprinting.org (lp.general); but in the weeks I've been subscribed, I've not seen a single useful reply to anyone's question!
Oh, I finally got the printer working. I just have to run gs -DSAFER -sDEVICE=ijs -sIjsServer=ijsgimpprint -sDeviceManufacturer=EPSON -sDeviceModel='escp2-c82' -sOutputFile=out -DNOPAUSE -- file.ps , and send the result with smbclient.
The evaluation of an action as 'practical' . . . depends on what it is that one wishes to practice.
Distributions should really handle this UI stuff. If you're a noob home user using Fedora or debian, you're using the wrong distro. Finding a distribution right for your needs is important. Xandros comes with NTFS, SMB, and other scripts that help end users set up their systems with ease because that's what their market is. Fedora and Debian can be used for home users, but those distros are modularized so you can get EXACTLY what you need but you need to know need before you even start.
So let me get this straight - the Fedora people turn off broadcast. This breaks auto-discovery, which the CUPS people assumed will work. How is this not a "bazaar" issue? The only way to prevent this kind of thing is to have one responsible party which designs the protocol, writes the implementation, builds the UI and does the testing. Cathedral anyone?
Is that where OSS is suppose to be?
The point here is that while a great deal of open source software is as good, if not better, then what you can get commercially it tends to not to be easy to use. Things have always been this way and likely will until there is a shift within OSS.
If you have been using computers since you were 6, when you see a dialog saying, "Port?:" you know what it wants after that point. Most users are going to have a vague clue what is meant by port. Move something somewhere? A kind of wine?
Large corps pay many people to create pretty graphics, write pretty books and make sure that ease of use is present. OSS has a large pool of programmers but a much smaller pool of OSS graphic artists and technical writers. These (and others) are the people who need to be brought into the OSS field.
It is a double bind: if you love computers and want to give back you are more likely be able to give in one area and not others. The real challenge is to help other people outside of computers to give back, people that may have few computer skills. In fact, it seems to me that most OSS is not setup to receive help from people with little computer understanding.
If OSS is not easy to use it will always be a third choice of three. I don't think that is what most people who contribute want.
What do you say to the man that has nothing? Cast it away!!
I always find it amusing that the man who wrote XScreensaver complains about usability.
Why can't the open source community take criticism? I realize that not everyone in the open source community religiously posts on slashdot but why all the posts putting down someone who says anything bad about open source?
I mean ESR is certainly someone who wants to see open source take off and I think that his comments are meant to help developers realize what needs to be done.
I've been using linux for about 9-10 years now and things have definately improved on the useability and configurability end but I think that work still needs to be done especially if it expects to make headway into average Joe's Desktop.
Printers are the bane of technology.
No matter how advanced we think we get, printers drag us back to stone knives and bear skins and dead trees.
Like, c'mon!
... a decent try at best. At first glance it alienates me a _LOT_ less than lprng, which is fully managed with an arcane /etc file that lists configuration directives in no particular order.
But that doesn't mean that CUPS is all peaches and roses. I had to discover what `foomatic' was in order to figure out how to extract a driver for my Epson Stylus C42UX from a large xml file. Its wizard to create the printers was rather friendly, although a belaguering dropdown box full of stuff I didn't have asked me where my printer was. Luckily it identified itself as USB PRINTER #1 (EPSON C42) so I could choose that - but most wouldn't have the slightest idea of what to choose and just stare at the screen glaze-eyed...
Really, all I wanted to do was print a school assignment. I fully agree with esr on this issue. This whole CUPS ordeal should have taken me 10 minutes, not 10 hours (on and off) to get working. And it still doesn't fully work, for example with printing to a SAMBA host.
But CUPS is the best we've got for Unix now. Isn't that sad?
"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."
Does using the software mean you've "joined the cause"?
"As a USER he's in a position to criticize. It's what users do."
See stress article below this one.
It takes a real man-geek to admit "issues" when installing new software or configuring devices. He loses points for his longish rant though.
/etc/cups/cupsd.conf file.
However, I found myself nodding in affirmative at EVERY single step he took during his trouble shooting. I made a lot of the same assumptions (wrongly). The funniest was when he finally figured out he had to configure the server machine to broadcast, and then he couldn't connect to it. HAHA, it took at least 15 minutes of loud swearing for me to figure out how to configure the &*#&#((#&$&^
You know you're in trouble when the first like in the man page is RTFM.
I swear, if I have to configure another CUPS network, I'll go postal. It works... ssssh, don't touch it, and speak in hushed tones when in the vicinity.
Toddlers are the stormtroopers of the Lord of Entropy.
Huh, I installed cups on Slackware and it was dead easy. Everything just worked. I didn't think it'd be so easy to replace LPRng+apsfilter, but it was.
Has anyone used fetchmailconf recently?
Pot, kettle, black.
How about you join this century?
On Windows XP on the machine the USB/Parallel Printer is attached to.
Start | Printers and Faxes | Select Printer | Right Click - Properties | Share Tab | Share this Printer | Type in a name, press OK. A little hand appears under the Printer Icon to show that it's shared.
On the Windows XP Network Client.
Start | Printers and Faxes | Add a Printer | Next | A Network Printer, or Printer attached to another computer | Browse for a Printer
Select the machine the printer is on, select the printer.
Driver get's installed automatically, test page prints, and it just f*ing works.
Hahahaha
For the observations on GUI design even if written with an edge.
Now I'm sure you could make it up to the CUPS programs by SUBMITTING A PATCH!!!!
Above all else Eric's rant shows what might be really wrong with the OS community. The one's who apparently know best how to do things just bitch at the ones who are just trying to do their best.
In days past, had anyone written such a screed about problems in Eric's pet project's he would either have ignored them or told them to submit a patch to fix it.
So Eric, thanks again for the observations, I'm sure the CUPS programmers will be happy to accept that patch your working on.
The biggest problem I've seen with open source programs is that when you do get end-users to test things out, be it a UI issue, or some other functional issue, is giving feedback.
Most of the times it seems that they don't want to look into issues or fix items. The advice is always "what does the debug output say?" or "submit a patch for it". Neither is something that the end user, who we are trying to convice that Linux is so much better than windows, is going to be able to do.
If you have the ability to see how an interface could be improved for a particular Open Source project, I strongly encourage you to join the development mailing list, and start engaging the developers with your questions. I have seen very few projects with a GUI where the developers will not listen to constructive UI ideas.
NOTE: "This Sucks", is NOT a constructive criticism. Don't demand, don't be a jerk, but do point out what text and or features would make a dialog box or interface window more usefull. Stick around, and someone might actually ask your opinion on other things as well. If you are at the right place (a development mail list), there's a good chance somebody who can create a patch will start working on your good suggestion.
Most of all, be patient. Linux was not built in a day.
Let's be honest, all the GUI Wizard issues have nothing to do with CUPS, right? They are part of the Fedora Admin/Setup GUIs and we're likely written by Red Hat. -nicfit
Listen up everybody out there in Geek Land! User interface design is hard . Read Landauer's The Trouble With Computers .
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.
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.
On the other hand, point your browser at http://localhost:631 and CUPS is there for your geek enjoyment and/or needs. Or open the Terminal and poke around. When I had trouble sharing my Mac's printer with my Windows laptop via the conventional UIs (yes, it does happen), a short excursion into the CUPS documentation solved the problem.
This duality of Apple's traditional simplicity with the breadth of *nix's capabilities exists throughout OS X; another example is web serving, where Apache can be started or stopped with a single button, but is fully open to those who know where to look under the covers.
Raymond has a point, but I would refine it by urging the OSS community to look beyond Microsoft toward OS X for inspiration about how to reach more users.
P.S. It will surprise nobody that I am a Mac user/developer by choice, but I am eagerly embracing Linux as an alternative to Windows at work, in advance of a mandate from my employer. I have no regrets about leaving Windows behind, but from my recent experiences, I can conclude that Linux will not be replacing my home OS X desktops any time soon.
Let me give an example exactly opposite: one where I figured out something complicated simply by tinkering with a well-designed user interface.
I have a 802.11b "Wi-Fi" access point here, which is my link to my ISP, another 802.11b station for my local network, my main computer, my personal laptop, and a second laptop which is used as a MUCK server. I had to get the computers on the internet and set up the firewall with NAT and port-mapping on my 802.11b station, with the right ports opened and redirected to the MUCK server.
And I started out with no clue. I am not a network-savvy person. I had only a vague idea what a firewall was, and had never heard of port mapping or NAT. I only knew that what I wanted to do ought to be possible, somehow. I had no "how to" manual to explain it, and no handy geeks to call on for help.
What I did have was Mac OS X. I figured everything out by poking around the GUI in the AirPort Admin Utility and tinkering with it. All the settings are there, in a tabbed window. There are short, simple explanations. There are buttons and other gadgets showing what my options are, and what I can edit. Thankfully, there's no "wizard" to lead me around by the nose.
Now. . . If only Apple would make a GUI configuration program for Sendmail, all would be right with the world. (I think they might have one for Mac OS X Server, but we mere peasants with regular Mac OS X don't get one.)
Granted, CUPS is a bit of a chore, but even the MS 'add a printer' wizard can be daunting to those who don't understand it. I've gotten calls, "I can't print the YearEndSpreadsheet.xls", I walk over, walk into their office thinking, "hmmm, there's not even a printer in here." They didn't understand the printer wizard local/network printer, but they do know that they go through the *network* to get to Jane Doe's pc on the 5th floor to get the same file. It has to be based on the target, and *nix is far from being ready for your average user.
HP could certainly have their Jet Direct card look like a Shared Printer and have it respond when the network is browsed, but they don't.
Of course, you could have just installed the Jet Direct Software on the client, and it would have auto-discovered all the Jet Direct printers on the network. Microsoft can hardly be blamed for HP's whacky network support.
People, quit crying about how mean, nasty Linux users tell you to RTFM. Don't be so GD sensative. So, you're new. You're confused. You're frustrated because Linux is hard and your dufus MCSE neighbor can't help you. Grow up, ask the question, take your lumps and LEARN. So you got flamed. So some jackass told you to RTFM. Big deal. Learn from it. Quit acting like a bunch of little girls who got their feelings hurt, whining to Slashdot about how unfair life is, and blaming your continued Windows use on Linux users. Cop out, big time. You're still a Windows user because you lack the will to switch. Quit blaming me.
/. finds me to be 20% Troll, 80% Funny
I have a W2K desktop with an HP deskjet attached, a W2K laptop, and an XP laptop all on a wireless network. The W2K laptop took almost no time to get setup to print. I spent HOURS trying to get the XP to use the printer on the desktop. Finally, the only way I could get it to work was to first connect to a disk share using the desktop username/password. After that, I can use the printer just fine.
... where is the help documentation on this function again?? Where was the support desk I could call? I used Google and Microsoft's knowledgebase and couldn't find out why it wouldn't work. And I am still trying to find that stupid switch which says to only connect disk shares when they are used, not at startup. I've used it before, but damn if I can find it now.
I finally gave up, and to this day my fiancee and I still have to connect to a disk share and give it a username and password before we can print from her eXtra Pretty laptop (which also seems to remove wireless network drivers at random, but that is another story).
Now
I think all of us could find an equal number of issues with both systems to fill a book. Technical people will at least expend an effort to figure out what the problem is and attempt to fix it. Joe Sixpack will just call one of us instead and pay us in beer.
Hmmm...now that I think about it, I am always bugging this guy at work whenever I have car problems....
I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
If CUPS makes printer setup/management even one iota more transparent, then good on them.
Raymond is right, though - things like enabling the print queue broadcast should be asked when installing a local queue, and the default behaviour should be to display available queues on the network when adding a new printer.
To make it on the desktop, Linux has to become as easy as Windows, because most people would rather shell out a couple of hundred (insert currency here) than have to think about making what is after all only a tool do what they want it to.
I don't mind - I like to tinker, and I like to know how things do what they do. But I'm not Joe User, and it's Joe User who needs to be convinced.
oh brave new world, that has such people in it!
That's an "ad hominem" attack, which is a known fallacy. In other words, attacking the man does not make the argument any less valid. You may disagree with him, you may think neo-paganism is wrong (and, while your at it, could you please prove it?), and dislike, disagree, or consider any of his other beliefs false, mislead, or just plain crazy, but thta does not effect, one way or another, the validity of his argument.
Even a broken clock is right twice a day and even the most outrageous politician speaks the truth once in a while. Even if ESR is proven insane, that does not mean his comment is invalid or valid. The statement has to stand or fall on its own, not on your views of the person making the statement.
(And a moderator was lacking in intelligence enough to not realize this and mark the post informative?)
more laughed/derided/scoffed at than his.
You have him confused with Larry Wall, Linus Torvalds, Richard Stallman...in other words, people who are both famous and productive.
ESR is just an asshat who converted the jargon file into an warblogger manifesto and scammed a shiatload of money off of VA Research/software/fartbiters.
If you're going to worship someone, worship someone worthwile, like those I've mentioned, or maybe someone more obscure like Ghandi or Martin Luther King or something....
You guys should try MythTV. If it can't fit in the 1000 byte text file, you need to read the source to figure out which key to press. Try explaining that to your wind0ws using buddies.
Sorry, this is one that Eric Raymond should have researched a bit more. Not because the interface he's talking about is any good, but because he's firing at the wrong target, as others have pointed out. I wouldn't expect someone who doesn't know Linux to figure this out, but Eric should have been able to tell the difference between a Red Hat hack and CUPS proper (at least the localhost:631 web interface).
While I haven't used it myself, the number of complaints about it on the linuxprinting.org forums (vs. the lack of complaints about Mandrake, SuSE, etc. in this regard) suggests that there's a problem. From my standpoint this is a real nuisance, since a lot of the people blame Gimp-Print for their problems (reasonably enough from their perspective -- I don't blame them for that). However, ESR should know better, and should be able to pick his targets more accurately.
He does have good fortune files on his site, though...
"I always try and get an open source-coding friend of mine to understand this, and it never seems to sink in."
And the thing that people weaned on closed-source software don't get is that OSS doesn't follow closed-source rules. In closed source either some guy is payed a lot to design the ui, or "compelled" to design the UI. In open source there are only the barriers an individual puts up themselves. UI people can participate in the process. Writers can participate in the documentation process. Marketers can participate in the process. There's no one saying "do it or else...". Now if one wishes to simply complain that open-source doesn't play by closed-source rules, then they're simply out of luck.
Have you tried the kde print interface? I have a network printer. I simply went to the print dialog, clicked on the wizard, told it to scan and boom there was my printer. I said ok, then printed the document which looked perfect.
ESR complaining about someone else's stuff.
What a follower.
Here is my quick account of setting up a Mac (10.3.2) to print to a Brother MFC-8820D.
I plugged one end of there ethernet cable into the printer and the other into my laptop. So far so good.
Being a highly competent user, I then went straight to the Printer Setup Menu and click add printer. I chose IPP printing. Then I turned to the sales guy and asked for the default IP address of the printer. He didn't know. I didn't know. It wasn't in the manual either.
I cursed. I yelled. I was annoyed. I sent two people off the go and find out the default IP of the network card.
While sitting there quietly spouting profanity I looked in my list of currently configured printers. Well buff my nuts and serve me a milkshake! There, in the list was the Brother printer all configured and ready to go. I didn't have to do anything.
I selected it and pressed the "Configure" button. It launched a web browser and brought up the configuration page.
I fell off my chair.
I later learned that the printer supports ZeroConf network discovery. Apple takes that further by selecting the correct driver automatically. It work just as well via USB, only if I think want to share it to other Macs I then have to follow the very complex task of clicking the "Share Printer" box in the System Prefs.
i would like to note that printing (well) is such a pain in windows developement that a rather large number of programers just include the Crystal Reports runtime with their applications. maybe we can learn something from that.
a clubbed head to match.
"ok, this guys a freak"
Oh, and what the fuck are you, normal? Posting dating tips on slashdot under AC.
I'd bet both my balls you play Everquest. Chicks that play EQ are all fucking insane.
I had already, through a lot of pain, setup my printer when I upgraded to KDE 3.2 but i just checked the printer manager in 3.2. It looks very good and easy to use. I didn't try to setup my printer again (not that brave) but the interface looked clean and well organized and you can use it to setup a CUPS printer. I guess somebody already "submitted the patch".
Reminds me of that guy on Byte. Always having a problem, and all these technical guru's just happening to be handy to fix his problem.
I submit that it *would* confuse an inexperienced user. I personally found it easier to sit down and read the man page for fetchmail. This is not because I love me a conf file, but becuase I tried fetchmailconf, and was confused by it.
Take a look again and tell me why
#1 There are ok/quit/save buttons at the top and what they apply to,
First, if you have't read the original Macintosh user interface guide, do so. There are some strict rules, which today even Apple forgets, but which all competent programmers must know.
One of the basic rules in that manual is this:
-
You should never have to tell the computer something it already knows.
What this means, in terms a programmer can understand, is this: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.
I hate the CUPS UI also, but the writer lost me here:
If the designers were half-smart about UI issues (like, say, Windows programers) they'd probe the local network neighborhood and omit the impossible entries.
This is exactly what I would expect from Windows, and what I don't want in Linux. Because eventually a) something will be greyed out when I know it shouldn't be, or b) something will be greyed out when I think it shouldn't be, or c) I know something SHOULD be impossible, but I want to select it anyway for troubleshooting or experimentation. Who's to say I don't want to configure my print queue before I go down the elevator to bring the printer host online?
Evil is the money of root.
Do you even KNOW who Eric S. Raymond is?
He is a puppet - famous because some wealthy entities have an interest in giving fame to a "leader" that will compromise on core values. No cause for worship.
Expert in software patents or patent law? Contribute to the ESP wiki!
There aren't too many names in open source software bigger than his.
/me whistles innocently and looks around
Or egos...
ESR has done a few good things yes, written a good paper, maintained and hacked on a few things, but he also has a tendency to draw certain other beliefs he holds into his open-source related dealings.
I use Friend/Foe + mod-point modifiers as a karma/reputation system.
That was an example of what the grandparent thought Eric should have said, not what he did say.
ESR has little experience with configuring printers under Windows. It can be an absolute nightmare: networked printers are installed by making them local printers and then entering an IP address for the port number, local printers plugged into USB fail to be recognized, you have to select from zillions of nearly identical printer models, etc.
The way Aunt Tillie gets this to work on Windows is that she calls up Johnny, the good little nerd, treats him to her chocolate cookies, and has him suffer through this problem.
CUPS itself, for all its internal messiness, can easily presented with a better UI: Apple is using CUPS for OSX (even Apple's GUI is somewhat confusing for non-geeks), and how easy or difficult printer installation is on Linux depends more on the distribution and the UI it has chosen than on whether you use CUPS or LPRNG. CUPS also comes with an internal GUI (web-based) that is semi-decent.
Sounds like the distribution ESR uses (RedHat?) has a bad printer installation GUI, one that actually is worse than what CUPS comes with; he should complain to his distribution vendor--that has nothing to do with CUPS or OSS.
I understand the frustration with a lot of OSS GUIs, but in my experience, Windows GUIs are no better, and often worse.
The following needs to happen before any Linux distribution can be accepted by the masses.
I can sit down with 3 networked computers with printers attached. Two with windows pre-installed and sharing turned on, and another fresh out of the box. Without having to read through a HOWTO file on the internet, I should be able to:
1. Install Linux on the new machine.
2. Install Linux on one of the old windows machines, while preserving the data on it.
3. Get the network to work and see shared hard drives on any machine from any other machine.
4. Read and Write to shared hard drives, and set up passwords and security if I want to.
5. Be able to print to any printer from any machine.
6. Access the internet though dialup and DSL.
I tried various Linux distributions over the last 5 years, and sadly, none of them come close to meeting all six requirements. These are pretty basic requirements that users will regularly have. If Xandros or Lindows or someone can set up a lab and work on it until their distribuition can handle them, they should dominate the market.
> You mean a bunch of volunteers didn't always
> think about the (l)users and created a bad UI?
> Wow, none of us knew that!
And the best part of it is that ESR is as guilty as sin himself. Want to see a really crappy user interface. Ladies and gentlemen I give you:
fetchmail
Tip: dump it and use getmail
The Machine stops.
Exactly, if MS engineers and QA guys decided that all they had to do was design an OS and a UI that *they* could understand, they'd end up with something very similar in look and feel to Linux, and it would probably be almost as fragmented. It might not be as good as Linux under the hood, but then if MS had the same UI as Linux did, it would have died out to Apple or OS/2 or just about anything else back in '95.
I am government man, come from the government. The government has sent me. -- G.I.R.
So, I'll concede that they are not the best examples of usability, but I do think that they avoid all of the points that the article was ranting about.
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.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
Right now the name of the game is to get marketshare. This seems a good idea right? More people using opensourse applications mean less people using Windows, can't complain about that. The thing that you often forget is that Open Source is also a business model, read that as, open source is not only a way to fight the system, but to make money in an open enviornment. The effort needs to be placed into making everything stupid user friendly because as we get them to use the Open Source products we are creating a real market in which Open Source can thrive and give us all a job.
(Tongue FIRMLY in cheek...)
Well, assume F/OSS TWD.
Now we have to make money selling service rather than software.
Don't we want network printing to be hard? Then someone has to pay me for the Service of working my "knowledge worker" magic and getting the bits to start flowing. Sort of a high tech plumber.
What two shouts keep net admins working hard? "I can't print" and "I am not getting my emails."
So CUPS guys, even if you fix this you will want to keep some regression faults handy... we need to eat, after all...
-- John.
ack, apparently I can't use any interface, so take anything I say with a huge grain of salt. (the submit button submits the post, can you believe that?)
I'll have to recreate them here, but my other points were
(some of the problems can't be seen from the screenshots)
The ui of fetchmailconf is completely different from any other mail configuration program I have ever seen. (yes, IMO very different == less usable)
It suffers from the usability problem of "configuration modes" - advanced/beginner mode.
It segments the parts of the dialog very strangely
Poll interval is to be entered in unspecified units
If you click edit, it pops up an error telling you to select an item from the (empty) list.
I'll stop there, there is really a lot wrong with the program. I'm guessing you have never used the program, but it is definitely not a shining example of usability, not just due to its use of tkinter.
-Mark
Yes, the fact that the dialogs don't follow an established STANDARD does hurt the usability, but I don't think that they are BAD.
Yes, that is pretty much the definition of a bad GUI program.
I live in a giant bucket.
Eric has some excellent points, but just to muddy the waters a bit, Windows often isn't any better.
For example, I have to set up printing to JetDirect network printers at work under Windows, and it's horribly unintuitive.
1 Run the printer setup wizard
2 Say you're setting up a LOCAL printer, not a network printer
3 Un-click "Detect automatically" and press Next
4 Say you want to create a new port. Selecct TCP/IP port from the dropdown. A new TCP/IP port wizard pops up. Type in the IP address of your printer
5 Select the printer make and model.
It would probably be easier to set up CUPS on a JetDirect printer than Windows, based on the menus Eric cites. Too bad that wasn't what he had.
D
If the software was BSD licencened, when a programmer determines the original authors have failed (say user interface) and they feel they can do a better job, said entranpenure can write the better interface and charge for it.
With the GPL, the profit motive is removed, thus relying on 'whenever' for user interface improvement.
I think when you auto zero someone you should have the balls to put your name on it...
Jeoin
Who is this "we" that this ESR guy refers to?
I've been using Linux as my main OS at both work and home for about 7 years.
/etc/X11/Xf86Config. All accompanied by extremely liberal doses of docu searching online, of course.
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.
Liberal (adj.): Free from bigotry; open to progress; tolerant of others.
Please just remember that part...
:
:
I happen to have recently installed a Laserjet on my gf computer, and it's Win2000, and the whole process took me 5 minutes (1 config failure, 5 seconds of intensive neuronal action and then the right click on the right button)
I simply used KDE printing tool that came with the nice Knoppix-Cluster cd, and took 5 seconds before hitting buttons.
Also, please remember
COMPUTER WEREN'T MADE FOR PEOPLE !!! Computers were made for experts in companies, the fact that windows is "easy to use" (damn, it hurts !) or even "intuitive" (I actually wrote that ?) has been the main cause of problems, because the configuration was a "One-Size-Fits-All" solution.
=> Most Windows computer are configured almost all the same, default, and so more or less all exposed to the same problems. They work "perfectly" (my hands start shaking) as long as everything is in the "Normal Scope" (everything open and accessible from anywhere, except if you change it, which users don't)
=> Microsoft made 2000 and XP. One is clearly a server Os, where even access to cdwriter for users has to be configured by hand. Many things are accessible, but you have to RTFM a bit and you can get it almost secure (MS notwhistanding)
XP, on the other hand, is a nice "plug-and-play" thingy with lotsa grease and help so that even Aunt Milly can do it herself (or pester her nephew/son/grandson, as in the 99.99% of real life cases)
You want an easy to use OS ? get a playstation.
You want a desktop computer that just works ? get XP.
You want a hard, rugged and stable server ? get linux.
You want a nice Linux desktop easily running in no time ? be ready to lose most of your security, or wait some more time... MS had 20 years to learn how an UI should look, and they do extensive usability tests, have specialists, teams, and so on dedicated to the problem.
It will come in time, but Linux wasn't thought for the desktop, so the transition will take some time. The poor guys making cups did an excellent job as the server works 100% (for me). If you dislike the UI, please follow usual Open source procedure
1 / Email the dev and tell him (gently) what's wrong in your opinion and what should be done. If he has the time, he'll fix it. (99% of real life cases ?)
2 / DO IT YOURSELF AND STOP COMPLAINING FOR CHRIS'SAKE !!! you are a guru Linux wizard, so get emacs runing and do your conf files, or write a better UI.
Ahh ! No point in this post, but I somehow feel better 8)
Linux is about choice and RTFMing : always had, server-side, never will, desktop-side...
If Users knew how to do it, they would be sysadmins...
It takes 40+ muscles to frown, but only four to extend your arm and bitchslap the motherfucker
Im glad I read this article. I am an average computer user (I play EQ). My idea of a printer network is physically swapping the USB cable back and forth between my Windoze and OSX boxes. I still have far more computer knowledge than my colleagues outside of the IT department. People run to me for computer help at 2am when Excel crashes and tech support is asleep in their warm little beds.
I hate Microsoft with a passion. I love the concept of free market forces burning Redmond to the ground. But after reading this article Im starting to feel awfully warm and fuzzy about Clippy.
I was thinking about getting Linux onto a spare box that I have to play around with it. Now I know better. Ill make sure not to touch Linux with a 20 foot pole nor any other OSS because frankly I have enough problems in my life.
I work for a large printer company and I just had my first bit of luck getting CUPS to work with a few of our networked printers today. I must tip my hat to the Ghostscript folks. Thanks to them I can now print. But I had to use a generic post-script "driver" to make it work. The were no enhanced funstions available to me (and why would there be, you programers can't do everything), BUT why not include the option of using a printers PPD (Postscript Printer Definition) file to determine the available functions?
Mac does this, Windows does this, Adobe's own "Universal printer Driver" does this too.
There are several programs that also override the OS's printer drivers and require direct access to the PPD. Quark Xpress, In-Design are 2 examples.
As part of my job I need to be able to access and demo these functions to potential customers, this one speed-bump is the only thing that keeps me from doing it 100% in Linux.
I am not a programmer. My programming skills stopped at basic:
10 print " hello world"
20 goto 10
So please don't yell at me for not writing my own fix for this. I'm not the bad guy, I am trying to endorse a better alternative to MS.
"The price good men pay for indifference to public affairs is to be ruled by evil men." ~Plato (427-347 BC)
"'This kind of fecklessness is endemic in open-source land. And it's what's keeping Microsoft in business -- because by Goddess, they may write crappy insecure overpriced shoddy software, but on this one issue their half-assed semi-competent best is an order of magnitude better than we usually manage.'"
This is precisely why i tune Eric Raymond out - the way he makes his points reeks of fanatacism. I hate how he represents opensource, it makes us all look bad.
ESR's rant reminds me of an early assignment in my first professional job (principally hardware design but I generally found many of the software bugs for the programmers I was assigned). This particular assignment involved writing technical documentation in the form of a user guide for another project. Don't laugh - companies actually used to do this kind of training.
Anyway, the acid test for any documentation was to take it to a secretary. Have the secretary read, understand and successfully use the project gear solely from reading the documentation.
This proved to be an incredibly effective exercise for designers/builders/coders: a humbling lesson that something bright/shiny/cool you've created is virtually worthless if no one but you can actually use it. For many in the OSS commuity, this seems a lesson not yet learned. There is progress - but I often find myself thinking thoughts not so far from ESR's when I'm trying to configure this or that on one or another Linux box.
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!. 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.
How about you learn to read? He's not printing to a Windows XP shared printer, he's printing to a printer connected by (for example) a JetDirect print server.
'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.'
WTF did he just say? I hate it when people write overly complex, especially when they're writing about something being "stupid".
I should add I didn't read the article, but I can agree that most things open source have poor and/or inconsistant interfaces, configuration, and usage.
Not only are you right, but it goes beyond user interfaces. I'm a mac user but I install linux on my old pc every now and then to see what kind of progress you guys are making. My latest dist to evaluate is Ark Linux which is supposedly being built specifically for the desktop. Ark bundles KDE but not GNOME. One of the things that's really gotten to me is the process of choosing an application to open a file. What would be nice would be if I could just be presented with a list of installed programs that are able to open the file. There's far more to ease-of-use than GUI design. I suggest some of you read up on some HCI books.
I do think that it's possible to get linux to the point where it can be ready for the non-technical user's desktop, but I also fear that making that happen will end up stripping out everthing that linux (and most of open source) stands for. (Forking, in particular just won't work.) If the community can get behind that idea though, linux on the desktop should be doable.
--- Don't ever trust a woman until she's dead- B.B. King
A good article.
Now maybe ESR will sit down and start to fix the problems he is having with the software rather then taking the easy, 'lets gripe about OS software but not fix it' approach!
If it's true that the impetus for writing free software is to 'scratch an itch' then this would be why initialization is typically bad. YOU DO IT ONCE. Or at least seldom. An itch that happens once and goes away becomes a low priority item simply because the hackers who are familiar with the project aren't doing it very often.
So these things do eventually get fixed because there are some classes of users out there who care about such things. For instance, the system integrators and distribution builders typically care about fixing these because they have a large number of people doing installs and they want to cut down on support costs associated with answering printer questions. Also, eventually some hacker will be annoyed enough by how bad a setup is to actually send in a bug report or a fix. Even some of the Aunt Tillys do it because they complain about how bad their linux experience was with specifity to someone who cares to fix it.
Raymond's rant is fine in that whoever made the CUPs setup GUI that he is using will probably read it and fix the problem. Who knows, maybe some other projects will look at their installation for similar obvious problems. However he would be better off either sending real fixes to these people or sending them good bug reports rather than writing about it in his blog.
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.
The I ran into this when I had to get my daughters iBook to use a printer on a Windows box. I found instructions on the web to point a web browser on the OS X to the loopback CUPs address - http://127.0.0.1:631
I had a SuSE box that I could not get to print to the Windows box. Yast was FUBAR for this. I followed the instructions ( loosely ) written for the OS X on the Linux box and it worked!
Religion is the main cause of atheism.
It knows you plugged a printer in.
You know you plugged a printer in.
You print to the printer, toggling the pop-up list of printers in the print dialog, if need be.
Windows, on the other hand, screams "LOOK WHAT I CAN DO!" like a 5-year-old to his mommy.
--
"I have also mastered pomposity, even if I do say so myself." -Kryten
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.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
Tried the same thing the other day at work. I'm a programmer that has worked on both windows and mac, but new to Linux. I had to say it but Linux SUCKS! I tried to install my printer, and my usb mouse stopped working. I needed to download and untar several updates. WTF. I should just click download and be told when to reboot.
Then there is copy and paste. It doesn't work! Some time you have to Ctr-C, Ctr-P, some times Shift-Ctr-C/P. In Evoluition you have to right click into the subject line and select paste off the pop-up menu to paste! But you can Ctrl-C into your email it self. Then there is the buffer or lack there of. I can copy huge amounts of text around on Windows, and Mac but not Linux. The buffer gets too full and nothing happens. So you have to copy out parts and go back and forth lots of times.
Why should I have to "Mount" a CD-Rom or Thumb drive? Under Windows and Mac that's done automaticly. (Funny computers can be used to automate tasks!)
There are some very wrong things with Linux from a user standpoint, and need to be fixed in a big way. I think Linux should not be allowed to run on 64-bit chips until they get a basic interface that works.
Why can't I unmount my CD-Rom if I'm in a directory say on my CD-rom but have nothing open? I mean really?
I do like Linux; I think it ties with Windows XP as my second favorite OS. Mac has done good with OS X, and I think Windows keeps getting worse. I would love to see Linux get some of these basic things taken care of and maybe take a bit more of lead.
...that the only reason Linux continues to exist is because of Linus'es maniacal grip on one kernel version and what goes into it?
;)
So...just thinking to myself, um, what happens if Linus is...snuffed out?
-1
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 if you want some solid reasoning behind this (better than I could give you). Edward Tufte is also a classic.
please talk to me.
:)
hello
is anybody out there.
you guys just don't like me
Jeoin
Perhaps if you weren't such a bastard nephew you would gone over to Aunt Tillie's house and set up her network for her. Not only would this solve her network printing issues but she would have also left you in the will.
ps. Aunt Tillie said I get your share of her estate!
I myself am a relative newbie to Linux. I like it, it's powerful. And unlike MS, Linux doesn't think it knows what you're trying to accomplish. It doesn't try an do anything for you.
But unfortunately, I haven't made the switch on my personal computer-- The one I use most often. I have no incentive to. Linux is perfect when you don't have to touch it directly to use it well (read: server).
I must say however, Lindows has got it together when it comes to being user-friendly. Now they just have to pump some power back into it, and it'll be perfect! (Did you know that click-and-run solves version dependencies?)
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)
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
it's more of a copout...open source programmers are not able to develop a ui that is better than windows (as lame as that is)...
Having worked on GUI design a bit for my own code, I would suggest that approaching it like a "human programming" problem is helpful. These are the key questions:
What tasks will the user want to complete? (e.g., configuring a printer to run on network)
How do I write a GUI that will encourage the user to make choices toward that end?
What dumb things could the user do?
The challenge (and therefore interest) is now found in answering those questions in a robust way. It is very similar to the challenge of proving an algorithm to be correct.
Unfortunately, a lot of designers seem to think that eye-candy is equvalent to a good GUI. That's a boredom-inducing approach.
Human being (n.): A genetically human, genetically distinct, functioning organism.
It occurs to me that Linux's major sore points have to do mostly with input and output. A computer's purpose is to process information. To do that, you need to get the data in. After processing, you want to get the information out. In = keyboard, scanner, digital camera, sound card, etc. Out = printer, fax, cdrw, and so on.
Linux is lacking in easy to use support for many input and output devices. Perhaps the problem is that most Linux developers are more concerned with what is already on the machine - the source code tree - than with actually doing something with their wonderful creation. If source code could only be compiled through a printer's CPU, you can bet there would be damn good printer support. If source code could only be tweaked using OCR'd text input from a scanner, you can bet there would be great scanner support. Think about it.
what the title says.
First of all, usability issues are rarely things that can be fixed with a "patch". You usually need to design the software with the users and their tasks in mind from the beginning. And you need to realize that the users are often very different from you - e.g. they are far less knowledgeable about your project domain.
And I think ESR is trying to change the value system of the open source world - trying to get it to value usability as much as performance, security, maintainability, etc. If the "economics" of open source has developers getting "payback" in the form of acknowledgement from their peers, perhaps we need to change the "exchange rate" so that the feedback from non-technical users (Aunt Tilly) is valued more highly.
Gooey interfaces are usually not well developed in the open source community because:
/var/spool/myprinter
/etc/printcap file: :sh:\ :ml=0:\ :mx=0:\ :sd=/var/spool/myprinter:\ :rm=PutIPaddressHere:\ :rp=PutIPaddressHere:\
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
I don't know about you guys, but I'm just stoked that "feckless" is an actual word. That's the big story here.
Bzzzzzzt. Wrong. This guy was talking about setting up a network printer. You know, a printer you plug into a router that is *NOT HOOKED UP TO ANY COMPUTER*. He's right, you know. After you click "local printer", it gives you the option of specifying an IP address directly to the printer itself. What the fuck is that doing there? That should be in "Network Printers", except that Microsoft considers a network printer a printer configured locally on another computer accessible via SMB.
So, I guess TCP/IP is not considered a network, according to Microsoft.
Read: Rabbit Rue - Free serial nove
Hmm. My experience with CUPS was very pleasant. I got my setup working in 5-10 minutes without reading *any* documentation. It was very easy; orders of magnitude better than the old lpr. Reading the documentation would surely have recuded the time even further. The documentation at the CUPS website is fantastic; every aspect of the system is well-described and easy to follow. I don't see that this guy has any excuse for fscking it up.
Don't become a regular here, you will become retarded. -- Yoda the Retard
Don't forget sound. Linux sound is shitty beyond belief too.
(I finally got ALSA working properly last week.)
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
So? Are people without indebt knowledge of unix worth more or something? You see the problem is that you don't have the time to learn linux BUT we don't have the time to teach you or to write tools that we don't need just to hold your hand.
There are basically two groups in the linux camp, those who want linux to rule the desktop and server market and those who couldn't give a hoot. When you say you prefer Windows I personally couldn't care less. It is no different then saying you prefer coffee and I prefer tea. If you then go complaining how you really don't like all that caffeine in it or how the coffee bean growers are treated then I will just shrug.
Just stop trying to turn my tea into coffee.
Elitist? You bet. May be a dirty word to some but I wear it with pride. If you want windows then run windows. Good luck getting microsoft to listen to your complaints. Opensource can't really be of service to you. By geeks for geeks. Go ask the people who want linux on every desktop. They have the agenda they should give you the code.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
Yes, a self contained kiosk can use whatever UI suits the data. This isn't a self contained kiosk, it's a gui app using standard widgets in a nonstandard and rather confusing way.
When designing a form using standard widgets, use them in the standard way. Think about it this way, would you purchase a car that had a rediciously nonstandard dashboard? I wouldn't.
I live in a giant bucket.
Except Jet Direct has probably been around longer than you have, and certainly longer than Microsoft Networking. So, does it make sense for HP to change a decades old protocol, or for Microsoft to put a network related option in a network related menu?
Read: Rabbit Rue - Free serial nove
My question is - How can *I* easily setup a printer in Linux? Without the easier GUI offered by KDE or GNOME, I've found CUPS and other printing systems virtually impossible to configure. I have an HP5L printer. I'm really happy to see ESR write about this.
I'm a fairly adept technical user. I prefer to use Slackware and a bare minimum Window Manager ie Window Maker. KDE and GNOME offer nice GUIs to configure CUPS but its overkill to install either to setup a printer.
I've been planning on switching all my essay writing to Linux for practical reasons. One of the only reasons I'm using Windows to do work on is that printing is really hard to setup on 'Nix. I'm not using a lot of fancy fonts - mostly Times - but I do all my writing in either OO or AbiWord. My understanding is that of the older printer daemons don't work/output.
What options do I have?
So no its not just Fedora. Cups works fine once setup but setting up can be a real pain. I've always had problems with it. For just setting up a simple printer at home the native CUPS interface via web or whatever has always been confusing.
Give me lprng any day. Hell even 7 years ago using Red Hat's Print Tool setting up printers was moron proof. That's the one thing I could easily do in linux without any problems. Ever since cups came on the scene I've found it much harder to work with.
So I go take a look at this pdfTeX thing. Well, quite frankly I can't tell what the hell it is or what it does. OK, real useable and newbie friendly.
Whatever...
I do use Scibus though. Along with Sodipodi. Never heard of Cenon before, I'll have to check it out. I can't tell, is it a vector, 3D, or what?
Setting up a printer in win2k would probably be a too hard task for aunt Tillie as well. And when installing a windows driver, we have no way of knowing what other things it may destroy..This is no excuse for open source software though. In fact it is even less excuse for open sorce software than it is for Microsoft. After all we have the code free for all of us to improve.
What's needed is some kind of autoconfiguration tool where printers and other stuff presents themselves on the network so it can be picked up and autoconfigured on the computers that needs them. Didn't Apple opensource something called Rendevoz,that do things like that, a while ago.
God is REAL! Unless explicitly declared INTEGER
Your comment about the Mac using CUPS and yet being easy to configure for printer sharing goes right to a point Eric Raymond completely missed. His problem is primarily with the KDEPrint user interface and not with the CUPS print server. The Art of UNIX Programming, written by a very bright guy, does a good job of explaining the desired separation between the UI and the server.
CUPS is an amazing print server full of options that can be configured to suit a particular environment. It is the best print server in the Linux/UNIX world and, I would argue, the best all around print server in existence. (Bonus points because, in the finest Linux tradition, it is an active open source project being led by a uniquely talented individual)
KDEPrint is also a very nice piece of software, but it suffers from a failing common to many Linux/UNIX user interface programs: it presents too many options to the user. Rather than presenting a few simplifying assumptions to the user, these programs try to present the full power of the server. This is great for the advanced user but it floods the general user with too many choices.
The Mac user interface on top of CUPS is a counter example. When the user hits the "Share my printers with other computers" button the cupsd.conf file is altered to broadcast the availability of printers and to accept jobs from machines on the local subnet. The print server is then restarted. This one simple button takes several steps that are very useful for most users; it does not however provide access to many of the more powerful, less common features of CUPS.
And so, at the end of the day, I think Eric Raymond is noting that KDEPrint does not "dumb down" the presentation of CUPS options enough for the typical user.
Wow, that is exactly what I was thinking when I read this article.
WTF, You are either stupid or too lazy to read docs. And bow damit to the developers who spend long hours working on this code. If you don't like it, become a developer yourself and improve it.
Seriously, a thank you is appreciated. And an extra helping hand will make light work of the improvements needed. If you can't be thankful or helpful, SHUT THE FUCK UP!
Lemme say, I'm not a mac nut, but I play one on /.
I don't use a Mac much, but I have to say, as far as GUIs go, they take the cake. The OS and its respsective progs (that I've used) are the easiest to use, setup, and/or work productively in, especially from a noobs perspective to the OS/Platform, that I have ever used. As a designer/code-monkey myself, user-centered UI design is one of the most challenging things I do. So my hat's off to the Mac OS and Prog UI designers.
For OSS to gain mind/market share in the consumer OS world, UI design is the key. It must be accessable by Joe-moron, who doesn't know his printer from his bunghole, also allow the technical (read:geek) user to configure and customize to his hearts delight, and fill all the gaps in between. This is one of the most difficult challenges a designer faces, but one that must be solved effectively to have the "big year of OSS" I keep hearing reference to.
As a side-note: programing and UI design don't mix (at least in my world) I have to take of my code-monkey hat off and give myself some time to get into design mode before I can do anything useful in a design sense. I dunno, but if someone, as an OSS contributor/programer, doesn't have the design sense God gave a goat it might be a good idea to holler at a designer (who does this stuff every day) to help ya work out the kinks of a tricky UI problem.
Anyways, just food for thought...
Every non-technical user I know has similar sounding Windows troubles. And me, who rarely uses Windows, has to figure it out, and let me tell you right now - it isn't intuitive or easy to use in any way for the non-initiatied into "One Microsoft Way". This whole rant could well have been about any number of Windows sub-systems I've had to struggle with over the years.
Honestly, this problem is pretty much endemic in all software. And that's not a good thing - it's a important lesson for *every* software developer to learn.
Absolutely, I can't believe ANYONE was holding them up as a pinnacle of good design. They truly are horrible.
Hey guess what pal, when someone makes something for free, they are not necessarily going to stay motivated to keep fixing the problems you find in it, after the point that it works for them and all their friends.
I hate to break it to everyone, but ESR's old formulation of hacker "gift-culture" motivations BREAK DOWN right at the point of this essay -- when interacting with people outside the culture.
Why dont open source programmers stay motivated to meet the needs of people unlike them? BECAUSE THEY ARE NOT GETTING PAID. These people will not in turn make great software for the hackers, or even likely learn their names or offer them any respect. They will just bitch, and then use other software. No reward is offered.
Duh
"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.
What I always miss in free software that I try to use is examples. Some command-line software I try to use has all the options cleanly documented in very specific terms with every possibility labelled and indexed by date and whatever the hell else, but it's missing one thing: examples.
Try running hdparm for the first time, and you can see a pretty good example: if you mess up your syntax, it gives you the --help, without actually saying what it was you need help with. If it said 'invalid option' or 'you must specify a device', then that would be fine, but instead it gives me a screen and a half of junk that I've *probably* seen before (honestly, could you ever *guess* how to use hdparm and get it right?), without actually telling me what's the dilly-o.
I'll say this once more, to all the documentation maintainers: if you have a command-line tool, you need to follow a few steps.
If the parameters don't hash, tell them what the problem is. Don't just repeat the --help over again, that *NEVER HELPS*. Tell them what went wrong. If possible, tell them how to fix it, e.g. instead of 'invalid argument to -B' say 'argument to -B must be in range of 42-69' - bonus points if the argument range depends on outside variables that you can detect.
If you have a man page, provide examples. Figure out the syntax of the most common things people will use your program for, and provide a few examples to give them a solid idea. Parameters are good, yes, but a lot of people don't have the mind for reading a bunch of variables and putting it all together mentally. We'll catch on faster if we can see an overview of the whole thing, instead of miles of microscopic detail that we have to piece together.
If you don't have a man page, make a man page. Make an info page too, if you're bored, but don't spend too much time on it, no one uses them except the GNU zealots anyway (ok, that was a troll, I admit).
If you have a GUI, take out any options that don't NEED to be there. Put anything that NEEDS to be there but won't be changed by most users into an 'advanced settings' dialog. Take a lesson from the Apple folks: you can make programs with only two changable preferences and still have it be a usable program for thousands of people. If you need to have that many preferences, maybe your program is too complex. Apple keeps its fanbase because it can do one thing: get out of your face. Because you don't have to worry about the assload of shit that Windows and Linux programs throw at you, you can get down to work and get your job done.
And finally, to reiterate, autodetect whenever possible. It might take you longer, but it'll make for a better and more envious program - 'hey, I like how your program automatically detects networked file shares and adds them to the pop-up' or whatever. Another day of coding means the release date gets pushed back one day, but it also might save hundreds (or, depending on how well you do, thousands) of people a few hours (or days) configuring.
--Dan
But of course that doesn't sit well with those who have an agenda to get Linux to fight their crusade. Or even worse to get them to not to have to pay Microsoft anymore.
But it is a sign of the time we life in. Give someone dying of a heart attack in the street CPR and they will sue you if you break a rib. Write an excellent printer sharing protocol and people will only bitch about how they need to read the manual.
Opensource doesn't just work with developers on one side and users on the other. If it is going to work then we need manual writers, forum guru's, gui designers, beta testers, patch submittrs.
Users are like customers. MS loves customers because they pay. Opensource is free. What do we care how many customers we have? 1 * $0 is the same as 1000 * $0 but it costs a hell of a lot more to have 1000 people asking stupid questions.
Rant: Old saying is there are no stupid questions only stupid answers. This was true before the invention of the net. Read any forum and you will see time and time again the same question being asked because the asker can't be bothered to first look. Then they will bitch that noone helps them. Obviously their time is more important then everyone elses. Recently saw the worst of all. 9 pages down a ***** said "I am not going to read all those pages give me the answer". ARGH!
End rant.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
Gee, Eric, if you found that hard, just wait until you try the rest of open source!
are for wusses.
"We blow this stuff off because we want to make it workable for those smart enough to deserve to enjoy it then quickly move on to the Next Great Thing that Needs to be Made Now."
I think you've hit the nail sharply on the head there... the problem with far, far too many nerds is that they are entirely utalitarian... if it works, well, dang it, that's good enough. I've proved I can get that to work, so I'm bored with it now.
There kind of needs to be a whole set of other 'design nerds' who come along after the 'worker nerds' have done their bit, and make it all pretty and sensible to use... these 'design nerds' would have a good understanding of what the 'average Joe' is comfortable with in an interface.
Or, since OSX uses CUPS, why not copy their interface? At least some of it should be open source already.
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?
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
So let me get this straight. You left Windows so that you could find the most Windows-like OS that a)cost money like Windows b) is proprietary like Windows c)suffers from the same vendor lockin problem like Windows? And you think we have it all wrong...
btw XP on my HTPC wouldn't work with my usb NIC. The tv out was always screwed up as well. It was always something with Windows. Meanwhile it all works perfectly under Red Hat/Fedora. I guess Microsoft should get out of the "home user game" since their so shitty at it. As far as getting out of the home user game, fyi Red Hat was never in the home user game. Even now they are just starting to cater to coporate users. If you read any of the statements from their CEO you would have known that.
Lastly Red Hat pays many of its developers to work on Fedora. It works. Well. I don't have to sell it. It's Free. Always will be. Both Fedora and Windows XP are a better choice than xandros. See we both can play the Trolling game.
If you wanna get rich, you know that payback is a bitch
Some points:
/dev/null
1) Aunt Tillie is (usually) not a System Administrator
2) Cups is the default printer facility under Fedora core 1
3) Not everyone has a Sysadmin in their back pocket
4) Not everyone has (or wants for that matter) windows machines on their networks
5) He was using CUPS as one example - read closer
6) Can you imagine Aunt Tillie attempting to set up Hylafax? How about Pan?
He is talking about non - technical Linux noobs, not geeks who dream command lines
and bash scripts.
mv sco
because a computer is a
terrible thing to waste.
-:
Fedora, CUPS, whatever...
PC here. Printer there. Make it so.
In clear, precise, EASY directions.
...too many chiefs, not enough braves.
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.
There's this new unix distro out that does all this. Stuff just works. No sweat. It's not cheap though.
Linux needs a company to take what's out there, invest a few million dollars into making it "just work", and then turn around and sell it. The GPL makes that difficult, though, so for better or for worse that might be a ways off. Redhat dropped the ball here, IMHO.
In the meantime, linux works GREAT as a dedicated development workstation, I use it all the time for signal processing problems and network development. Once I graduated from University I just don't have the time to fuck around with making cameras work anymore. Luckly, a solution appeared that didn't involve "Start" buttons.
..don't panic
we don't have the time to teach you or to write tools that we don't need just to hold your hand.
Those who want free software to become widespread on computing novices' home computers need those tools. J. Random Hacker may not need those tools on her own desktop, but she needs those tools on somebody's desktop. If those tools are on somebody's desktop, then PC vendors may start to pre-install a free operating system, and the peripheral vendors may become more likely to cooperate with developers of device drivers for free operating systems. Bottom line: By making free software easy to use for people who buy peripherals, JRH would ultimately benefit from a larger selection of affordable peripherals that work with free operating systems.
"If Users knew how to do it, they would be sysadmins..."
With all the outsourcing and the "burger flipper" jokes. The above isn't saying that much about sysadmins.
At home:
1. http://localhost:631
2. Device URI "smb://Workgroup/Computer/Printer"
At worK:
1. http://localhost:631
2. Device URI: "smb://USER:PASSWORD@PrintServer/Printer"
Be sure to pick the right driver! "Cupsomatic" has lots of extra drivers, and probably includes your printer. At work I print on a colour-laser with double-siding and letter or legal paper. It all works.
The Mac's Classic OS used a little program called the Chooser. Combined with the AppleTalk network protocol (often laughted away because of the 'chatty' nature) it was a complete non issue to select a network printer.
Even under OS X it's a little more difficult.
See for yourself
Good luck getting microsoft to listen to your complaints.
Microsoft doesn't listen? They may not listen to you, the "elitist" Linux geek; however, it's obvious they are listening to Joe User. How else do you explain people still shelling out 200 bucks for an OS? Don't give me that crap about people not knowing that Linux exists. At the little podunk community college I attend, most people are aware of the existance of Linux. They use Windows because even though Microsoft gouges them, even though Microsoft adds things they don't want want or need, even though Microsoft software has security issues, the one thing Microsoft does is make it all easy to use.
By geeks for geeks.
Don't lump me in with you. I am a geek and I understand that users provide me with my livelyhood. If it was all just for geeks I really wouldn't be making much money.
Go ask the people who want linux on every desktop. They have the agenda they should give you the code.
The user doesn't want the code. They want a working product and they don't want to ask. You obviously don't know much about end users.
Opensource can't really be of service to you
If that's the case for the average user, then expect opensource to go the way of the dodo, taking you along with it. Enjoy extinction!
Ok, personal OSS rant.
RMS says that coders should give code away. You work as a waiter, or do something else for a living. I don't want to be a waiter. I want to write code. So, "something else" has become service and support.
Here's the rub -- when you make your pennies on service and support, you have no economic motivation to make it easy and self explanitory! You make MONEY when it's hard to use.
This I think is the downfall of the current OSS business models, and I haven't found a way out of it. OSS projects are destined to remain difficult as long as there is no economic motivation (and we've already established that there's no artistic/ego motivation) to make it beautiful and easy.
I'm not saying that Windows is right or that Mac drool-proof design is right, or that OSS is fundamentally wrong. But I'd like people to understand the motivations that their choices steer them to. I feel bad when I get harangued by OSS types for making non-OSS products. Just understand that not everything is as cut and dried, and that most OSS business models have yet to be proven successful.
Let the GNU/GPL/RMS/OSS/ESR flaming begin. I'm ready for it. I've thought this out for a long time, and I make a living writing software. And no, my software is not a paradigm of simplicity, but I'm not having delusions of taking the desktop away from Bill G by conquest.
-- There is no truth. There is only Perception. To Percieve is to Exist.
I notice a big difference in installation and configuration difficulty between 'traditional' distros like Mandrake, RedHat, etc, and my Knoppix hdinstall.
I was a Mac (System 7, OS8, OS9) driver for more than a decade before I switched to Linux almost a year ago. Began with Mandrake and ended up with Knoppix on the hd. Knoppix gives few, if any, problems compared to the distros I've tried that require a more 'normal' installation - RedHat, SuSE, etc. I'm not saying all the interfaces are perfect or that things, CUPS incuded, don't bork once in awhile. But really, Knoppix is quite good. Much easier for a n00b who can use Google than the 'real' distros.
IMHO, the LiveCDs should be the first priority for GUI and interface improvement. They are, after all, the primary tools used to evangelize new Linux users and are much less intimidating to the uninitiated.
As I gained a little experience with Linux, I couldn't figure out why should I spend an hour wading through Debian's old text-based installer when I can literally have the entire Knoppix distro onto the hard drive and running in 15 minutes or so. Come to think of it, I still can't. I use apt-get all the time to install software (will never consider RPM again), and every peripheral I own plays nice with Knoppix, almost all right out of the box.
That includes a MacAlly USB KB, Logitech USB Trackball, SB Live, nVidia card with 3D drivers, Adaptec U160 card, 3COM Gigabit NIC, HP Scanjet 6200C SCSI Scanner, Apple Laserwriter 16/600 printer (local/parallel), and Olympus D-280 USB digicam.
When I read a mailing list detailing the plight of some poor slob trying to install some simple device unsuccessfully, one of the first things I think is, "Well, it usually just works on Knoppix." Perhaps we need to try and discern why that is the case.
I am very appreciative of the efforts of many folks that wnet into all the packages on Knoppix. Because of them, I'm composing this on a dual 2100MP box with a free OS that ended up costing about $1300 less than a G5 tower. I can't give you technical reasons why you as a programmer might want to build on or extend distros like Knoppix. What I can pass along is my personal experience that it was easier to configure and use than anything else, even if a few things could be laid out a more logically.
RTFM elitism aside, at the end of the day, that ease of use plus the overall stability is what keeps me using open source software instead of something from Redmond.
If he thinks Fedora and CUPS are bad, let him wade into someone else's Windoze network sometime. Think Aunti-T is going to be able to figure out what work group she belongs to? What the hell G: is? Netware? Ho ho ho! Jetway? Ahhh, ha ha ha ha! You're going to give her some floppies, a CDROM and expect that stuff to work when M$ changes the OS through updater? Does he really think M$ never leads you down blind alleys? NO FUCKING WAY! The average home user is unable to make Microsoft junk do any better, and those that can will do just as well with free software.
The folks at CUPS have made a fantastic printer interface and the people and KDE, Gnome, Debian and Fedora have all done a nice job making things easier to work with.
There's no reason to kick people around, things can and are getting better. Compare the ease of installing Mepis to setting up an XP box. This is how things are going. Free software is making great user interfaces.
The Luxury of Ignorance Eric is feeling is a complete ignorance of how bad things really are in the Microsoft world. It's easy to accept the market bable when you don't actually have that sofware sucking your life. The reality can be seen at any computerstore, people bring in broken Windoze boxes all day long. They are blown out with nasty worms, missconfigured underutilized standalone machines.
The whole "shared printer" thing seems like a hang over anyway. He's got ssh working, why on Earth would you not simply SHARE minx and snark through it? When me or my wife need to actually put something on dead trees, we log into the one machine with a configured printer, Star Office and other programs that might be useful for printing. I have not duplicated all of the work on all of my machines, because I did it once and don't need to do it again. The same kind of simple sharing also works for our single CD Burner, music machine and DNS. I don't want all of that software installed on all of my computers. This kind of networking is much easier and can be made simple by adding a nice little button to your desktop that logs you in and calls up a kdesktop from the other machine. Why not play up the underlying strength of an OS with real user accounts? Jet Direct and all of that looks to me like a leftover from single user computing.
Friends don't help friends install M$ junk.
Linux will penetrate the desktop starting with the corporation. The corporation will use linux desktops to save money and cut down on IT staff. Home users will then install linux whether they like it or not just to be able to take work home.
It has nothing to do with what you want.
The best way to support the US war effort is to continue buying American products.
Ok first of all. cups is really great. And its a huge step from what we had 2 years ago. It makes my life a lot easier for setting up printers. Try configuring a printer a couple of years ago under linux and its hell compared to the new cups system.
The cups UI is very new, the ability to select which ports to print to, what printers, what hosts, these are all new features that wern't there before.Tthese poeple dont have a lot of time to refine the user interface at this early stage of development. In a year or 2, yeah sure this can be done. But there prime concern at the moment is getting printing working. Once printing is working they'll start to look at user interface more.
Linux has always had one major difference between it and windows. Linux concentrates on core functionality first in a product. Windows focuses on usablity and gui. GUI's in linux are generally take a very long time to be developed.
So stop blaming cups team for lack of a nice gui and praise them for doing so much in such a short time.
It is *not* CUPS responsibility to please your Aunt Millie. If your aunt millie wants help, she can pay for it. Hell, she can even pay the CUPS folks if she wants - go to cups.org and click a little for details. Or she can buy a distribution that makes it easy. Or you can write the software.
But stop blaming CUPS. If she paid money for Fedora, blame Redhat. If she paid nothing, and got nothing, stop bitching. Why the f--- do people keep thinking genuinely helpful productive self motivated talented programmers should start taking orders from Aunt Millie? For nothing?!
Where the hell is Aunt Millie, really? I never seem to actually see her around here. It's always her runty pimple faced nephews who keep stinking up the place and complaining all the time. Aunt Millie, as far as I know, has never been sighted on slashdot. Not once. Not a single complaint about linux, CUPS, Fedora, Redhat, or anything else for that matter.
In addition to this, KDE's font installation tool is also good.
Karma: It's all a bunch of tree-huggin' hippy crap!
Free software is not perfect, but you have to compare apples to apples here. Any user who can figure out M$ networking can do just as well with free software.
Friends don't help friends install M$ junk.
Try using google next time ESR. =)
/etc/cups/cupsd/conf
...
/etc/cups/client.conf
/etc/init.d/cups restart
I use the WEB interface and Debian however. Debian makes a lot of things easier just with the nice packages and documentation. Someone with the pipe to do it -- email the guy at http://slowest.net and see if they can host his docs!
Here is my guide based on theirs with debian info:
1. Setup CUPS Server.
apt-get install -u cupsys
http://localhost:631/printers
Login at the web interface and follow the idiot proof guide. You could prob do the rest of this using the web interface, but I'll show you how to edit the files. You're a leet Linux user! =p
2. Grant access
In
######## Security Options
########
Allow From 127.0.0.1 ( whatever IPs you want )
3. Setup Cups on client
Edit
ServerName
4. Restart cups server and client
5. On the client do:
lpstat -v
You should see a device listed
6. print something
lpr hallieberry.ps
7. Be kind to animals you prick =p
ESR needs to get a clue. It's evident by his initial environment description that he's quite out of it in terms of what "Aunt Tillie" will be doing with her computer.
Aunt Tillie will not have multiple systems, let alone have a small personal LAN. She will have a boxed Gateway or Dell that comes preocnfigured with a printer. If she needs anything more done than plugging in cables, she will call you, her dear nephiew/niece, to come "fix her printer" for her.
What's more, most detect such things on install just fine. There's not much of a chance she'd not have her stuff set up physically prior to installing the software, if she ever felt so bold to try Linux.
The only people claiming that Linux is ready for the desktop of mere mortals - or will be anytime soon - need to get out more and meet some common folk. Computers in general aren't really ready for common folk, but they're lucradive enough for companies to sell them, and cool enough to make commoners want them anyway.
I digress.
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
Your argument that programmers suck at interface design is just as valid as my argument that most programmers suck at programming.
Design is design. If you didn't think it through before the implementation started then it will probably suck. If you thought it through but kept adding to it during implementation then it will probably suck.
here's my experience with setting up a HP Color LaserJet 4600:
win 2k/XP - find way to add printer->select local printer->turn off probe for PnP printers->create new port->select standard tcp/ip port->enter printer ip number->click custom device type and then settings->click raw protocol and enter port 9100->enter printer driver info->click a few more next/finish buttons->print test page
linux (RH9 & FC1) - go to system settings->go to printing->enter root password->click forward->enter desired name and description->select networked jetdirect->type in printer hostname->click on printer manufacturer and then model->click finish and then print test page
OS X - go to the printer configuration utility and find the printer already detected, configured, and set to be the default
sure, the linux config could be worded somewhat more intuitively, but windows is a complete disaster for any non-SMB networked printer. the whole having to select 'local printer' to do it is just hysterical. at least linux refers to it as networked.... my only real niggle so far with the RH/fedora printer config tool is that the sharing properties are hidden under the Actions menu and it doesn't let you configure sharing on a per queue basis.
that all said, the rendezvous support in the HP printer is pretty damn sexy. any mac on the network sees it automatically and understands everything it can do. that's the way it's supposed to be. once i enabled the printer's CUPS support, then the linux boxes were almost there, too. poor windows users still need to go through that long drill, though....
tim
hiding in shadows / i hear you coming closer / you will explode soon -- a quake haiku
And the part that, if you are a decent human being and not a racist bigot, you have been dreading: American blacks average a standard deviation lower in IQ than American whites at about 85. And it gets worse: the average IQ of African blacks is lower still, not far above what is considered the threshold of mental retardation in the U.S. And yes, it's genetic; g seems to be about 85% heritable, and recent studies of effects like regression towards the mean suggest strongly that most of the heritability is DNA rather than nurturance effects
Yes, he really does say that. Check the link.
Biatch
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.
"If they were really smart (like, say, Mac programmers) they'd leave the impossible choices in but gray them out, signifying..."
Greying out menu items is one area open source can actually surpass Mac OSX and Windows. When I try and use a new desktop app I have never used before I am always puzzled why some menu options are greyed out. Everything else I find intuitive. Greyed out items confuse me.
Why is is greyed out? How do I get to it? Why can't I get to it now?
What would be really nifty is some tool-tip text saying something like "This menu item is only available when you are in xyz mode."
Am I the only one who experiences this difficulty?
Apparently, ESR's still trying hard to popularize the term "Aunt Tillie".
:)
Any mention of GhandiCon in the article as well?
Why does CUPS contain a graphical setup?
Beats me.
Its a daemon sitting in the background waiting for data, processing it and sending it somewhere else.
There may be a need for putting some links on the CUPS-Homepage "favourite GUIs for CUPS" but there is no need for a standard-GUI.
Setup- and Configuration should be left to the GUI-Developers (cups-gui-kde, cups-gui-lesstif, cups-shell-setup) and the Distribution-Developers (yast2-cups), not to the Daemon-Developer. This way you avoid those stupid glitches, everybody does what he is good at and nothing else.
Think modular and like the proverb says "Schuster bleib bei deinen Leisten".
"Life is short and in most cases it ends with death." Sir Sinclair
What about "hold down control" to have guesses made about proper settings...or even better, have a button on each dialog for "suggest settings".
Actually, neither is probably the right way to do it from a UI standpoint, but I'm not sure that requiring people to constantly try holding down control in different dialogs is a great solution either.
May we never see th
OSDL is possibly the one organization that could help various projects test their usability. It would be expensive, and we would really need to squeeze large corporations like IBM, Novell/SuSE and Oracle to provide some serious funding. Perhaps the reason they don't is because the developers could still simply ignore suggestions or demands for improvements. Of course, perhaps the major distributions could choose not to include programs that don't meet some minimal level of usability or conform to one of the guidelines listed above. That might provide some incentive.
I'd like to point out that the person bitching is ESR, who is decidedly a geek.
However, ESR's fetchmail does a really good job of both having a config utility capable of autodetecting almost everything and of having the software guess good defaults if the config file doesn't have a piece of information it might want.
It really is true that very little open source software does this -- includes an intelligent autoconfiguration utility, though most software (most *cough* sendmail) has good defaults as well.
May we never see th
Yes, history is recording how much of a benifit those "real users" are to Microsoft.
A BarbieOS riddled with features most people don't need, and bugs galore being exploited left and right. I'm certain those "real users" appreciate the design decisions made in the name of pleasing them.
Especially the one's that cause lost work, and time. Of course the users have no desire to fix the issues, nor do they "abandon" and "find something else easier to use" (Macs).
Quite frankly you guys give way too much credance to "pleasing the user or else...". The user is as much part of the problem as Microsoft is.
And there's nothing wrong with a niche. Macs are a niche. Mainframes are a niche. Anchovies on a pizza are a niche. All seem to be existing just fine. MS fanboys are the only one's with the "take no prisoners", "all your bases belong to us" attitude that defines the Windows world.
You really didn't even have that much "freeware" compared to pay and share, until OSS took off and the idea "infected" the camp. I'll leave what warez says about the Windows camp, and why they are over on this side, trying to change Linux into a Windows clone to the audiance.
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.
That's really not a bad idea.
The problem is that data would need to be stored in a more structured manner -- right now, often only the program that reads a config file has a parser that can understand it.
If more UNIX software used XML (which would, unfortunately, probably decrease the hand-editability of the config files) and shipped with DTDs/schemas, there could be a Single Configuration UI that could work in GUI or text mode. It would be possible to easily compare configurations across systems. It might even be possible to automate some testing.
However, this would require getting a *lot* of people onboard. It would need someone like the FSF (or, come to think of it, ESR) backing it.
Right now, every piece of UNIX software, instead of using a standard "libconfig" to read and write an XML-based config file, has its own config file parser, which isn't that great of a system.
May we never see th
I'm a grain farmer. I don't know the first thing about programming anything and didn't have a computer until Windows 95. My tractor was built in 1967. I'm not even close to being a techie kind of guy, but I had zero trouble getting CUPS going and I kind of liked the GUI setup tool.
Actually I've never had any trouble getting printing going on linux and I've been using linux since RH 4.2. I never did upgrade from windows95, don't like it. Might boot windows two, three times a year now max.
Kiss my ass, you whining student - you want to play in your bedroom with your latest release of UselessApp 0.92.1.a.32.1 all day which you cheerfully pretend will one day lead the world in UselessApp-ing, yet you ignore the people who are supposed to use it. Better hope mom & pop have a good little nest egg put away, I suspect you'll be feeding off that tit for a long time.
WTF!!!11!! LOL!!11!! OMG!!!11!!1 STFU!!1!1!!!!!
Ah I love how you kids talk. How about we meet after school and I'll help you to some pain?
I can hardly believe it, I just came home after giving a talk to a Perl group, talking about a bunch of stuff (freedom, accessibility, diveristy in the tech culture, how things need to change, etc) and the user interface was a large portion of it. Maybe things have finally begun to change! Anyhow, an outline of it is here:
:)
http://abuzar.com/
Please, feel welcome to give me feedback
If it wasnt for the French, you yankies would still be singing God Save the Queen.
Your nations founders were nothing but a bunch of cheese eating surrender monkeys. Rely on the French to help free them because they could not do it themselves, but when the French asked for help a few years later, you were nowhere to be found.
Take a look at your president now. He looks just like a baboon. What other country would VOTE in a baboon?
ESR also did fetchmail. Fetchmail has an *excellent* configuration interface.
* First, the config file is simple and small. A typical configuration should be simple and small. Take a look at the difference between the size of a basic sendmail and a basic postfix installation, and you'll notice an astonishing size difference -- thousands and thousands of lines.
* Second, fetchmail enjoys good defaults. If you enter the minimal set of options in the config file, it generally works properly.
* Third, and this is the biggie, fetchmailconf is an excellent GUI config tool. It can autodetect most of the configuration, and if there are multiple supported protocols/auth methods, it uses the "best", which is really better than most commercial email clients can do. Note that one *still* has full access to the simple, readable output that it produces. It doesn't hide anything from you at all, so it doesn't hurt power users that know exactly what they want the software to do, but it makes things much easier for new users.
May we never see th
Last year when ESR came to talk to my LUG, we had conversation about the usability of Open Source software. I told him that most UI designers suggest designing the UI before major parts of the code are written. His response:
"Then they're wrong".
I hope with this latest incident in mind that Eric might re-evaluate some of his long-held beliefs.
Ergonomica Auctorita Illico!
HAND ...
For me it's similar. I don't have US Letter paper, I don't want US Letter paper, I've never even *seen* US Letter paper. It would've been nice if it had noticed I was on an en-UK system and figured I probably would want "A4".
Everything about improved apps, UI, GUI in The Enterprise (I said Enterprise Apple folks)
can be attributed to MS goals. Yeah yeah you can spam me or hate me, but at least these articles are willing to recognize why MS has garnered such control and ever encroaching on Big Irons territory.
Who gives a damn about the efficiency of a compiler or another command line utility. Today Unix and Linux both face the challenge of combining complexity, stability and security with elegant easy to manage and use apps, better UI and yes slashdot folks "meaningful GUI"
GUI is more than just for eye candy, and that attitude shows in the UI of many open source apps.
And you wonder why Novell eventually lost out to NT? Is it that hard to understand?
Too often I have asked a Linux or BSD user "how do I do this?" and they show me a complicated, backwards ass method to acomplish something. I say to them "That's stupid, why isn't it just under (obvious thing to someone who has never done it before)" and they say "Jesus, it's fine! Read the f**king manual!"
Short and to the point: You'll never get popular if the inferface isnt' self-explanitory. The manual is for power users. If I can't change my screen resolution without an RTFM, I'm buying Windows, where I can do it with a right-click. The market is that simple, cater to it, and ye shall taste success.
CAn'T CompreHend SARcaSm?
Look. I love the UNIX printing system. It's a real pain in the ass to configure things, but it's also terribly powerful.
I've used LPR and then LPRng. I get network transparency, ability to batch-print easily (this is *not* trivial...try printing out hard copies of 200 source files pretty printed in Windows). I can manage print queues.
The thing is, UNIX printing systems are usually lots of little parts cobbled together with some scripts that vary from distro to distro, and then a config GUI that the distro maintainer puts out. The UNIX printing world is terribly disorganized compared to most other things in the UNIX world.
Can you identify the function of and tell the difference between all of these? LPR, LPRng, CUPS, gimp-print, foomatic, Omni, gnome-print, printman, printtool, desktop-printing, enscript, a2ps, ghostscript, pna2ppa, samba, hpoj, gsview, gv, ps2ps, ggv, redhat-config-printer, printconf, and mpage. All of these printing-related utilities and more have been on my system in the last few years. Keep in mind that I don't even use KDE, and that most distros vary the choice of what to use and you have an interesting set of knowledge to amass. The different print spoolers have different auth systems and config formats.
On the other hand, I have an old Apple LaserWriter without enough memory to print much of anything. I salvaged it when my old university threw it out. I hooked it up, and started cobbling together bits into a print filter. Sure, it took some doing and learning, but when I was done, all pages on the printer were rendered on the computer (where all the RAM in the world was available), converted to a bitmap and compressed, and sent in an embedded postscript file to the printer. On Windows I would have been simply SOL.
So, I'm not sure that an all-in-one system would be great. I *do* think that the printing situation could be cleaned up a lot, that the distros *really* need to get together and standardize on an interface (if you want to differentiate yourselves, please don't do it on something as basic as printing, which is a huge impediment to office use everywhere), and that it'd be nice to have some degree of autodetection of intelligent defaults (After a click on "add printer", "You have a Model Foobar attached. The proper driver is being selected.")
May we never see th
On the Windows XP Network Client. Start | Printers and Faxes | Add a Printer | Next | A Network Printer, or Printer attached to another computer | Browse for a Printer Select the machine the printer is on, select the printer. Driver get's installed automatically, test page prints, and it just f*ing works.
Err... no. At least not if the Windows XP Network Client is XP Home, which it would be if the user is Aunt Tillie. Believe me, I've been there and done that. Here is what happens:
Drivers get's installed automatically, test page prints, and just f*ing does not work. The test page prints ok, but nothing else. At least if you are using a postscript printer. For some weird reason, the driver does not work if it is installed for a network printer. I don't remember anymore what woodoo I did to make it work, but I'm quite sure Aunt Tillie could not have done it.
It has to work - rfc1925
Software freedom. If we are encouraged to leave free software improvement every time something doesn't work well out of the box, we will have left software freedom and entered the world of dependency. It's also worth noting that when things fail to work well in a non-free system, users are rarely encouraged to leave that system for a free system.
MacOS X has an easier interface for a number of things, but your question doesn't actually help anyone in the free software community unless it comes with some specific advice on what the free system can do better that doesn't involve leaving the system for dependency.
Digital Citizen
Software is bound to be hard to use as long as the developers is making their interfaces. Its also very easy to be blinded since you work on the application a long time and you think things are easy because they are logical to you. KISS is not enough, there need to be a layer of logic ontop of the application in most cases, shielding the user from the computer logic and making things make sense.
Perhaps its time to invite designers into the developing process?
That said i dont really agree with Eric Raymond. I work as an admin all day and i more often find Windows harder to use than linux. Windows is very quirky and backwards in so many levels. Try installing a TCP/IP printer in Windows XP and you get the picture, not something for the mere mortals. Linux is in my opinion better than Windows but there are room for improvement. I dont think people should embrace usability Wizard style like windows. Make the apps easy enough from the start instead so you wont need a wizard to be able to do your stuff ey?
HTTP/1.1 400
Excuse me. How many people do you know that actually conciously PAID for Windows. Most people I know got it with their computer for "free". People generally use whatever came with their hardware. Or they bootleg it.
Without having read the article, I'll put in my 2 cents worth on what matters most to the average joe-user:
1. It installs easily.
2. It works properly (for the most part).
They don't care enough about security to do anything. They don't care about the license agreement (open source, what's that?).
The only thing that matters is they can install it and it does what it's supposed to do.
Open source programs usually covers point 2 extremely well. Point 1, however, is a serious issue with far too many otherwise excellent programs.
"./configure; make; make install" is easy enough for us WHEN IT WORKS. A few too many times, however, I've run into dependency problems that caused some headaches. Using RPM has the same problem. It works great if the dependencies are already installed, but falls flat on its face when something is missing.
Debian's apt-get is a huge leap forward, but because of old programs, is nearly useless if you use a default woody installation. Yes, I know Debian's premise is stability. What does that have to do with anything? The average joe is running Windows, so stability isn't an important issue!
What is needed? Something based on Debian's apt-get, but GUI driven, and specifically designed for new software (as opposed to Debians stability mantra). Shiny buttons that let the user choose the "stable" versions , a specific version, or "the latest" would help. It should automatically grab dependencies unless specifically told not to.
Lastly, a database of package locations (distributed, of course). The tool would query the database to find out where to get the packages that are needed. The database might also return dependency information, or it could delegate that responsibility to the actual location. This could be almost DNS-like.
Just a few random ideas off the top of my head. Feel free to shoot huge holes into it.
-- Will program for bandwidth
"Stupid users! Of course it's their fault."
They're not stupid. They do it deliberately. You think you're smart and then they show you you're not. Far from stupid, I think they do things out of malice. They want to make the developer cry.
ESR's "bugger me with a chainsaw" appears to be a reference to the "fuck me gently with a chainsaw" phrase in Heathers. I got a kick out of that one...
May we never see th
Do you have evidence to support your idea that forks actually cause these problems? It seems to me that forks are one of the benefits of computer software--many developers can simultaneously pursue their idea of what is good and the community can decide what they like. It takes time to narrow down the choices to something good but that's just a part of life. It also takes time for the non-technical user to communicate to the GUI developer that their help is inadequate and there needs to be auto-discovery for everything. I also think forks are not something one can prevent in the free software community, so I wouldn't worry too much about that.
I thought ESR's comments were quite apt and worthwhile. I'm a technical user with a diminishing patience for software that caters to technical users instead of applying the 80/20 rule (what do 80% of the people want to do with this program 80% of the time?). Sox, a CLI sound file manipulation program, is a great example of this point because it hides a great deal of flexibility behind a horrible interface (not horrible because it's CLI): Converting from one sound format to another is hard enough with sox, trimming away silent samples from the beginning and end of the file seems to be impossible. It took me a lot of time reading a remarkably poorly written manpage and a needlessly complex usage syntax to figure this out. I have no desire to rewrite sox, I would sooner hire someone to do that for me or use a different program than stop working on the project in which I might have otherwise used sox.
Digital Citizen
The truth is, that despite the intensity of the point, the point still holds truth. I love linux, I have used it for almost 10 years now, and have done everything from kernel hacking, to my own C programming etc.
However, what began as an enthusiasts project, became an essential part of my work, has now become to some degree tiresome, and laboured. It's simply because binary distribution and configuration designs between OS's varies so much, that it becomes difficult to release software that easily integrates into ANY environment. Permeatations on OS's means many more for the software.
However, it is up to successful programmers to fix this, and trust me, if it can happen, it will happen with linux, and open source, if not demonstrated by the current wave of self booting, nice looking Linux distro's, the installation menu's these days, etc....sure it needs more work, but it will have it shortly.
Just think of the next wave of Linux Distro's in 12 months time, how much easier even still they will be to use, install or download software.
Now imagine 24 months.
Now compare that to Longhorn?
Microsoft knows it's coming....
"The whole notion of an OSS project being "an itch that needed to be scratched by someone" may just turn out to be poison ivy."
That got modded down? It's often the case. And sometimes it's so poison that it's just faster to write your own application. Some say doing so just adds to the mess, you should help make something that already exists better, but there are projects so poisonous that the best thing is to start again and try not to repeat their mistakes.
When you're reading a mailing list and someone emails "how do I do X", the usual response, as ESR has pointed out, is to simply answer them. If the problem comes up a couple of times, perhaps it goes into a FAQ. There is one missing thing, though, that doesn't happen. The author should ask "what could I change in the *software*, not the documentation or FAQ or whatnot, that would keep users from coming to ask me about this again."
May we never see th
If he's using Fedora, then it has some of Redhat's GUI config helpers. Correct me if I'm wrong, but isn't the shiny GUI is mostly Redhat's python scripts? (all those redhat-config-* scripts, up2date applet, etc.) The web based "GUI" on localhost:631 is the interface actually provided by CUPS.
Are you pondering what I'm pondering?
But everytime I point out someone's interface flaws, someone in the OSS community screams at me "it's volunteer work" or "program your own version then."
Then I realize I don't want to work with a bunch of anti-social programmers.
I'm a longtime reader of Slashdot, longtime observer of the open-source community, never posted before, hope someone takes my opinion seriously.
I use some open-source applications and have installed Linux a few times. The reason I don't use it now is because of the exact problems ESR mentioned. Obscure problems, poor documentation, and having to wade through a zillion man pages just to get an idea of what the problem is.
Far be it from me to tell any programmer how to do their job, but most of us in the Real World don't have time for this stuff. We just want the bloody thing to work without too much trouble, so we can get on with our jobs and/or lives. Microsoft, for all its many and fundamental shortcomings, understands this. Far too few Linux developers do. Ergo, when an end-user encounters a problem like ESR's and can't muddle his way through it, he's just going to shrug his shoulders and take the path of least resistance, which means Windows.
I hate Microsoft, I hate their shoddy software, I hate their security problems, I hate their handholding, I hate their interfaces. I've been saying for years that if I ever meet Bill Gates, I'm gonna smack him. But I keep using his software, because if nothing else, at least I know it's going to do what I need it to do, dangnabit, and I won't need a computer science degree to make it work.
Don't do it.
Do yourself a favor: Go to your bathroom and stand in front of the mirror. Lean forward so that you can see yourself clearly, then slap yourself in the face for me and say, "Macs are not expensive."
Do this over and over again until the message sinks in.
He gave very specific examples as to what can be improved, but just like you don't have to time to dropeverything you're doingand write a new GUI for him, neither does he. Of course, you missed the whole point which was these problems are prevalent in almost ALL linux softwre.
T Money
World Domination with a plastic spoon since 1984
Yep, this is like complaining to Microsoft about their security bugs and having Microsoft flame you about not reading the knowledge database on how to go into the registry to turn on all their wonderful security features and not installing the right security software. Imagine the laughter if it were posted here. Now imagine if this topic was posted on a computer novice board.
What part of, "Seriously, a thank you is appreciated. And an extra helping hand will make light work of the improvements needed. If you can't be thankful or helpful, SHUT THE FUCK UP!", you don't understand? If you pay me, then I will SHUT THE FUCK UP. But until then, read it again carefully this time.
A similar diatribe to ESR's could be written on trying to burn a backup DVD under RH9. Gave up; I just FTP my backup over to my Lose2003 box, where the driver worky-worky.
No, no! The driver works *perfectly*, it's just that it requires correct entry of hardware parameters in one of the assembly language sources! Yeesh! Don't blame the hard-working open-source developer for your MCSE-like lack of computer knowledge!
Seriously, though, I'm so glad to see ESR ranting about the state of userland GUI stuff. I've been doing it for a while, but it's often dismissed as a FUD campaign by people who don't like what I'm saying.
Fire and Meat. Yummy.
Sorry, but I can get Linux to crash on my laptop thanks to a certain crappy ALSA implementation. Just recently my Gentoo startup froze for no reason. I literally had to power off and restart, which fixed the problem.
Windows, needless to say, works without even installing vendor drivers.
Linux users don't like "Joe Sixpack" for a reason--he's usually the jock who picked on them in high school.
A generalization, but it applies to most of the community--we're a bunch of generally shy and anti-social tech nerds who spend all day configuring an OS to use our mouse buttons correctly or play sound and think that means it's "powerful" and "flexible."
We don't want it easy, because the true reason people love Linux so much is the satisfaction they feel from getting it working. That's why they feel so euphoric about it. It's the subconscious, unspoken truth. Make it easy to do things in Linux, and suddenly you make it a tool to get work done instead of a tool to tinker, and you take away its hipness.
Which is why the Linux community is what holds Linux back.
Watch what you say about quake, bitch.
Maybe windows or mac would be better for this guy..
... To many installations with idiots and retards at the helm.
I think it's a good thing that linux has not seen more use by larger groups of idiots. The survey posted on this page 3 days ago said that linux server have had the highest successful penetration rate out of their server group. There is a reason for this. Because people that should never be touching unix are installing it like putting on new underwear because the media created a buzz around it. Linux must be maintained properly like anything else and it is not even almost at a point where someone that can't configure their printer should be trusted to maintain it. This is the #1 reason it was rated worst rather than best
We still have crap like Kroupware, Kallery, Xouvert, and a GUI system that still requires you to configure mouse buttons and specs through an awful text file (as someone else succinctly put it, it's like answering essay questions).
Microsoft has already moved on and is creating virtual machine run-times and a DirectX hardware-accelerated desktop. Linux is still trying to get a desktop off the ground with "cute" names like KDE and GNOME, each with their own sound servers, their own configuration formats, neither with a proper method of installation/uninstallation (because to Linux users, registries magically = bad because Windows happens to have something called the "registry"), neither with a proper interface (though Gnome is the closest), and neither having the snappy responsiveness OS X and Windows XP have.
I finished compiling KDE 3.2 today on Gentoo, using Pentium 4 optimizations. It still took 4 seconds when I first loaded up my Home directory. Loading My Computer in Windows takes less than a third of a second.
These are all the endless things that need to be fixed, but won't be. Instead, things will be forked, people will obsess over something "M$" did, and meanwhile KDE and GNOME will continue living in their own little worlds making pretty desktops that make for good screenshots on the back of the distro packaging, until you actually grab the mouse and try to use them.
Well duh. Computers are complicated things. Setting them up will be complicated.
/rant
I set up CUPS a few years ago, and it still works. The main problem with CUPS is that it does not get used every day.
So far all that posts I have read says that the OS community NEEDS to do this and NEEDS to do that. Have you considered that the FOSS community is not in competition with MS? We are developing much faster than MS, but give us a fucking break, man. Developers develop what they want to develop. You want it different, change it. That's your right.
CUPS is blindingly easy to install once you actually have read the manual. Most things are. That's why there are manuals.
The LAST thing the FOSS community needs is a bunch of crybabies too lazy to read a manual. btw, I only use Linux. It has far surpassed the usability of MS, IMHO. That's me, your milage may vary.
Time flies like an arrow, Fruit flies like a banana.
I on the other hand found CUPS to be EASY to configure. I mean, it had menus and few (albeit technical) choices. Web-based configuration even, and *gasp* web-based status displays that actually are readable.
:-)
Before trying CUPS I have been using lprng for many years. The config file has a load of weird and legacy options. All config parameters are usually denoted by cryptic two-letter codes. Status displays (with lpq) are many-worded but cryptic.
Not to complain, though, plain lpr is just evil. It's same as lprng, except it lacks many of those options that you'd really want.
So, in short, I DON'T agree with ESR on this one. Perhaps CUPS would need some sort of internal help to clarify the options to common people?
BTW, Windows isn't that much better either. They use their own concepts (just like CUPS menus) and things like "make all users have same printers in their settings" require god-like active-directory profile-making powers. (I laugh softly and rdist my config files.)
The author seems to think that every other sentence must italicise words so he can get an idea across. I personally think that it gets annoying and may hurt your brain to stress too many words. You try and ignore his mess but you get some feeling you're missing important points. Rereading the sentence wastes valuable time and causes much frustration in such a long article. Can someone please tell me where I can get an html tag filter?
Sincerly,
aiyo
He was obsessed with the Macintosh being a work of art. He was so picky about the look of the damn calculator app, the designer got tired of revising it and made a calculator interface designer for him. The final design Steve made stayed with MacOS up into the 90s. He even had the Mac designers sign their names on the inside of the mold for the casing. That's a mentality I like--the connection between emotion and computing. The creation of a computer that blendds into someone's life as a useful tool and portal to computing.
What happened to that melding of art and computing? OS X still has it, but without support for x86, it's not exploding like it should. That leaves Linux--and Linux is completely missing the ball here because it's been written by developers for developers, and still is. It's massively technical and powerful for dev-heads, but the other front--the one that Windows lacks--is the intuitive, artistic side.
But, I fully expect everyone to stick with crappy XFree86 for another 10 years and espouse how great their poorly designed "KDE" and "GNOME" interfaces are. Five years after Longhorn comes out, KDE will finally get around to attempting hardware acceleration and also speeding up the horribly shit-slow app-loading.
Nobody's artistic about computing anymore, except Apple. We should be too. Obviously, that means rethinking the way people are writing their apps/environments, which ain't gonna happen.
Mr. Goodbyte?
A black-belt in GuiFu?
Autocad and Photoshop are two of the oldest and best worked out packages in the industry. Arguably the best and most mature user interfaces there are, for their intended purposes.
Try using them without reading the documentation. You will be absolutely lost. (Try anything in Autocad. Try working with masks and selections in Photoshop.)
"If they have to read documentation to use it you designed it wrong" is absurdly oversimplistic.
There's something missing here. I think it's the guy in the white coat with the clipboard. I don't think it really matters if the interface is intuitive; enough people are not going to understand anyway. And I think it's essential the software work correctly, and when you start worrying excessively about how the user is going to react, you can make mistakes.
An impasse. So what to do about it? What did they do in those old days, before we started hacking away? They had the white coats. These guys were the buffer between the users (the programmers) and the computer.
We don't have that anymore. If companies could take time to set people up in front of their consoles, most of this wouldn't happen. What we're left with is a guessing game, where one company tries to outdo another in 'intuitiveness' when the real objective of computer software is to compute.
I guess that's just what happens when you help Bill achieve his dream of a computer on every desktop.
Coders are the ones holding back Linux. Sorry. Think about it.
The guy's a gun nut. I never knew that before. How sick. His picture is a million years old and makes him look like Billy Bob on a binge. He probably is.
If you get a chance then do read his book "About Face" or his later book "About Face 2.0".
It has great examples in it, e.g. most dialog boxes are seen as users like your hammer saying "Striking force out of bounds - nail bent. OK?"
His talk and books changed my understanding of what is and is not an acceptable UI.
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.
Maybe if you pulled your head out of your ass and stopped acting so sensitive and "insulted" because someone dared be disappointed with the CRAP interface someone put out, more people would join the cause and help design better interfaces for your code.
I'm sick of people being shitheads with the whole "show code or shut up" deal, and then acting so hurt when someone gives it right back!
The last decade was a focus on Linux developers. This decade's focus needs to be users. To the doubters, yes, you CAN have a beautiful, accessible system that also happens to be insanely powerful and flexible. They're not contradictions. Witness OS X, the best damn UNIX/GUI consolidation ever seen...
Why whine about CUPS? Can't the great `hacker' write another HOWTO on configuring CUPS? Dude, stop it and go write a ``hacker's guide to CUPS''.
Happy Hacking!!!
Linux dev's should start thinking of their apps in terms of allowing users to achieve whatever they want to achieve, be it writing the next great novel and printing it out to hooking up the camera to see the new pictures of their newborn baby. The whole "empowerment" buzzword.
By not writing software for non-technical users the so called 'digital divide' widens so much that we are no longer 'in danger' of creating a digital underclass, but we are guarenteed of creating it. An interface to a piece of software should be elegant, simple and intuitive. If the ATM's we all use had been more complicated than remembering a 4-digit pin and pushing a plastic card into a slot, then the every-day consumer wouldn't use them.
ESR is right on the money on his observations. His response is prescriptive, and wise, and well thought out.
However, a constructive response is be even better than a prescriptive response. Eric's essay is an instructive example of the thought process that goes into debugging an incomplete user interface, and prescribes excellent principles for user interface design. The essay fails as a description of the process of bringing up a networked CUPS printer. While that was not Eric's purpose, I humbly suggest that his task is not complete until he does so. If he can find the time, he should create another web page, describing his CUPS problem, and the most direct way to solve it, now that he knows what he knows. Countless other users could find his example on the web, and emulate it if applicable.
Windows comes from a box, Linux comes from a community. The solution to the Linux user interface problem comes from the community, too. We can compensate for the rough edges of our software by sharing our experiences and solutions on the web.
If you encounter a difficult problem with Linux, and manage to solve it, don't just sigh and move on. Don't stop with a witty and cogent essay about the bad practices that led to your suffering. Figure out what worked, and write it down, and turn it into a web page. A HOWTO. A cookbook. Whatever you can write that helps others.
Put your helpful web page in a stable place, where other folks can find it and link to it. Keep it fresh and updated as you learn more. Add links to other useful sites (this increases your Google score, and is helpful to your readers). Every once in a great while, you will get a nice email from someone, asking a question or providing further illumination.
Write up your failures, too! You might warn others away from crippled software, or a wrong approach. You might help the authors of a FOSS application find an improvement. Best of all, someone might offer a solution to your problem - then you can change your failure page into a recipe for success!
Most of what I've learned about Linux has come from the webbed experiences of others. I've tried to add a few writeups myself (for example, http://www.keithl.com/linuxbackup.html ), a few pages per year. This has resulted in valuable feedback. There are thousands of people doing this now, many (like ESR) far more prolific than I am. If 10 times as many people wrote about their Linux experiences, what a wealth of helpful information there would be, only a Google search away. This helps more people join us, which adds to the problem-solving power of our community.
Best of all, someday some smart team will figure out how to gather the best of these contributions into help systems that are even more easily searched and evaluated than the search-engine/web-browser paradigm we work with now. Just as Linus Torvalds added a brilliant but relatively small bit of kernel coding to the nutrient-rich primordial soup of GNU free software, unleashing the power of Linux, so our small writeups and howtos will fuel the innovative user discovery systems that will drive the next wave of desktop computing. Open source will be a critical part of that - if user discovery engines can determine functionality from source code, it can relate configurations to behavior and guide the user towards solutions.
Again, Eric's thought provoking essay indicates a problem, and helps us sympathize with the user of a traditional standalone program, isolated from the Internet. But the Internet exists. The cookbooks and examples that can help any user solve any ordinary problem WILL exist, if we all devote a little bit of time sharing our hard-won solutions on the web.
If you can't do, teach. Even the best of us can't repair all the incomplete user interfaces out there, but we can still help others succeed with the interfaces that exist. Aunt Tillie is not alone; when she runs Linux, she can have millions of helpful friends.
Keith Lofstrom server-sky.com
I filed an RFE in Red Hat's Bugzilla bug database asking them to look up into some of the (IMHO valid) points that ESR raised. Let's hope something actually comes out of it.
So many people in the open source projects community are programmers who do nothing more than program. I'm sure MS employs dozens of "artists" who design widgets, layouts, test usability, try to keep things symmetrical etc... Which explains why so many projects link against Motif. They think, "ahh, the UI is there, the widgets are there, I can just program and the user can deal with it" Negating the fact that Motif was modeled after Windows 3.x. You have a spiffy new utility that looks like it was written in 1994.
So how do you get non-geeks excited about OSS? And get rid of the programmer mentality. If someone says "I'd like to contribute to your project" and all you want to know is what languages they program in, then there is a vacuum somewhere.
Anyone who says "Bzzzzzzt. Wrong" to anything lacks any semblance of normal social skills. It's completely irritating and rude. Just politely correct him and be done with it.
I do not say the CUPS interface is good in any way ( I only used it once to set up my printer and it worked for me without problems).
But thats what I had with WINDOWS:
1.) Setting up a network printer at work: We have a HP Laserjet in our network which I wanted to use for printing. I tried to add it with the Control Panel. It found this printer on several computers ( there is a list of "AUTO HP LaserJep MP5 on SomeMachine entries there ). Funny enough, the computer to which the printer is connected was not listed.
If I tried to print on any of the AUTO printers - no go!
Then I tried to add the printer with "Add printer" and selected "browse for network printer". The computer of interest was not listed and I could not find the printer. The "Aunt Tillie" would have thrown the computer out of the window by now.
I asked a collegue and he gave me a HP driver setup which scanned for network printers and installed the one it found as if it is a local printer. No help, no nothing told me that this printer needs its own driver to work over the network.
2.) A friend had a problem installing a HP DeskJet on his computer at home. The auto driver installation from HP seemed to detect the printer and installed the driver. But trying to print always lead to the error "Out of paper". But the self-test of the printer gave a good test print.
We tried several drivers ( from the WINDOWS CD and from the Website ) but nothing worked.
A few days later my friend told me he had connected the printer to another interface on his computer and it worked. Duh!
Conclusion: Windows also sucks at this point.
...spending four days to configure your video card while the rest of the computing world moves on into the new century and actually plugs in a card and has it works. We'll "shrug it off" as you edit text files to enable your mouse buttons and then make comments about Microsoft's "lack of support."
When it comes to documentation and making things more intuitive, you just cant blame the FLOSS developers,
they are developing all that software because of their love for writing software, when that software is in a proper functional state(according to their expectations) they start losing interest in that(and thats natural as their first love is writing software, not documenting it), they just want to handle complex programming problems instead of firing an editor and writing about how the whole thing works.
To them "Documentation" is kind of "shitty" work which no one wants to do, and thats where money comes in picture, in closed source or professional organizations you have to write documentation, you like it or not. and often you have dedicated guys who are responsible for that, also enough thought goes into look and feel of software along with core functionality of software.
I remember reading Linus statement somewhere where he said companies like RedHat did what he never wanted to do like documentation and i think that clearly conveys the point.
Linux: Self-mutilation is a snap.Be a geek!!!
"man" sucks. I hate man and man pages. They're extremely difficult to read and follow, and they follow this horrible format of "app [opt1,,opt2] [opt3:dev1] opt4 source dest" followed by a long list of technical descriptions. Worst of all, I hate how a lot of people's answers to things are to tell you "man whatever-app-you're-having-trouble-with."
I am SO happy Eric Raymond wrote this... just a few days ago I too was trying to set up my printer via CUPS, and ended up giving up/swearing up a storm. Bitchy comments from some Slashdot readers aside, we ought to listen to this man... Linux's main strength AND disadvantage is that the majority of the code writers/users are (like moi) tech-savvy geeks. But, the UI should not force us to become a full-fledge sysadmin every time we want to install a damn printer (or plugin, or etc...) Believe it or not, even though I am a geek, sometimes I just want to use the printer without giving a rat's ass how it happens as long as it happens. It's one of the few times that I don't hate MicroBarf or (cr)Apple. What many of the open source projects need is to recruit a local WinDoze/Macinosh weenie (their boss for example), and have them run through the projects' UI. If the user finds the UI easy, then great! Otherwise, it should be back to the (G)UI drawing board. Obscurity does not lead to usability, people!
Of course, he has to get SuSE installed first, which should be fairly easy as there are plenty of online distros that you can install via FTP
No, that's wrong. You buy the official distribution and stick the DVD into the drive.
But you better hope the installer picks up your NIC on the first try, otherwise you have to wade through a list of drivers to find one for his card.
One always hopes that when one installs an OS on some PC, whether that OS is RedHat, SuSE, or Windows.
Of course, over the last two years, every Linux installer that I have run has always detected and configured all graphics, audio, and networking hardware, which is a lot more than I can say for the $200 copy of Windows XP. Last time I tried to install Windows XP on a new PC ("Designed for Windows XP"), the Windows installer just hung during hardware detection; it took fiddling with BIOS settings to go through. SuSE did just fine on the same hardware.
If he finds one that might work, he'll then be prompted with a dialouge asking for arguments, with no explination as to what those are. Eventualy, you'll find one that will install with no args, and everything will work, but it's just another example of what the original article was talking about.
If you don't want to have to worry about this sort of thing, buy Linux-certified hardware. There is plenty of it out there.
If you try to install Linux on hardware that is not certified for running Linux, you take your chances. But, in practice, if you pick a distribution with a good installer, chances are that your Linux install experience will still be better than your Windows XP install experience. In fact, Windows installation has become so problematic that most Windows users don't install it at all anymore--they have it installed at the store, or they get a "restore CD" specific to their hardware.
Stop bullshitting and stop blaming Linux because you choose to make your life difficult yourself.
I pose this purely as a question, with no intended incinuation. Would it be against the spirit of the Open Source movement to draft a set of UI standards? For instance, in a development firm, there are set-in-stone standards as to how interfaces should look, where things should be placed, and where common settings and commands should be located in any program. To me, open source is basically extending the idea of the development firm to encompass every able and willing programmer on Earth.
Perhaps it would be prudent to have some kind of "convention" or gathering to draft a set of common standards that would help in the "usability" battle against M$? Does such a thing already exist? If so, perhaps it could use more publicity in developer's circles... or perhaps it needs re-drafting. If not, perhaps those of us who participate at some level in the use or develeopment of Open Source should consider drafting such a standard.
-Vendal Thornheart
To me it seems like too many Open Source people are still too much like 15-year old boys screaming they are "31337 d00d5". There is a generic arrogant dislike towards an average computer user while a business like Microsoft at least understands marketing. Open Source products are too often too difficult to use and very poorly documented, which most likely has something to do with geeks who want to show of computer skills.
Would somebody at Microsoft say something like: "Gee your stupid. Can't even use a product i programmed. Newbie."
I think that this attitude means that Linux will never ever conquer the average user's desktop. Nerds love to configure their computers for hours, ordinary users just want to read their e-mail or type some pages on a word processing software without any problems. Essentially Linux is still a toy which is used by adult boys to show off computer skills.
Fine, then don't bitch about "M$" being the dominant monoculture when you're to lazy to bother making your software usable for other people. If you only want to scratch YOUR itch, keep your software on your private network and don't let major distros pick it up. Understood, Mr. I'm-the-poor-unpaid-volunteer-developer?
Guess what? Users don't care either. They'll drop your shit like a bad habit and go back to what works.
Geez, just try getting a pure udev system up and running sometime. Sheer hell.
I had a w2k server box that I dragged out of the closet a few weeks ago. Turned it on, and after 3-4 minutes the box hung, like hung (no blue screen, everything just stopped).
I removed this dumb USB driver that got installed last time the server was up. It was for a smart card reader, and of course the smart card reader wasn't plugged in this time. So it froze the freaking system after a few minutes. I expect it got stuck in some kind of f*cked up polling loop.
Uninstalled, and voila! w2k server lived again.
I've cheked out macosx's cups, and it's one of the most arcane things I've ever seen. How in god's name am I supposed to know what the URL to my printer is? What's a "class", and why would I want to manage it?
That truly is a terrible interface. It's not the layout, it's the verbage.
Plus, I think (but I can't tell) that if you go in and modify a printer it doesn't show you the current settings - it shows you the defaults. I never bothered to check because it's unclear whether the settings are saved if you hit "next".
Truly terrible.
Were you doing the same thing ESR was trying to do? If so, tell me how, It still is not working. (using 9.0 on both machines now.) If not . . .
Laws are horrible moral guides, moral guides make even worse laws.
Wasn't he using the Red Hat confinguration tool instead of the native CUPS tool?
You know the Mac has similiar market numbers. Why doesn't the "must take over the world" group go over there and tell them what to do with their interface?
Or is the Mac interface so good that they don't need to take over the world, while the linux interface is so bad that it does? Crazy.
I wonder if the Amiga and OS/2 users had to put up with something similiar?
Quite frankly I think that people should accept Linux as it is, instead of trying to pervert it into something it isn't.
Maybe they should join that group that's trying to write a Windows clone. I'm certain THAT will make them happy. Nothing else does.
I can't imagine anything in the programming world more boring then writing code for oneself.
My answers:
1. Invisible.
2. What GUI?
3. The end users shouldn't even know.
4. I hate it when that happens.
5. See 1.
My end users shouldn't notice at all. Everything needs to be invisible, not just easy to use. Tasks that used to require a good deal of work should disappear into a black hole that we call The Server. Accounting, filing, billing, spam filtering, if it's boring and dull, a computer should probably be doing it instead.
"No problem. I have the capacity to do infinite work so long as you don't mind that my quality approaches zero."-Dilbert
Amen. I was just about to write an essay on a similar topic and submit it somewhere. It's not just that open source user interfaces are a failure in terms of usability -- they are slow and more bloated than Microsoft's (which is why I don't use Gnome or any desktop managers; try fluxbox or fvwm to see ho fast a window manager can be on modern hardware).
A few years ago, it used to be that the Linux UI was spartan, but fast and uniformly configurable (by editing configuration files). Now, the distro's (Redhat mostly) have made supplanted the configuration files by shiny GUIs that either happen to work on your system, or when they don't, they leave you clueless as to what to do (try tweaking the video modes on Redhat when redhat-config-xfree86 fails -- where's xf86config?).
Worse, it's not just UIs that suck. The autobreak tools suck: they have enabled clueless developers to create projects that look configurable, but are impossible to cross-compile. Also, the automatically generated configure and Makefile are unreadable. And configure.in only works right with a particular version of autoconf. Etcetera.
Going further down the chain, gcc sucks really bad nowadays. The bugs I see posted on bugzilla were inimaginable in the early days of gcc. I'm not talking about C++ either, I'm talking about C on supported platforms. Come to think of it, gcc was only *really good* when it was developed by Cygnus... Remember that ? They split gcc because the FSF version was drowning, they brought gcc back to life (and produced the first decent C++ compiler) and then they were bought by Redhat. Now they're gone and we have gcc3 (the first branch that was unable to compile the kernel). Various projects compile only with certain versions of gcc. And so on.
I surmise that the GNU project (as a whole) has many failures due not to the lack of volunteers, but to the existence of clueless developers.
While his style is, as usual, not quite professional, the points he makes are right on target. Usability is sorely lacking in most Unix/Linux setups.
But instead of pointing to various short user-friendliness rants and mini-howtos, I suggest reading a few books, to see what the current state of the art is.
I suggest the following two, which I am using for my thesis work on this subject as well:
Donald A. Norman: The Design of Everyday Things
This book focuses on everday gadgets and appliances instead of computer interfaces, but the advice Norman gives is perfectly applicable to our field of work. Highly recommended.
Alan Cooper, Robert Reimann: About Face 2.0: The Essentials of Interaction Design
Now this book is pure gold. Excellent advice on user research, goal-oriented design and lots of insight on GUI design as well. Yes, Microsoft gets some praise for parts of their efforts - where they deserve it. They also are criticized properly - just like everybody else - where they failed. If developers would apply at least a little of this stuff, we would have vastly better software.
Amen man! I found the web-interface extremely easy to use. I had a lot of problems getting my printer to work when first started using GNU/Linux but when I found CUPS I remember getting really happy because it was so easy. And because it's a web-based interface its completely portable. I can't understand why some distros make their own interfaces. Maby Eric "ass hat" Raymond should try a real distro before whining. Everything he writes is just an excuse to promote the open sore initiative.
what most people working on howto's don't get is how to write a sacking howto. check out http://www.tacktech.com/display.cfm?ttid=295 to see how it can be done. simple to the point and idiot proof!!
I'm reading About Face 2.0 and it is pretty hard to get into. He gets hung up on psycology and business goals pretty early on in the book and leaves the actual UI design until later. Makes reading it pretty tiresome.
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".
Although I happily agree that most OSS leaves lots to be desired in terms of user-friedliness, I don't like ESR's rant much. Here's why:
He criticizes CUPS for having a subobtimal configuration interface. I am impressed that it even has such an interface at all. A friend of mine once said that hackers often stop where the product becomes almost usable. This is very true, and the CUPS developers probably just focus on the implementation, rather than the interface, which, IMO, is the Right Thing to do.
Secondly, what he tried to do should have required no action on his part, as it says in the documentation. It's not CUPS's fault that the Fedora Core team decided to ship their system with the required feature turned off. There are good reasons for turning the feature off, e.g. security considerations: don't run services that are not required, and remote printing certainly isn't required for everyone. Sure, they should have mentioned this and provided instructions for re-enabling it, but remember that all this is under development; there is room for improvement.
Finally, I have to say that I have had both good and bad experiences with CUPS, but finally quit using it because it is much too heavy and complex for my needs. I just want to print, locally, and magicfilter takes care of this just fine.
Please correct me if I got my facts wrong.
I'll stick to my windows box, and move to OSX whenever MSFT starts charging the $30/mo for the OS.
You and the 1000 or so l337 hax0rz can look down on the rest of us.
And we don't care.
You have to be quite a moron to expect otherwise.
When you have a problem, clearly lay out what exactly you want to do ("If I actually want to do anything else" is not enough), what exactly is the problem and if possible a suggestion how to fix it or make it better.
The problem with bad GUIs and guides in open source software comes from the fact that creating a good user interface is the most boring and tedious programming task there is. One has to handle all the possible wrong uses (there are about 100 per correct usage) in a way that gives good feedbackt to the user.
Since most people developing software for Linux work for free and out of their own will there usually isn't enough incentive to do the boring stuff. An employee for a software company however could lose his job if he didn't do it.
Open source is the art of letting other people write your bad code.
There was earlier article that compared *nix and Windows programmers...
*nix programmers write programs for other programs to use (hence command line arguements that are easy to parse/create etc). Ie they do the guts first, then bolt on an interface later.
windows programmers write programs for users. ie they write the interface first, then the guts.
Would be interesting to see how the Mac guys concentrate their efforts.
I'm sure she'll be relieved to hear that.
Christian Engström, Former Member of the European Parliament 2009-2014 for The Pirate Party, Sweden
I've managed to keep Windows stable on all installations I've used since 1998.
This involves a DOS/Win95/WinNT4/Linux station (4 partitions, 3 formats) which is still going since 1998 without re-install. I have studiously avoided a re-install because I have better things to do. (Especially as getting things set up perfectly takes a while). I wouldn't have bothered with DOS/Win95 except for my old DOS games and later DirectX games.
A Win2K station which has been very nice, I guess I prefer it to NT4 or XP.
A WinXP station. I had some initial hardware probs - an old CD-writer was a no-go with it and made it crash - some of the worst behaviour I had from Windows ever. (You wouldn't believe how seldom I've had complete OS crashes - not since an earlier Win95 installation than the one listed)
But this happy existence is due to knowing what I'm doing, using good hardware, and "fixing" Windows after the default install. A co-worker nicely screwed up his 2K box after, Oh, 1 week! (Yeah, OK, I help him. Mostly by running Spybot S&D and suggesting a hammer) My only problem has been a worry about the amount of patches 2K needs... It's like something held together with Sellotape. From that point of view XP is perhaps better once you remove the chrome. After all, it's v5.1 of the same thing!
Oh, prior to '98 was the fun realms of DOS, Win3.x, etc... Oh, fond memories of fiddling with autoexec.bat and config.sys, win.ini, etc. etc. Hitting my head off a brick wall. You know the story.
-- *~()____) This message will self-destruct in 5 seconds...
On the flipside (as opposed to most posts here), I believe that this is a Good Thing(tm). We need more reviews for every part of linux, from all types of users, ranging from newbie users to harcore linux hackers. It is the only way to drive forward and put in place better/decent GUIs - or for that matter, anything else visible to the end user
eric@snark eric> cp /usr/bin/printtool .
eric@snark eric> vi printtool
I find it richly ironic that the author of Emacs should lecture others about usability.
I wouldn't recommend LPD to normal users but for us techy types it does everything you need and I can't really see the point of CUPS which
introduces extra complexity for little extra (if any) functionality. The config file for lpd (/etc/printcap) might be messy but it is logical and doesn't take long to set up
so personally I little little advantage in CUPS though I stand to be corrected.
There are good distros and there are bad distros, but a newbie can't tell which ones are which. I tried 4 distros, not counting different versions of the same one, before installing Knoppix on the hard drive. None of the other ones would auto-configure my sound card or printer, for example. And most people would actually be better of shelling out the money for Windows than wasting the time I wasted.
Don't drop the soap, Tommy!
Instead of doing what OSS can do best and provide a nice, thourough documented /etc/cups/cupsconfig the cups team goes out of their way to produce something like 5 different GUIs, at least one of them web based, and leave each half finished.
Shure OSS is free, but programmers want people to use their software, so this is nothing but a good advice and a hint at some major bugs in the GUI.
And a bad one in the GUI has the rank of a bug. Or at least it should.
If you don't like that - don't bother with a GUI. It's that simple.
We suffer more in our imagination than in reality. - Seneca
It was meerly defending its self from the threat of use with a dot matrix printer!
Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
+25 : brief and accurate, maybe a little polite but parent definitely has a point.
Search ESR on Orkut almost nobody likes him (the others are his dog which is also his wife).
Am I the only one who's never had a problem configuring cups on a network? Ok it's not a monster net 1 server 7 printers 6 clients took about 20-25 minutes. Honest.
Debian server. Web interface. 5 Mandrake clients, 1 debian client.
The mandrake was worst, but only cause it's 'kin slow.
Have fun
Actually, although these are good questions, what you really should do is sit Aunt Tillie down and ask her to accomplish a number of key tasks. Then note where she seems to be lost (don't be too quick to be helpful).
I've found there's no substitute to actually watching users struggle.
These days I do my UI prototyping in a drawing program and walk uses through the interface. We ususally go through several generations of UI design before actually cutting any code. I'm not a user interface expert by any means, but I find the number of UI disasters is reduced dramatically by this process, and these days many of the UIs we come up with this way are actually quite popular with the users.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
I have repeatedly had the same problem ... whoever writes the help files and user documentation has NEVER follwed it step by step or watched a novice do it. They don't realize where their experience is filling in a critical gap in the information.
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.
Fedora, CUPS, whatever...
It's the distribution's job to make sure everything works and plays nice together. Other distributions using CUPS do not have these problems. Fedora does. Fedora is aimed at being a desktop operating system, CUPS is not. It's Fedora's responsibility and Fedora's failure. Even if CUPS was irrevocably broken, it would be Fedora's responsibility to a) use a different printing subsystem, b) fix it themselves, or c) write their own.
Ideally later on someone would write some useful documentation based on the most helpful feedback.
To some extent, I think the open-source model could be made to work in our favour, if only the right tools were commonly available.
I'm experiencing the same thing you are. After reading AF 1.0 and Inmates, AF 2.0 seems to be the combination of those two books, with a large amount of additional material. I feel pretty lucky to have these design methods published, even if my dabbling never approaches that level of thoroughness.
I'll take it as the field of UI design is maturing as a discipline, one that properly takes real work to pull off well.
Maybe OSS needs a central repository of OSS development "best practice".
A collection of technical howtos (subversion/cvs, patches etc), articles on UI design, documentation writing, managing distributed volunteer teams, handling users. Things like "Dos and Donts", articles from experienced OSS developers and users - maybe a little less inflammatory than ESR's, though. A Wiki maybe?
All this information must be out there, distributed in mailing lists, forums and developers' memories. Surely it would improve OSS quality if new developers sent a few hours reading through that sort of material before starting to contribute.
Of course you have Windows XP Pro, Nero, and dvdrecord........ Which were all paid for, and legally licensed under your name. As your "copy" of autocad 2003, and all these beautiful softwares with EULA that to be ligitimatly use require you to PAY for the right to used them. Of course you did get all these legally. I know I miss the point..... everyone who is complaining about Open Source ALL use the licenses legally under the term of their license. You will love Longhorn.
Take a look at GNUstep which draws from the NeXT tradition of picking an app to open an arbitriary file from a list of apps registered for that file type --- you know, the system which Mac OS X inherited from NeXTstep.
It's really unfortunate that GNUstep fell from its position of ``graphical interface for GNU projects'' because it was taking so long to do --- it's finally just about done.
William
(and developers shouldn't see it as a straightjacket but rather a wonderful set of scaffolding and tools and blueprints which can be used to build any elements of anything you might wish to build)
Sphinx of black quartz, judge my vow.
I certainly support your idea of using some user feedback about what options / menus / etc. are the most used to improve the interface.
But also be carefull about it.
Some things are very rarely used but still important in some situations. Some options will rarely be used because they were not easy to find, which can also skew your stats.
Anonymous statistics tell you some things, but they won't tell you many other things. They are OK if you also spend a lot of time with very different individual users and talk with them.
For example, on Macs, I always have the feeling the software is crippled and features are mising because some designer thought that these things were not necessary since most people wouldn't understand them. For example, Mac OS 1-9 had no command line. Of course most people wouldn't know how to use it, but that's not a reason to suppress it completely and cripple the users who can occasionally really benefit from it. They put it back in OS X, but their Mail app still doesn't show you the server error if your mail cannot be sent. Sure, most people wouldn't understand "Relaying denied", but with that message they could at least call someone who does.
Make it simple, but do not cripple it.
...you'd have to go through 100 different man pages to find the command to get it to start, but of course, it won't start because you lack certain RPM, or you the command to start expects a number of modules to be pre-installed. Oh, and when you try to install those modules you find they are incompatible with your car, in-effect you have to change the whole car. Buy a new car, and start the whole process all over again...
http://efil.blogspot.com/
In any case, Windows terminology dictates that a JetDirect is a 'Local' printer (in the sense that there is no computer on the network managing the print queue to qualify it as a 'Network' printer, equivalent to the Unix terminology of 'remote') and in order to set up such a printer one must Add a Port (Standard TCP/IP). It is at this point, and only at this point, where various versions of Windows will attempt to autodetect something. So ESR is giving Windows designers credit for far more than they've actually done
[100% ISO 646 Compliant]
SVM, ERGO MONSTRO.
While I certainly agree with you that following standards may not lead to a good user interface for all applications, I would submit that (at least for end user applications on mainstream PCs) it is usually better than not following the standards, and that most attempts to "innovate" are usability failures. To wit:
This is true. And as a professional developer using Visual Studio .Net, I'd like to thank Microsoft personally for giving us:
and all the other "innovations" that cost me several minutes of my valuable time every day.
To their credit, Microsoft's developers (at least those I've talked to) do seem to have a genuine interest in improving this, and their hearts are in the right place. Some of the nasty context-sensitive stuff can be disabled in the 2003 version, for example. But a lot of these "usability innovations" gain me nothing, while slowing me down and/or wasting valuable screen real estate.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
I have nearly the same setup up at my parent's house, except that both machines run Debian Woody and it is a OfficeJet T65. Using the config tools in KPrinter, I had it working within 5 minutes. It was so easy I really don't know why it worked, it just worked (I kinda hate that, I'd like to understand things). Also, the machine without the printer can boot into windoze, and printing from windoze also works without problems, just declare it as a internet printer or something and that's it...
So I don't think I can help ESR here, since I don't know what he did wrong, but for me, it just worked.
The next thing I want to do is to add that printer to my own home network (both are connected to the Internet through ADSL), but have a username/password authentication for my machine. But I haven't gotten around to do that.
Employee of Inrupt, Project Release Manager and Community Manager for Solid
That's one thing to be said for Windows - the GUI is tiiiight.
I agree wholeheartedly with the article, and it's not just CUPS. It's pretty much everything open source. Guys like me are very open to pushing open source into the workplace, but until these problems are solved, it will not happen. Period.
An example of a good product made correctly is Mozilla.
Mozilla was easy to roll out, starting with the development teams. I just told them, "run the installer". Then I show them tabbed browsing, javascript debugging and error description, and better W3C support...and BANG...50% of the developers are now using some flavor of Mozilla and/or Firefox.
This is the ONE THING keeping OSS from real influence.
The whole world vs. Windows divide reminds me of the cold war. Lots of ingnorance on both sides.
But this sentiment comes from a professional that charges well above $150/hr for his services. Excuse me while I bend over backwards to make a free easy-to-use operating system for him. I would suggest that he consider hiring a freelancer/son's friend to help out once a week; give a Linux tech a paycheck in exchange for a shell script to make things easy. The lawyer (and the psychologist, and the office manager) should be willing to give something back to the community at large, and not just expect the community to fix their computer for free.
==========
Together, we will drive the rats from the tundra.
Software designers need to realize that the clueless users aren't the only ones who have trouble with the software; plenty of intelligent programmers and sysadmins are just as screwed when it comes to configuring complicated stuff like printing, sendmail, and Apache. The problem is that there are just too many options. Sure we can read the documentation, when we have the time, but there is rarely time to read the hundreds of pages of documentation that go along with a lot of really complicated software packages. It's not that I don't appreciate the flexibility that all the nifty features provided by large software packages, it's just that I rarely use most of them, and don't have time to sift through the documentation.
If you want to add cool features to the software, go for it. We'll love you for it. But if you want us to actually use the software, stop every time you add a feature, and make sure that you are providing simple, straightforward, easy-to-find documentation, or create a nice GUI. Otherwise I'm left with the options of sifting through my book collection and google results or just using Windows software with a nice automatic setup wizard.
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.
Yes there are also no guarantees that any software will work on any system either. I, like many other users, have tons of useless distros kickin around.
"Red Hat was never in the home user game. Even now they are just starting to cater to coporate users." Well who the hell was using their stuff if it wasn't home users or coprorate users?
I'm glad that Red Hat pays their developers. That doesn't hide the fact that their os, will never be a competitor to M$ on the desktop. They obviously tried in the past, but now since a few other distros are killing them with functioning software, they had to move fully into servers.
While the open source is all happy, touchy, feely, like the 60's, the cold hard facts are that the software that comes out of it is working under a very flawed business model. How can you make any money and increase development if you give your product away?
You can call me a troll or mod me down, whatever, the facts remain.. Xandros is a working system that has generated support and capital. It is being improved all the time. It can replace windows for a lot of users. And anybody can install it with four mouse clicks. Try that with any other distro.
I'm not anti-social, I'm anti-idiot.
Finally someone brings it straight to the point:
Open source has a huge potential but will only survive if developers focus on the user and make things as easy to use as possible. There is no excuse anymore.
We have the year 2004 and nobody should have to deal with shell prompts anymore. Nobody cares how powerful it is but people simple want to use the applications.
Fortunately their are some great examples of userfriendly open source software but nowadays we can expect every software package to be easy to install and to run.
All you good programmers out there: it is time to set more examples of good and easy to use open source software! You can do it!
Although he might be right about OSS having poor UIs, it's really getting to the stage where there are so many things in general UI design that are broken that it's becoming ridiculous. Let's see:
.INF file to add the connection name. Ok, UI folks, another principle to bear in mind: anything the computer knows may be wrong.
[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.
The point is it doesn't matter. For the guy who wrote it it works. Now if it is developed in true unix style then their will be the "real" app wich uses configuration files and an configurator wich writes to these files. Leaving it open for anyone to write their own configurator.
The most easy to use configurator would be ONE single application that can configure everything in your setup. It would allow for it to know wich values have been used in say the configuration of your network so it knows wich values to use in your configuration of apache.
The point people like me are trying to make is that you can't really expect developers who are working for free to do write this application. Opensource is based on volunteers and volunteers only do things they have an intrest in. So until someone stands up and says "Yeeh golly well lets write meself a bloody nice configuration tool" this will not happen.
It is not that it is impossible to write excellent documantation or write an intelligent configuration tool or create universal defaults. It is just that not everyone writing opensource software is either capable or intrested in doing it.
Mandrake and others have an intrest and have got the means to get other people intrested. Money.
ESR is bitching about CUPS when he should be bitching about Fedora. But note Fedora is the free version. If he complained about say Mandrake or Suse PAID version then I would be a lot more sympathetic.
What gets my goat is that people expect others to work for them for free. This just isn't what happens in either a capatalist, socialist or communist society.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
The so-called open source representative wrote what? Let's take them one at a time. Jesa Christ!
One of the Fifteen Greatest Hackers having a hard time getting CUPS working. I LOVE IT.
REM Old programmers don't die. They just GOSUB without RETURN.
If you install SuSE 9.0, which is the current release *and* is available for free now, you'll notice that k3b was updated. Presumably you're using the default windowing setup - KDE - and the default install - which includes k3b (which is really about the best darned Linux program I've used recently). Anyway, the new k3b has support for dvd burning, and the underlying tool set includes the dvdrecord stuff. It works. Well.
because the Printer Queue is managed on the local machine. It's one machine, talking directly to the printer.
Network Printers have something else in the way, managing the Print queue.
Of course, Aunt Tilly is unlikely to have an HP Laserjet with a Jet Direct card. And if she did, she'd probably follow the directions with the Printer and install the Jet Direct software, which would auto-discover her Printer and set it up for her automatically.
He's hitting the nail on the head, that's the huge difference between open source and commercial software (most of the time) and unfortunately as most end-users judge the quality of a package by its GUI many stay away from what looks like some ugly butt-looking designed software.
MS on the other hands understands that very well and has the ressources to assign Human Interface designers, usability testers, etc. on their products. And guess what ? This has worked quite well for them so far.
Of course not all open source software is ugly but with a small team people designing and writing open source naturally concentrate on features.
What this guy obviously doesn't get is that I don't need an easy to use OS. I do this kinda stuff for a living and fun so by now I can configure a video card over a remote connection using nothing more then a text editor.
You can't? Yes and? Maybe if you are a nice person and buy me a drink I will help you. Demanding I help you with threats of Microsoft software isn't going to work. Kinda like people who threaten to set themselve on fire. Yes and? Someone get the marshmallows.
He also seems to think I care about Microsoft. Only when I am playing games (and it has to be said it is getting more stable when you only play games on it). Do I mind that I need microsoft to play 99% of games? Might as well mind I need a game console to play console games. I am sure some people would feel that all console games should play on all consoles but I am not one of them so to me Windows is just another console.
Don't link me with the "???? is the year of the linux desktop" crowd please. Linux been my desktop for a couple of years now and quite frankly I am constantly moving desktops to get away from "easy" to powerfull and under my control.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
He could have picked XFree86 configuration in a typical distro, or Samba, or a hundred other things, and come to very similar conclusions, and for the same basic reason.
I am very pleased that someone of ESR's status has now become involved, it means that the issues will be exposed, and in a reasonable space of time, fixed. That is what matters. Now he may seem to have been unfair to Fedora, but my experience is that the configuration tools in Fedora are about the worst of any recent distro, as I may have said more than once on Slashdot. Fedora quite possibly appeals to hackers, I don't find the time for fiddling with config files in vi any more, although I have many years of experience in doing so. It should not be necessary. The Convicted Monopolist is unable to create good, stable, secure software, but as ESR suggests, their configuration utilities are better than what FOSS has managed so far. However I would point out that there are still many stupid and inexcusable features in the M$ config tools, in particular the network printing setup in XP is badly deranged. I have 2 JetDirect printers, they in effect are their own server, and each has its own web page as well, yet they have to be installed to local ports! Very, very wrong, and it wasted hours at the first attempt. So FOSS has not got it right yet, but we are not so far behind Sir Bill that with a bit of effort from top developers, we, the community, can not leap ahead, if we get moving.
and why technical people run screaming from Windows... ;o)
Someone bought a thesaurus.
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.
Read the heading and couldn't help laughing... looks like another aspiring English major is seeking to impress us all with big shiny words. Why bother reading the actual article? The word density is probably higher, and most likely it STILL manages to contribute less meaningful information than even the heading did...
I use iMovie to pull in my video of my 2yr old girl running around like a fool and send it to her grandparents on the other side of the north american continent.
I've never found it unable to 'do what you need to do' other than the ability to make lasers shoot from her eyeballs or something fun like that.
As a rock-in-roll Physicist once said, No matter where you go, there you are.
Dude, I'm sorry but I have to reply...
.01 seconds - BUT WHAT THE HELL GOOD WOULD IT DO ME.
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
Getting all opensource developers to use a single standard would be like herding cats. It makes a fun commercial but is never going to work and the poor devil who tries is going to be scratched and purred to death.
No the trick would be for an application to come along that is so damn good and easy to use that say one apache guru can easily keep that part up to date. One person who knows cups in and out to keep that part up to date. And so on.
Then if lots of the core apps can be configured then others will follow. Until then it is like wishing that someone would sort out the mess of command line options that have different meanings and spellings on each app. --version is that so hard? Try to get version info from a couple of applications will you?
So instead of waiting for people to come onboard I fear the only solution is to just build it. Build it and they will come. Now just to find a builder.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
I'm baffled by your story about kernel recompiling, etc. On Debian (which certainly isn't the only distro with gphoto2), gphoto2 -C downloaded from my Canon Powershot. with no problems, no recompiling anything, including the .AVI files. The manual that comes with the Powershot says you can only download the .AVI files on Windows.
Its fine that you feel this way, but don't complain about Linux NEVER making it to the big time and Windows controlling 95% of the market share because there are many more users than there are developers, and if a developer wants their software to be popular, then it is their job to make the software user friendly.
This is not a sig.
Note: I'm not trying to flame!
There's a great difference between advocating something--Linux, in this case--and really opening your eyes, seeing both the good points and the warts. Far, far too much Linux advocacy has been of the blind variety. People who use Linux for a handful of geeky uses rant and rave about how its superior and how everyone should use it. When someone asks "But is there a program as good as Blah that runs under Linux?" The response is almost always an enthusiastic "Yes! There are dozens! And they're open source! The best one is XYZ." Then in reality the dozens turn out to be half-baked personal projects unsuitable for general use, and XYZ tends to be better, but nowhere near what the person is wanting in terms of polish and quality. Those endearing advocates who insist that The GIMP is on par with Photoshop come to mind.
The next level of advocacy is realizing that this is true. JWZ, and now ESR, have followed this path, and many, many others who are not so egotistical.
My guess is developers do this to differentiate their product from someone else's.
As an end user, it just irritates me. I have to take time out to learn how to do something I already know how to do in another application.
There is no benefit in this for me as an end user.
I don't care if X's app looks like Y's app.
As an end user I would actually consider this a plus.....not having to learn a new UI to do the same thing.
Steve
I don't think we should feel the need to apologise for CUPS? Undertaking a huge project such as print serving without reading any documentation ahead of time is foolhardy. Would you replace your engine without consulting the mechanic's manual for your car? I would think the answer is no. The manual will tell you "dude, this screw is a bitch to put back in". Printing is not going to work if you try to do it "the Windows way". *NIX is not Windows! CUPS has always been a pain in the ass, most of the blame lies with printer manufacturers, for not providing drivers (for the most part). Of course it is going to show up as lp0, because, depending on your OS, a network printer will be treated as a local printer, because you are not really connecting to the printer, you are connecting to the queue. Anyone who has used Novell can attest to this! All of my printers are networked, but they are MAPPED to the LPT ports, so this does not seem to be too far off. You solved the problem. Now, write a HOWTO and post it on every Linux website out there, give back to the community. If the developers see you are helping them and giving them constructive suggestions (not criticism, most don't like blind criticism, the project is their baby, so be gentle). Most of the time, their primary main objective is making their program work well before making it extremely user-friendly. If you want to make it look user-friendly, start a project for a frontend/GUI that incorporates the things you want in there. It is not that difficult, and there are most likely lots of people who want the same things. For the most part, *nix is meant to be secure first, easy to use second. If all else fail, fire off an e-mail to the CUPS project, asking for these things to be turned on by default, or at least easily settable options, like in the scenario you described. We are making progress in the open source community. You have to realize that the open-source community has been writing good software in earnest for less than 10 years. Whereas the competition has had a huge headstart writing bad software.
I hate sigs.
It is not user friendly, or logical to set the defaults of a highly configurable app to favor the power user over the newbie.
- the newbie has to be won over, not the power user
- the power user is more capable at changing prefs
Just a thought
Steve
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.
Some projects still do not get it. There is an unconscious assumption that merely wrapping commands in a menu/GUI is making an app user friendly.
The biggest culprits seem to be projects that port command line tools to a GUI like emacs, x-cdburn, and oracle's sql interface ( not oss ).
One of the ways a GUI makes an app user friendly is if the GUI takes away some of the need for knowing how to do something in the app.
X-CDBURN ( name? ) is a good example of this. It is GUI, but the user still needs to know how to use the command line tool commands in order to burn a CD.
What is the point in wrapping the command-line tools in a GUI then? Those sequence of commands could just as easily be typed into a shell without the overhead of the GUI.
In contrast there is K3b where a user can burn a CD without having to read a HowTo to learn the theory/practice of making CDs.
Not to pick on X-CDROAST, other apps do this as well.
If you are not going to design a GUI that eliminates some of needing to know how to do a task it is not worth porting an app to a GUI.
If I have to know a string of commands and how to use them Xterm tastes great and is less filling.
Steve
http://developer.apple.com/documentation/UserExper ience/Conceptual/OSXHIGuidelines/index.html#//appl e_ref/doc/uid/20000957
"...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.'"
Now that's what I call a compliment.
The last few months have seen some improvements in this area.
However there is still a lot of improvemnt needed and this issue is often poo-pooed by developers.
Project leads may love the idea of multiplatform code, or some other scheme, but the user does not care........especially if the app takes over 5 seconds to load. Times this by two if there are faster loading alternatives available.
Think of a car salesman trying to sell a car that took 10 min worth of choking to start by emphasizing the "really cool technology" in the engine.
Steve
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?
"How many computers are you planning to install Mandrake on ?"
Little do you know that this information is being sent to SCO. Expect to get an invoice for that many "licenses" in 7-10 business days...
This is not just happening in the OSS community.
IMHO a menu becomes "busy"( unfriendly ) if it has more then 10 choices on it and more then 1 submenu for each menu choice.
Those fold up menus M$ does are not a solution either....so PLEASE do not copy that idea.
That just irritates users.
Limit the menu options to the most popular things to change and put everything else in tabbed dialogs and/or config files for the power users to futz with.
Steve
Linux users/developers spend most of their time ranting about Windows, saying how crappy it is and how great the world could be if anyone was using Linux.
I ask you then: why the f*** are you constantly trying to duplicate it?
OpenOffice, KDE, Lindows, Red Hat, Mandrake... and so on and so on...
You keep saying Windows is bad but all those wares listed above are complete knockoffs of Windows with a little amount of "different" widgets, mostly confusing ones, even the icons used in those knockoffs are identical to their Windows version, sometimes with different colors, the paradigms used are the same troughout both systems (with very little exceptions). If Linux is better than make it better, make it above the rest, it is of no use to have an F1 engine in a Lada.
The big real hard fact about Linux is that nobody wants it to be usable, people went to Linux because Windows was getting more friendly, Linux users for the most part are people who need to feel like genius and superior because they can set a printer up and you can't, they need to feel that using a computer is hardcore science. More important they need to keep their job, they set Windows aside much like the computer crowd back in the days dissmissed the Mac, because it's easy enough so that a littled-trained user could use and configure it correctly for very decent performance, security and stability (ok maybe not Windows yet...) and that might lead to a smaller IT team.
Realize this: Windows is a very cheap knockoff of the Mac and Linux (as it is now) is a very cheap knockoff of Windows.
Windows is bad, you know it, I know it, so try to be different, try do do it right. If all you want is a free Windows then don't pretend you are participating in a revolution, be blunt and do it.
If someone unacquainted with an app needs a menu choice explained to them then that menu choice needs to be reworded, redesigned, or removed.
IMHO
Steve
please re-read his article... you really haven't understood a word he wrote...
IMHO these kind of comparisons also have a strong element of truth and usefulness in them.
Cars are technically complex products made to be sold and used by people who are not as a rule tech/car enthusiasts.
If a car salesman has to ask a customer to do more then adjust his/her seat and mirrors to get a car running then that car is less likely to be popular.
The OSS community also wants to "sell" a technically complex product to user base, most of whome are computer users and not computer enthusiasts.
By the same token it should become a token to build products that require less and less input from the user.
Steve
Remember the old help dialog box? When you first fired up help for that app, you'd have to make a choice between "Minimize database size (recommended)," "Maximize search capabilities," or "Customize search capabilities." Those choices were in there, not for any user's benefit (in fact, this caused even more confusion for the vast majority of users), but because the developers couldn't decide which was best and the product manager was too much a spineless jellyfish to make a decision. They ended up punting the decision to the user. WTFIT?!
If you want to learn more, Joel has a great book about this very topic, or you can read the first seven chapters on-line.
Yeah, right.
You seem to miss the point that he wants it to open in .1 seconds versus 4.
I'm glad you're happy that you can do everything and milk the cow with Konq. However some people might *gasp* work in a different manner than you and thus want a fast opening Home/
So, I guess I say to you
Quit ranting about shit you don't stop to think about first.
Lately, it became impossible to use and counterintuitive. And why ? Like in the article: someone tried to find a perfect engineering solution and keeping the user out. I did send a mail explaining everything and even got a positive answer.
Another sample - no rant here - just move over to http://www.linuxprinting.org/cups-doc.html. And actually, these guys do a good job. They are only so much taken in with their own, that they completely miss to perceive what a user wants to do: to print. Not: develop a universal printing system.
Want another example: mozilla-thunderbird. How to open an HTML-document ? Funny only: Firefox is just as bad in opening an e-mail client. You can't even type 'evolution'; you must use the absolute path.
To be honest: at times (often) I prefer console / tui for one main reason: it works and often enough is easier to handle than gui. What makes me sad is, that 'we' don't lack the ability to produce better; at times we somehow don't seem to *want* to do better.
I am often frustrated by the interfaces on software of all types, commercial and free. I have worked on human/machine interfaces at previous employers, and learned quite a bit (though I have no formal training) about making stuff the average user can handle easilly. I'd like to offer suggestions for UI design to an OSS projects that feels they could use some help (I'm not gonna shove opinions on someone who doesn't want them) and has the motivation to implement changes. What's the best way for me to get hooked up with such a project? BTW, my Linux box is not networked yet, so it'd need to be something that has a windoze version as well.
I know this will be heavily flamed, but anywayz, ESR and the OSS chaps around, don't you think it would be nice to have a language or something like Visual Basic that aims at software development through the development of the GUI? Well my 12 year old brother can write a whole spades playing game complete with a cave-man AI in Visual Basic... but how do I ask him to do that somewhere in Linux? Can't we have a language specialized for the development of a good GUI that can use the power of most of the powerful languages we know?
I think perhaps you're confused. My question was not intended to help anyone in the "free software community" but rather to help people in the "all software community". Moreover, I have no specific advice on what "the free system can do better" because I don't believe that it can do anything better.
I switched from Linux to OSX. OSX does everything I did in Linux and quite a bit more. I was asking the original poster to explain why he was so keen on keeping a Linux back end. I have no idea what he thinks the gain from that would be.
I just don't see it.
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)
"Open source will 'only survive' if they throw off the notion that they need to pander to people afraid of shell prompts."
This is only true for Linux for experienced admins.
If you care about linux for the desktop, forget the notion that people should understand command line.
First off, the advantage of language becomes a disadvantage for everybody not suited or interested enough to learn all the commands and proper spelling/spacing/combining.
Second, what's wrong with good distro's that pander to people who aren't into command line? Why is that a threat? Why, more to the point should the mouse and command line be mutually exclusive?
Third, what's so dumb to have functionality you can set up to do the basics with a few mouse-clicks? Lots of very intelligent programmers and developers really appreciate this if it's well done and makes their life easier. If "Lusers" and "Grandma's" - these kind of names btw betray an enormous misunderstanding of average users - ask for it however, it's beneath consideration, contemptuous, and now apparently a threat to Linux itself no less.
If linux is to remain in the specialised server/embedded market, keep up the good work.
If linux wants to come to the desktop, wake up and smell the shit.
I think, therefore I am...I think.
They were accurate, about 5-6 years ago.
I believe your story, but only if your friend put it together from the ground up. Otherwise I'd say after tax it'd probably be $1600-$1800, unless they got some pretty steep discounts (possible) or had some extra hardware lying around (more likely). Apple competes with companies that sell completed systems. Also, the $1800 (mac) includes a nice, quality flatscreen, a good OS, a processor that when instructed correctly can meet or beat the other P4 in terms of performance (altivecs completely blow the water out of the competition, but not many programs use them). They also get all the easy preconfig that you don't get with linux or windows.
At the higher end of the mac spectrum, not much comes close (for equivalent prices). At the low end, they stop about midway into the PC market. Honestly, I'm fine with that. I've owned 2 recent macs, and they've been good machines. I hit a hangup with my iBook, but Apple has since begun a program to rectify that, and it was only for portion of their distribution.
Well, considering that OS X has Office, all the adobe products, some of the best video editing software available commercially, the outright amazing iLife suite, most every linux program and freebsd program you could want, a working X11 implementation out of the box that integrates with the windowing system (unlike, say, Exceed), and legacy mac apps compile under carbon, AND emulation packages, I'd say that if anything, Windows is the one with compatibility problems. Windows once had much more software, now it only holds the 'more' on a few categories, like games.
Games are fun and all, but I just can't justify buying a computer just for a gaming box. It's a waste of money when I could get an XBox, PS2 or Gamecube at a fraction the cost and still get much of the fun.
Firstly, I'm not sure I believe this, but anyone could troubleshoot a lack-of-ram problem there. :\ Even so, this is a multi-point. Firstly, Apple now offers many warranty plans. This is not an issue anymore, and hasn't been for quite some time. Second, Apple charges full price for OS X, but you don't mind. Know why? Because the OS release are, to put it bluntly, bad assed. Once we passed into 10.2 country, Apple was no longer "making OS X what it should have been." 10.2 to 10.3 was honest-to-god feature add on the scale that I've never seen with an OS before. The underlying system and the windowing system both leapt up a notch in power and speed. If Apple can do another upgrade as good as the Jaguar and Panther upgrades, I'll cheerfully pay for it again.
Here is where we need to work on what ESR was talking about. People don't realize that well designed UI and integration is worth something! Sure, CUPS may be the shizzle, but if you can't configure it without major headaches, then it's worthless. We've had folks deliver software to our shop as a flat directory of source files. No build instructions, no makefiles, no ANYTHING. Just the code. How useful is t
Slashdot. It's Not For Common Sense
I just started using linux myself, and there are a coulple of things that show me it will never take off.
1. It is a pain in the A$$ to install drivers
(it still won't use my sound card)
2. It doens't reconize the stupid whell on my mouse. (nore any of the other extra buttons)
3. It requiers me to figure out how to edit the kernal myself, and doesn't provide any instructions or tips on how to do so.
4. It doesn't notice my Usb storage device without changing some setting that I can't find on my own without a manual.
5. It requiers me to mount all my drives manualy.
6. My XP machine hasn't froze or crashed or anything since I got it. it reconized my mouse properly, it reconized my graphics card, it found my Usb storage device immediatly, It even found my sound card and plays music through it. It even automaticaly mounts all my drives. It works like it's supposed to!
The great part about OpenSource IMHO is that anyone who knows how to code can sit down and write a GUI for any piece of software for which they have the source code. So nothing is stopping 300 people from writing better GUIs.
In defense of the CUPS people - they responded well to the criticism in the rant. Programmers know GUI design is a weak point for most of us. Now lets fix it.
Last line of the rant:
"PPS, 27 Feb: Got a very positive response from the CUPS folks. At least some of these things will be fixed."
Microsoft has already moved on and is creating virtual machine run-times and a DirectX hardware-accelerated desktop. Linux is still trying to get a desktop off the ground with "cute" names like KDE and GNOME
Yeah, like "DirectX" isn't a cute name....
the snappy responsiveness OS X and Windows XP have
Windows XP isn't snappy. It spends at least half a second doing some stupid "fade in" instead of opening up a damned widget immediately. I guess this is supposed to make it less intimidating or something. That, and the Fisher Price colors. I don't get it, personally.
(because to Linux users, registries magically = bad because Windows happens to have something called the "registry")
No, registries are bad because they're opaque and complex. They fail, and when they fail, it's catastrophic. (AIX has a registry, too. It's called the ODM (Object Database M-something). I've been a professional AIX sysadmin, beginning with 3.1. I've seen ODM failures. They're not pretty.)
I don't want one on my real computer. I'll let Windows have one, because you need one for Windows, and you need Windows for gaming. But my real computer should work the way I want it to, and for me that's ~/.xsession, fvwm, rxvt, mutt and vim. I know most of you don't share my view, and that's fine. You can have your CORBAs and your "Let's save the state of every application so we can bring them all back up when the user logs in, and they'll never have to edit a file to customize their desktop!", and I hope you enjoy it. But when it breaks, I'll just sit there and look at you. I won't have to say "I told you so". But you'll know that I'm thinking it.
I agree with your points, but debating the usability of fetchmailconf itself is pointless. You're already taking a gigantic usability hit by asking the user to configure a separate program to download mail and then use another seperate program to read that mail. Anything humane is going to the both of those.
IMHO, the only people who are going to be anal enough to want a separation between the program that downloads their mail and the program that reads it are the very same unixy people who think that fetchmailconf is a spectacular, shining example of user-friendly design.
Ergonomica Auctorita Illico!
I completely agree with this. I have been programming for such a long time now, that I don't even dare to remember. Now I work full time as, guess what, a programmer. Anyhow, being constantly pissed of with windows, I'd love to use Linux as my primary OS. But, certain things are just ridiculously complicated, and I don't have the hours that one needs to kill to learn and configure the system properly. (apt4rpm and freshrpms are a great help when it comes to keeping up to date on software) How difficult it was to access SMB shares and configuring my wireless cards... But, I got to admit, its getting better. I have been trying linux on and off for 5 years now, and I like the improvement. I am set solid on Fedora Core 1 for now, but it still needs a lot of work before it is fully usable. I should not need to be a 'techie' to use a system, but having an ability to do that IF YOU WANT TO is good. A little thought could take this a long way.
Free speech is getting expensive...
It's not another distro, it's "run the newest version of your software". You don't *have* to change distros just to upgrade the software, but that seemed the easiest suggestion given that the question was asked by an appearent newbie ('cause you're running whatever was bundled with the distribution which happens to be about a year old).
The k3b site is http://www.k3b.org/ and there's a binary package up there for SuSE 8.2, so you don't have to do that really hard thing known as "compliling" or "figuring out how to read the INSTALL doc". Heck, you don't even have to go to google and click on the first link returned by a search for k3b - the homepage is linked right in the "about k3b" box in the application on your computer right now.
I can barely express how much I loathe [Lotus Notes]. As an email system, it sucks. As a document database it sucks. The web interface sucks. Yet for some unknown and ill-conceived reason, the IT people at work picked it to run our internal intranet. I can only assume that someone either got a hell of an all-expenses-paid, 6 month vacation to a tropical destination out of it, got a large infusion of free cash, or were terminally brain-damaged when they picked this software.
:)
You hit the nail on the head right there. Currently I work at one of the Kroger offices, but used to work at the Kroger helpdesk, doing computer and POS tech support. If you didn't know, Kroger is a huge grocery chain that has bought out many other chains throughout the country, currently operating a total of close to 3000 stores nationwide. There are many, many offices throughout the country for all of these stores, and they all had their own email systems, as they were all originaly seperate companies.
So Kroger decides that everyone should be moved over to the same system, for consistency's sake. I can understand that. That makes sense. Then it was announced that they had decided on Lotus Notes....
Ok, so tech support sucks. Lotus notes really sucks. Now combine the two together. I had to do tech support for Lotus Notes R5. Can you imagine??? Just put yourself in my shoes. I think at some point, everyone there considered suicide.
What makes me crack up is the reasons you listed for your company choosing Lotus Notes. Those are the exact same reasons we used to joke about at the helpdesk! Well we had one other one also... someone must have gotten one hell of a blow job...
Lotus Notes is, without a doubt, the absolute worst program I have ever used. EVER . It cannot do anything right. The interface is horrible. Everything is ugly and poorly designed. It's slower than molasses uphill in January. It eats up nearly all of my paultry 128MB RAM on this crappy computer I have to use, so everything else pages out (Fun!). There is not one good thing about it. I always hear people bitching about it. It's always giving errors when trying to send email. Luckily I used to support it so I know how to fix most of them... EG, "Invalid Document" when trying to send an email. Gee, thanks Lotus, that error message is really descriptive of what's wrong. (If you get this message, you have to delete Cache.DSK and mdircat.nsf in C:\Data\LotusNotes, assuming a default installation. Then re-open Lotus and it will rebuild these files).
Now I know lots of people despise Microsoft, but Kroger has MS Office deployed throughout their business. MS Office comes with Outlook. Outlook may not be the best solution ever, but at least the damn thing works. Throw up an exchange server is each office, and we're all set. No, instead they probably spent tens of millions of dollars to deploy Lotus on all of our workstations, and not one single person likes it. Since lots of people probably use Outlook or Outlook Express at home, this would have made sense, beacuse nearly everyone is familiar with it.
Anyways this rant has gone on long enough... And just in case you didn't realize it yet, I fucking hate Lotus Notes
Joseph?
You know what I like the most about Slashdot, it's something you can find throughout this thread, respect of other people's choices.
;)
People disagree, people have preferences but in the end most Slahsdotters understands the need for platform diversity and the goods and bads of each platform. Slashdot is the only place I've found where I actually feel good about using a Mac because Slashdotters understand that for some task they are indeed superiors, however they also do not fall into the "Macs are Gods gift to mankind" moronic attitude.
Slashdot has a well balanced variety of users that mostly respect each others and that is VERY good for the computer industry, it let us focus on the important thing, not who's right or who's wrong.
If desktop Linux has a long road to travel before usability people are intelligent enough not to call it "crap", they just call it crap when it comes to desktop use AND actually provide insights on how to make it better, not phase it out.
NICE
i might even register...
As I see it, there are three possible explanations:
Ergonomica Auctorita Illico!
While this topic has generated mountains of discussion, I found only one mention of usability testing. In the case of setting up printers, a few user tests would have done wonders for revealing the barriers to success. The developer could probably fix such problems without trouble or if necessary document the critical impasses. While style guides and best practices are useful to someone building something, actual testing is invaluable for revealing critical, show stopping problems. Given how easy it is to test, it's a shame that more people don't use it to reveal weaknesses and improve their software.
I thought the philosophy behind a unix-like OS was KISS, and one program for one purpose?
Eric S. Raymond? Aren't you a programmer? This is open source software! If you don't like it, you fix it!
Oh, you don't want to fix it?
Why not?
Your answer to that question is probably exactly the same as the author of CUPS.
It happens that I just configured a mixed network at my house, a Linux box with a printer, and Linux and Windows machines (98 and XP) talking to it.
I've also debugged Windows printing at the office recently.
I realize that ESR likes to hear himself rant, but I'm sorry, anyone who thinks that configuring printers under Windows is easier than setting up CUPS is severely deluded. After running the nth install program on a Windows machine because the printer manufacturers refused to just distribute the drivers, and after reinstalling the printer for the gazillionth time because Windows horks up printer permissions, and all of those other Windows issues we've just learned to deal with, the "plug it in, make a few obvious selections, and print" of the assorted apps talking to CUPS kicked the whole Windows thing to the curb.
ESR has been slowly sliding into irrelevance and meaningless ranting for a while, this little screed puts him solidly in the Jon Katz camp in my book.
As I've already explained my position on KDE usability, I won't bother posting it here.
Ergonomica Auctorita Illico!
The lack of recognition of the primacy of "ease-of-use" is a huge problem for open sourcers. This will be a difficult skill gap to bridge, because Microsoft is driven by profit (customers), and therefore will be incentivized to actually produce things that people, other than propeller-heads, want. The world really, really, really, doesn't give a rats a$$ about how elegant your design is, but because your reward system is based on peer approval, rather than "customer" (a concept that doesn't event exist in open source) approval, you'll never understand this.
To summarize: making something complex is easy, making something simple (and useful) is very hard.
Would be nice if someone started up a project like that. :) Similar to the Slicker replacement for Kicker in KDE, even just a website with a design document and prototype shots would be great. I even have sketched prototype designs myself...this is an idea that's been bouncing around for a while now. Maybe this weekend I'll put something up for fun, and link to the site in my sig and get feedback from other people. Even if nothing became of it, the ideas would be out there.
P.S. Just so people know, I love Linux (recently switched from Slackware to Gentoo for the first time, my new favorite distro). But I yearn for the idea of the "dream desktop"--a completely free, open source Linux desktop that innovates and blows people away with how easy to use yet powerful it is. Intuitiveness. I don't believe KDE or Gnome are achieving that. I guess because I'm a musician (though I program for fun), I look at computers as a tool for art and usefulness.
TechnoElitism
The firm belief, that because and individual has the cognitive capacity to figure out a solution, that that solution is superior to all others.
Has it really taken this long to identify this problem among the Open Source Community?
OSS is most often developed as a response to a need or a desire by a technically adept individual or group of individuals.
I think of it as the "There's-more-than-one-way-to-skin-a-yak-but-this
I have a problem, and I can solve this problem. I don't want to solve it over and over again, and I don't want to pay someone else to do it. I think solving this problem would be cool. Sometimes, and I do mean sometimes , I have an idea to solve a problem that no one else has even thought of yet.
I write some code. The code is good; it does what I want it to do. I don't need to document the arcane way it does what I want it to do, because I wrote it. I know what all the variables do. I know the string manipulation algorithms. I understand the connection sequences, and where all the configuration files go.
All is good in my world.
I have proven, once again, that carbon is smarter than silicon, and my carbon is smarter than most other people's carbon.
This may make it cryptic and cumbersome to others. So be it. To some extent, deep down inside, I am proud of this.
It's equal or better than any work Microsoft, or Symantec, or Cisco, or.. or.. or.. whoever could have done.
It's better because "I" made it, and "I" understand it.
Fast Forward
"Hey, look at my code, isn't it cool? It runs faster and smarter than other code like it, and it never crashes. Well, yeah, it's kind of a bitch to install, but it will solve that pesky problem you have with X. And it's FREE! Yeah, check it out, lets install it on your machine. You got a couple hours?"
"Well, yeah, you could just install Windows... Yeah, that is easier to do, but that costs MONEY! And it doesn't do all the cool things that mine does! Yeah, well, they do have support, but don't you understand that this is FREE! Didn't I tell you it's better too? I included a FAQ and a Readme file, what else do you want? Oh. Simplicity, well, that's fine and dandy, but wouldn't you feel better, knowing that you're running better software than the rest of the cattle? No, you wouldn't eh?"
"Feh! Who needs you... Go suck up to some corporate greed-mongering capitalist innovation wrecker. It's people like you that keep people like me from writing the GOOD software."
Can you taste the irony?
It seems to me quite obvious.
We need an OSS InstallShield. Not a package manager, not "tar -xvzf", and certainly not "make menuconfig\make dep\make clean\make zlilo\make install\reboot".
We need a tool that your AFR (Average F*ing Retard) can run and install software. Sure, that takes the elitism out of being able to run our OSS, but we will kick the piss out of the "pay me for crap" crowd.
At least I know, as an elitist, that people are stupid, and they're just never gonna get it.
Jim
> 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?
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.
Solution--uncheck the boxes to turn them off.
KDE fades in as well and also has Fisher Price colors. The solution in that case is also to turn them off.
That's why I'm an advocate for things like SVG, and XUL. Imaging using Macromedia's tools to design your interface. Then running that using Evas.
BTW You might want to give Glade a try.
SCNR
The second the Free Software community started trying to push their stuff on schools, governments, and corporations, every Free Software developer earned a moral obligation to improve the usability of their stuff and they lost the right to say "Quit whining about what you're getting for free". The instant you put your software in areas where people don't have a choice in the software they use, you are no longer "just a volunteer".
Free Software Developers either need to make their usable or they need to stop their lobbying and go back to the server closet they came from.
We talk about world domination, but we'll neither have it nor deserve it until we learn to do better than this. A lot better.--ESR
Ergonomica Auctorita Illico!
What if there was a project whose sole job is to look for this kind of problems. There are projects for documention , drivers, devices, hardware for linux.
Why __not__ for this. This would requred mostly non-technical people and an efficient feedback system to the project maintainers. And the Linus's "enough eyeball's" Law which applies to the Software bugs would work extremly well in this case, since the core project developers can't do this alone. And at the same token, depending on non-technical end-users to look for these & report would be a wait for ever.
My two cents.
Apple Mac OS X printing uses Rendezvous AND CUPS to make sure that, in the absence of a user's choice, SOME printer is selected. It can't do this all the time, but normally, if you've got a printer connected somewhere on your network, you can print from another Mac without ever having to configure anything. Sure, Apple's configuration dialogs and printer management GUI is decent, but the real value is not having to see them at all.
I'd like to bring up a story about the moment that I knew I hated Linux.
It was several years ago, and I was attempting to install Red Hat 5.2 on my machine. After getting past the initial install, it was time to get my modem working.
I had a regular ISA COM port modem - none of that WinModem crap for me. However, I found that there were NO good ways to get it working. Every HOWTO I read in the HOWTO directory assumed that I was attempting to access the Internet through my local network. I must have read about 10 HOWTO's before I stumbled on one that seemed to lead in the correct direction - something about getting PPP working. I opened it, hoping for relief, only to be foiled: the HOWTO regaled me with methods for configuring a PPP connection, but in order to actually get the modem working, I would have to:
*drumroll*
Connect to the internet and download a certain HOWTO.
Windows NT4 went on that afternoon.
i'm amazed that i survived - an airbag saved my life.
The CUPS copyright is owned by Easy Software Products. A company that wants to sell you ESP Print Pro, their commercial counterpart to CUPS, for you to do your printing on Linux.
It sounds like ESR loves Windows, but for some odd reason he likes to torture himself with Linux. It's no secret that Linux is for smart people, sorry.
In an ideal world, where all applications talk the same language, and where GUIs are perfect, you wouldn't need Help installing that printer over the network.
;)
It shouldn't be rocket science. You have 2 or more computers networked, a printer connected to one of them. It should be as simple as showing you a list of available printers, and you click on the printer to connect to it. Microsoft almost got it right.
But sometimes you do get stuck, and need that Help button. Provided you're online, the Help button should not open offline documentation, but open an online discussion about that screen.
When Googling for technical problems, I find 90% of the answers in forums. So skip Google, and bring the forum link to the dialog box!
Not only will everyone get their answers from fellow users, but the developers will have much valuable feedback to help improving the interface.
I just drag and drop files in Xandros. It actually recognizes if I am grabbing an iso and does the burning as it should be done.
There are people doing greart things in OSS, unfortunately not all put theoir worg in the same distro...
IANAL but write like a drunk one.
If TYAD is all what it takes in order to be the master of my software, I will TYAD.
It costs little, it is fun, I learn, and saves me a good deal of money.
Freedom of choice comes with a price, those not prepared to invest a bit on their own freedom are condemned to be dependent on others.
IANAL but write like a drunk one.
You didn't read the article, did you?
Clear, Dark Skies
"According to your logic, anyone who ever needs surgery should be required to be (or become) a surgeon before they can receive the services of a surgeon. Similarly for automobiles and mechanics or accountants or any other job that requires some level of expertise."
Um, no. My logic is that "ease of use" can be taken too far and that trying to please everyone will end up pleasing no one. That scales very well.
"The vocal minority on this board are the exact opposite of this. They are the ones that proclaim that Microsoft must fall and be removed from the Earth. To do this, you *must* please users. Perhaps you aren't in that group of people, but that group is the one that most people see and then apply that to the rest."
And as someone else pointed out, that vocal minority should be the ones scratching that particular itch(1). They want it? They should work for it. The rest of us have what we want.
(1) This is OSS after all.
Several responses imply that the developer didn't like your ideas. Where your ideas directly related to the subject at hand? Did they solve a real problem?
Here's a possibility you might not have considered: maybe you are sending stupid bug reports.
You seem sincere, so I'll give you the benefit of the doubt that your requests were polite and understandable. Let me give a few example of messages I've received from users that probably seemed perfectly legitimate to them.
"U": User, "Me": me.
Me: "I used Python + Tkinter for the GUI; that's very possible."
U: "What version of Visual Studio is that?"
Me: "No."
Me: "It prints details information to stdout. Pipe that into "mail" if you want to get it in your inbox."
U: "HOW WAS I SUPPOSED TO KNOW THAT? You should put a mail sender in it."
Me: [no answer given]
Me: It's a command-line cryptography program. WTF? [no answer given]
Me: [no answer given]
Me: "It's on the same page you download the application from."
U: "I don't like HTML manuals."
Me: [no answer given]
In each of those cases, the user was polite and clear about what they were asking for, but there requests were unrelated to the scope of the project. Maybe yours weren't as relevant as you thought, either?
Dewey, what part of this looks like authorities should be involved?
There's been one mention of "novice controls" on this thread. Various software applications I've seen or heard about have them: Adobe Photoshop, various games; but how widespread are they? Do they work in practice? Would they solve ESR's problem? Would he even like them? I've seen all sorts of things over the years: "wizards", balloon help, "hint" popups etc, but these seem to me to be rather uncoordinated. What is there that is better that I've not mentioned (because I've not seen or don't remember it)? As a long-time Unix (includes Linux) user, I get rather annoyed by GUI applications which popup "baloon help" and "hint" dialogue boxes, but at least I can turn them off. "Wizards" seem to me liable to discourage user learning and the formation of a user's mental model of the interface. (Everything is a limited conversation with the wizard, 'who' does everything for you.) Do usability studies back my feeling up? Would you even want to interact through a possibly patronising AI (talking head)? What if a novice user could "tell" an application (or a desktop system) that they were a novice, so it would be "kinder" to them? Once the novice shows evidence of having a mental model of the "novice controls", how do you (as user interface designer) take them to the next level of understanding?
Undertaking a huge project such as print serving without reading any documentation ahead of time is foolhardy.
Right. So, when I go to print a document on my Mac, and select from the list of magically recognized, identified and configured printers that it found on the network, I'm actually engaged in a foolhardy act?
Given that the Mac uses CUPS as it's printing system there is no reason at all that printing on Linux has to be so hard.
Raymond is right, and he's finally noticed the problem that made me switch from Linux to OS X 3 years ago. I don't want to rebuild my kernel when I add a digital camera. I don't have time to learn how the printing subsystem works when all I really want to do is print out a birthday card for my daughter. I enjoy hacking and tweaking my system but when I need it to work it had better damn well work the first time!
Clear, Dark Skies
look, if you want to configure a piece of software that contains 15 different configurable parameters it is amatter of choice what you prefer to see.
You prefer Wizards? Fine. I just hope you don't have to back track (have you seen that "back" button on the wizards I suppose) to the 2nd or 3rd stage of your configuration once you are almost finished.
With a config file you have everything there, you can search for specific keywords, you can automatize configurations or installations and even use scripts to change aspects of the configuration under certain conditions.
Honestly, many people are trading power for eye candy, to each one his own.
IANAL but write like a drunk one.
The problem with having the "worker nerds" do their thing first is that the very architecture of their system may preclude (or make difficult) some necessary newbie functionality. To paraphrase Alan Cooper, code is to design like concrete is to architecture: once the concrete is poured, it's REALLY hard to change it, no matter what changes you make on the pretty blue paper.
Ideally, you let the design nerds do some user research before you start coding at all. Who is the target audience? What design metaphors are the already used to using? How much (usually, how little) experience can we assume?
Then you prototype. Prototyping isn't much different from coding: prototype your designs (on paper for starters), find out where they crash (i.e. where people get "hung"), debug, rinse, repeat. You won't work all the bugs out with a paper prototype, but you can nail an awful lot of them.
THEN you start coding. And you test and refine as you go, since some things (scrolling, for example) can be hard to simulate with paper. But you can get so much information if you just take a couple of weeks at the beginning and put some thought into your design, and then find some people who are representative of your target audience, and say "You have a printer attached to a different computer on your home network. You want to be able to print from this computer to the printer on the other machine. Here is the first screen..."
(Spoken, by the way, as someone with a foot in both worlds -- a design nerd who has also co-written a C compiler).
I've been trying to get Samba working on an Yellowdog Linux installation that I currently have on the home LAN, that currently works as an FTP server. No GUI,I just ssh into the box from my windows machine, but I do have webmin installed. I have yet to find any clear, documentation on how to get things running. The free online O'Reilly book is overly verbose and complex. I really don't need to know the history of networking. Just a step-by-step guide would help.
Help, please! ; )
evanchik.net
Same years ago with doing serious photography. A Mac you hook it up to high end scanners and output devices and it works, easy. Windows was almost unusable for the longest time because hardware was a pain in the neck to setup. When Win2k came along it at least added OS reliability but hooking up some high end photo gear was still a pain. Mac back then ? drag and drop plug-ins and you are up. ( early OSX obviously broke this record :) ) At least XP has helped this issue.
The short statement being: Windows for the longest time was a pain to do connectivity with hardware at least in my job ( photography ), so IMHO when I see the above article, my first idea was: "Where have I seen this before?"
I don't post often on ./ but I figure I could offer some input. Also I'll like to point out most of the programs I run on my Linux desktop are installed because of great UI design and not only I use them but my friends and family do too when they come over to my apartment. I've been building simulators and courseware for the government for over 4 years. The only thing they care about is how to make it easy for the students/costumer to learn what they need to know. I mean most of these guys that walk into these schools are only going to be using the program for only 2-3 weeks. So they don't need to waste time on how to use the interface. The project I'm working on now I was told they were only going to spend a day going over the interface.
I never had the joy of just working on the back-end stuff where the interface is not required just hooks for the programmers. I always have to work on the front-end where usability was always important. I'm working on a project of my own and the interface is being created in Flash MX. I never looked at any User Interface Guideline documents I just build the interface based off what I've seen with other programs. Like for example I like the way the Preference window is setup in Mozilla and the KDE Control Center. So I based my Control Panel off them two projects. I also make it a point to listen to others. I told my friends if it's something they don't like to e-mail me with their input. If I got more then one or two e-mails then I know it's something I need to look into.
When it comes to using programs I only use the programs that have good UI design. I don't care what tool-kit it's written in. For example I use K3B over Gtoaster and XRoaste. KDeveloper over vi and Emacs even though they are very powerful tools. Like I said I use those programs because they are easy to use. Then again that's just me, I'm sure there are other people out there that use them programs. I don't care for using cdrecord from the command line. Yeah I could, but I don't feel like burning CDs that way and I don't feel like burning CDs for my girlfriend. I know it would be a cold day in hell before I ever see her typing anything into a console window. Ok, I'm done with my rant, but just remember I got a lot of my friends interested in Linux for the simple fact it's easy to use. That's coming from another programmer and a user of free software.
From Zero to Hero... Starbuck Zero
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.
In my opinion, ESR can give up Open Source and join Bush Cheney 2004. He can then easily pick on opn people (open as in open source and liberal minded)
I am impressed it only took him one night. I lost three days trying to get cups to work. I now have my own vodoo ritual for getting a printer on another machine to print. I sort of understand his complaint but, If you want something clean, packaged, and perfect buy a completly integrated network and peripherals from someone like IBM. I still do not understand why any individual feels like this stuff has to conform to their standards. It is what it is, no more...no less. I get frustrated daily, I am constantly hosing boxes sometimes I can recover sometimes I can't. So what do I do? I reinstall a lot. If you don't like it abandon it. Life is too short. I for one am grateful that all of this capability with it guts hanging out is available. To me this is an adventure not a task. If you demand professional go and pay for it, don't scream and holler at those who were brave enough to stick their work out there for all to see. If you can't afford it then shut up and take what you can get.My first computer had one floppy disk and 64 kilobytes of memory and displayed 32x16 graphics on a green television screen. It costed thousands and was useless. I'd say the present state of affairs is pretty good. If you want to be critical and demanding then open your wallet not your mouth.For the record I don't care who uses it, I only care that I do.
People seem to consistently miss the point of open source software. As an OSS user, you ARE the Beta tester, developer, end user and marketing department. Software is developed to scratch an itch, sent to the general public who then complain that it doesn't scratch their particular itch, the software is tweaked, made better, and before you know it we all have fleas!
No wait, that's wrong. But you get the idea. It drives me nuts to see people harp on how poor an OSS piece of software is when they haven't done a single thing to contribute to that code. This is OSS folks, you dont just yell at a vendor that you paid money to (you did pay money right?) until they change their app. You have the source, resources are online everywhere to help you learn how to code. Use that energy towards fixing what you see as a flaw instead of complaining about it.
www.linux-skunkworks.com
Programmers like you are why I dicthed Linud and bought a Mac. If yiou write programs just for you and never distribute them, fine. Make them as inscrutable and user-hostile as you want. If you do release them you do yourself and Linux a huge disservice by making them hard for users to use.
Boobies never hurt anyone. - Sherry Glaser.
Yes, KISS and one program doing one thing well is part of the UNIX philosophy.
Problem is, most UNIXes have also been infected by the swiss-army-knife Emacs approach. Especially when it comes to GUI apps.
His point is that SuSe is free and Windows is not. Why are you so bitter about something you got for free? If it is not worth the savings to read a stinking manual, fine-- use Microsoft. People too lazy to read a man page deserve to have to pay for software, IMHO.
The truth is an offense, but not a sin.------R. N. Marley
I don't care about linux for the desktop. Really, I'm lately not caring about Linux at all. But that's an aside.
UNIX-like systems work well for what I want, and will continue to do so. I would call it 'workstation' grade, rather than 'desktop.' Desktop implies that it's a total solution. Workstation implies that it does real work, is a tool, but doen't crowd out other stuff on your desk.
---
One of the (many) reasons that the various *ix's are better than the Massive Microsoft Monolith is that most programs are designed to do one thing (and only one thing). That means that most *ix programs come with a simple (read: stupid) user interface, usually from the command line or from STDIN/STDOUT. (Frequently, they have both.) Therefore, some digigeek can write the program that does the bit manipulation and only speaks geekish, but someone interested in User Interfaces can write an application that provides a clear and functional interface. The connection between the two may be a System call or a Pipe. What a simple and powerful idea: the developers that understand bits and hardware write the part that interests them and those that understand users can write the parts that interest them! The connection between the two is a standard interface. In Gates' world, everything is part of a single entity - Microsoft. If someone wants to add a new feature or improve an interface, that person must understand the entire monolith. User interfaces are completely controlled by M$. Although this guarantees a minimum acceptable interface, it leaves no room for growth. I have always thought the simple interface idea was one of the most powerful features of *ix. This is the reason there are multiple shells in *ix. It allows the possibility that programs with poor user interfaces can be easily improved, with encapsulation (wow, just like OOA/D).
Sometimes complaining about it *is* a valid contribution towards fixing the flaw.
As an OSS user, you ARE the Beta tester, developer, end user and marketing department.
You're right. And guess what? Part of being a beta tester is complaining when things don't work right. Sometimes that is via formal bug reports, and sometimes it's by informally discussing the flaws you can't live with.
Whether it's Open Source or proprietary software, beta testers are valuable. And not just to tell you where your code breaks, also to tell you where it doesn't work the way they expect it to.
If it's a one-off that somebody whipped up to perform some task and then released to the public, then maybe it's unrealistic to expect the developer to listen to or care about feedback. If it's a full blown project, with UI, etc., it's reasonable to assume that the developers *want* people to use it. This means that they *should* want feedback. Sometimes they don't, and sometimes they don't listen even if they get it.
But as long as the feedback is offered in a reasonable manner, this feedback may be the most valuable contribution most of the FOSS community can make. And usability/UI feedback is in many cases exactly what is needed.
Sometimes it works too. Note that ESR's PPS indicates that the CUPS team has taken some of his advice to heart.
Ignorance killed the cat. Curiosity was framed.
Interesting that this story comes up so soon after I read Cory Doctorow's latest book, Eastern Standard Tribe. (Go to boingboing for the free ebook link.) The protagonist in that book is a user interface designer, because, as he explains in a conversation during the book, engineers know how to make stuff, but they don't tend to have a good understanding of how people actually use it.
Editor Emeritus and Senior Writer, TeleRead.org
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.
Quit ranting about shit you don't stop to think about first.
In other words, it's bad for Microsoft to throw everything and the kitchen sink into a file browser, but it's okay for me to have to wait 4 seconds to load my Home directory because you arbritrarily decided, without citing any single examples, that somehow Konquerer is magically superior to Explorer.
Sorry, it's MAGICALLY SUPERIOR, to use your style of RANDOM YELLING CAPS.
Wow, so Konquerer previews files. Explorer does that too. There's even a sidebar on the left giving me full details, a task-based list of commands, and previews. Windows 2000 even let you listen to WAVs and MP3s.
Your argument falls "FLAT ON ITS FACE."
But what is a problem is that this mindless bashing discourages any improvement.
I love it. Any criticism is always "mindless bashing."
I'm not the original poster, but I do agree about his time argument. And before you call me someone who does not want to learn Linux, READ MY F*CKING SIGNATURE AND THE EXPLANATION BEHIND IT. There is no reason whatsoever for lack of time to imply lack of willingness to know or learn. I work 12 hours a day (on Linux, HP-UX, and Solaris machines) and have to eat, sleep, wash my slothes, and take care of my house and social life as well, besides toying with my home computers.
My "old" Linux box at home (running a self-patched 2.6.2 kernel on dual CPUs, by the way, so not just an average Joe SixPack beige box) does not have a single binary that I did not compile from the source on it other than the X server (and the only reason for that exception is lack of disk space). It also does not have a single configuration script that I did not re-write from scratch. It does not have a single binary that I do not know the purpose of. But it took me a lot of time to get it to that state, back when I still had said time, and it DID start out as a Slackware installation just to get the box going. Now that I need to get my new portable into a usable state ASAP, I want to get it all set up within one evening at most. Later on, finetuning similar to what I did in the past will surely occur again, but right now (read that as: over the coming 8-12 months) I simply DO NOT have the time for that. And yet I STILL should be able to get things working.
It should be possible to set up a Linux box just as easily as it is to set up a Windows box. That has nothing to do with lack of knowledge. Or actually it does: I know almost nothing about Windows. I bought my new portable partly because I need to find out a lot more about Windows (sad but true). After 1 hour (mostly dominated by waiting for a slow phone line), everything was working and I could dive into experimenting with those bits that I need to find out more about most urgently. With Linux, I will first have to fight for days with various pieces of equipment that I simply need to work, but have no immediate interest to understand. The printer configuration is one of those.
Oh, and vi is indeed best
Linux user since early January 1992.
People with talent want to earn a living. So they're not writing free software. That's the basic problem with Linux and open source. There are a lot of bit-heads out there that'll hack together something functional to impress the other bit-heads and show they belong. But refined, world-class user interfaces will never come from these guys -- at least not as long as talented people can make a living doing what they love.
Better yet, let's open up your browser and load:
l
..and actually READ THE ARTICLE.
http://www.catb.org/~esr/writings/cups-horror.htm
~dlb
I've been using Windows for years, and will soon try out Linux for the first time. I'm not totally noob to computers: I know rudimentary C++, Java, XHTML, VB. What worries me about trying Linux is the technical knowledge required to just do regular day-to-day stuff, and you've just confirmed my worst fears: I looked at your 5 instructions (you listed "2" twice, btw) and thought: WTFing HELL MOTHER OF GOD?
I just bought "Linux in a Nutshell" and am just starting to learn to do basic tasks, like navigating directories, copy files, move directories, make links. Yes, I'm a true blue linux noob, which is maybe why I can provide good feedback to you guys I hope.
Anyway, I'm starting to get the hang of linux basics, and just started thinking: "hmm.... not too hard at all, pretty simple", and then you show me *this*, just to install a fucking printer? You've gotta be kidding me. "-db hpoj hpijs" looks like something I'd angrily bang out on my keyboard with my fists if I got frustrated because I couldn't get a printer working! Worst of all, you said this at the end:
"4) http://localhost:631, add printer, not hard"
Not hard? The measure of difficulty is never to YOU, but the END USER. Put in another way, the question is not "How hard is it to do?" per se, but "How hard is it to learn how to do?" And if you want Linux widely adopted, you have to design for the end user. Of course it's not difficult to you guys, THAT'S WHY YOU GUYS ARE SYS ADMINS! It's like if you ask Steven Hawking whether time travel is possible and he looks at you like you're an idiot and sighs and says: "All the math textbooks and equations are already out there, fool, so go RTF-Math-Textbooks!"
I have absolutely NO IDEA what any of those acronyms were. I already consider myself someone who likes to learn background knowledge, not just follow blind instructions. I like to tweak with things, and explore. But to learn the background of all these commands will take days to weeks (I have no idea how much learning is involved here). And this is just to install a printer directly to my computer? In Windows I'd be done in 10-15 minutes or less, and get on with my endless work. It's not always about willingness to learn and all, but sometimes you just have too much to do than cram for a couple of months to memorize all these unintuitive commands, and then forget them half a year from now when something changes (new hardware, system crash, whatever), and have to cram all over again. You know how much you hate to study for exams? Can you imagine studying for months when you don't really have to because you can always run into the arms of Windows?
I can't imagine (or don't want to imagine) the stuff you need to know to set up a network between 2 computers, and share files and printers. Not to mention first having to make Linux recognize my hardware...
Man, you just scared another potential Windows-To-Linux convert. Haven't scared me AWAY from Linux, but have seriously lowered my eagerness to try it out. Anyway, I hope this feedback will make its way into at least 1 person out there who will design a UI that makes learning Linux on-the-fly easier. Maybe you could have an option on bootup: "Standard" (noob) UI or "Advanced" (linux geek) UI?
This is the SINGLE MOST IMPORTANT THING WE NEED TO FIX ABOUT LINUX if we ever want non-techies to see the light. And I've heard they can be found in businesses too... doing real work..!
I understand and don't want to imply every computer system should be accessible by everybody through the same interface.
But there is no reason why command line and graphical interface should combat.
Anyway, I don't think there'll ever be a general purpose Unix system without command line. Look at OS X, the most desktop minded of all unixes. Their flavour might not appeal to you due to the nature of your work, but it still is capable of most things you might want to do and - if you're into BSD - could be tweaked by someone like you to do most anything. All this while retaining the ability to do general purpose things through a graphical interface.
I think, therefore I am...I think.
The article and my comment are not aimed at you. You're good with Linux - good for you. The article and comment were aimed at those Linux advocates who want everyone to switch to Linux, when 90% of desktop users won't be able to use it out of the box, as is (usually) the case with Windows. We all know Linux can be more powerful. But when all you want to do is type up an invoice, hours in front of emacs editing conf files is highly undesirable.
Do you have any idea how big-headed this makes you appear? Please, elighten me with your higher computing ability! Please - you're not paying attention. You might enjoy doing this, but other have interests outside of PCs, and want a system which can be set up quickly and easily, and which will just plain work. Most Linux distros do not.
sig:- (wit >= sarcasm)
I work from home, but otherwise you have a good point, and I think my wife and my raging headache would agree with you :-) In fact, I suspect my buying the PC in the first place was the start of it all...lol
sig:- (wit >= sarcasm)
If I had mod points, I wouldn't be able to give one to you anyway, because I've already posted in this story - never-the-less - insightful.
So he took option 2/ DIY, in a nice following of the tradition of open source...If you are not happy with how things are, DIY.
btw, thanx for the link, I will surely get his package directly next time ! Cheers 8)
It takes 40+ muscles to frown, but only four to extend your arm and bitchslap the motherfucker
Right.
I can read manpages (preferably in BSD, as they're actually correct). I can use vi, and I even prefer it over pico, nano or whatever other 'recommended' editor CD-installs give you. I've run servers for games, mail, ftp, etc... but I have yet to get a linux distro to be desktop-ready. Even now that I'm actively trying to switch, documentation holes and hardware nightmares are making it nearly impossible, so I'll probably only end up using Cygwin.
this article definately outlines the main problems with ui design and open source software. If you can avoid having to edit text files by hand and instead can do it in a gui that be great. On the part of turning off the auto-broadcast in cups, perhaps if the user specifies they want a print server or they go to share their printer then it should ask them that they need to enable that feature, choosing yes or no. Then the users who don't share their printers are just fine without having their printer exposed.
My Gawd WTF...
We still have crap like Kroupware, Kallery, Xouvert, and a GUI system that still requires you to configure mouse buttons and specs through an awful text file (as someone else succinctly put it, it's like answering essay questions).
I have to agree with most of that, unfortunately.
We HAVE to sort the simple things out soon or we will be laughed out of town. Try getting my gnome to recognise a UK keyboard and then tell me linux is ready for the bigtime. Christ!
I do run linux exclusively but I'm starting to think seriously about freeBSD or something - is there anything? -else
(home directory load = 6 seconds on my 1 meg duron - I've heard that on a cray, it's been done in 1.4 seconds, but I think maybe thats a myth)
sig under development
I just did. Even though I despise the thing.
Linux user since early January 1992.
Please, never give anyone advice on design. The idea is to come up with a specific, workable answer to a very vague question.
And I think you're missing the point of software. Software exists to make your lump of hardware useful for something other than a doorstop. In order to do that, it has to be useable by the people who want to use it. And unless you're writing a compiler, it's completely unreasonable to expect the majority, or even a significant minority, of your users to have software development skills.
When those users complain about the crappy interface to your software, they are giving you feedback about your software. That's an important part of the development process. It may not be as l33t as writing C, but it's still part of software development. These people do not have the skills to fix the problems themselves. Nor is it in any way reasonable to expect them to aquire them in order to use your software.
Furthermore, even if they do have the skills, it's still pretty unrealistic to expect them to fix the problem. Even the most prolific developer cannot possibly fix single-handed every bug or annoyance they encounter in every piece of software they ever use. The ramp up times on new codebases are just too high.
Non-square independently-skinned window, without the regular XP title bar and buttons. What they did was add the functionality so when the user hovered their mouse where the bar should be, it appears.
And how does the user know to hover their mouse where the bar should be? Same thing for 'flat' buttons. They're everywhere now, but how does a new user know that by putting the mouse cursor over the button that it will appear raised or in a different color? Another problem, open Windows explorer. You have a row of data; file name, size, type, date. Why can you only click on the file name to open the file? Here's a non computer example; you should never have to put PUSH or PULL on a door.
It is amazing what you can accomplish if you do not care who gets the credit. -- Harry Truman
So the problem is that developers are developing things for people like themselves rather than for ordinary people. This is a very reasonable critique of open source software, but it seems a little hollow coming from the man (I'm talking about esr, not bilestoad) who has long proclaimed that the reason open source is better is that the software comes from developers writing software to "scratch their own itch," rather than based on what marketing wants (e.g., rather than what has been researched to be appealing to the average, non-developer user). Guess he's now finding out what the rest of the world already knew-- that this methodolgy is a double-edged sword.
I'd rather be lucky than good.
Unless the point of this whole OSS thing isn't to have the general public use it, of course.
And they also give you a way to turn that dumb rounded window off, permanently. Which is the first thing I do whenever I have to use MMP on a new computer.
[rant on] I can't figure out why media players in general have to look like some weirdo piece of stereo equipment from outer-space. They can design any UI they want, why do they always copy a CD player? Don't they know that CD players work the way they do because pushbuttons cost 3 cents apiece times 500,000 units? There's no reason to overload one button for both play and pause, for example, they're completely opposite functions! [rant off]
I agree with him that the latest generation open source and project developers can be quite ignorant on design issues. Maybe thats due to the fact a typical todays developers 1st PC @home is a P4 or AMD screaming fast iron. These new programmers actually miss the resource limiting contstraints of a Atari St, Amiga 3000, Commodore 64 or even a 8088 Intel PC with only 640 kbyte RAM. For sake! Even Bill Gates once said the 640 kb RAM limit would never be exeeded.
Nowadays besides RAM abusing also CPU cycles are really abused in god forbidden ways and methods. For instance when i see the latest offerings from RedHat and fedora for public, my stomach turns all upset. For e.g. pcmcia and hotplug to work, the new youngsters which call themselves system programmers, abuse inside a startup script the kudzu program several times in a row. Next if one counts inside /etc/rc.d/init.d directory the number of "sleep 1" calls, one finally understands why that P4 3.0 GHz hotrod iron is still slower at booting up as my old pentium P75 with RedHat 4.2 :
[jackson:stock]:(/etc/rc.d/init.d)$ grep sleep * | wc -l
31
[jackson:stock]:(/etc/rc.d/init.d)$
So booting might at worst take 30 seconds extra due to sleep commands. My solution would be to replace _all_ sleep() shell scripting commands with usleep() and put 2 or 3 zeros behind the number of seconds . so one would replace :
sleep 1 ==> usleep 1000
1 second ===> 1 msec
Your PeeCee might boot a 1000x times faster after this!!! Geeez!!! a new tuning package for Linux is born:
BOOT YOUR LUNIX PeeCee 1000x TIMES FASTER!! [Click Here] for VISA,MAstercard.
Robert
Debian does have DVD burning capability. Look at K3B from the KDE project. It's available in Debian Sid and I believe Testing, and it does burn DVDs. It also helps to run kernel 2.6, but it works in 2.4 too.
As for CUPS, Debian's defeult setup generally lets me print to a shared CUPS printer somewhere on my network. Haven't had all of ESR's problems (lately, anyway).
You make an interesting point. Interesting, but completely wrong. I used to think that way myself, until I realized that anyone living in a technological society depends on so many different complicated things that no one person could possibly learn how they all work at a detailed enough level to fix them. You are constrained by your free time (and to a lesser extent, your native intelligence) and must pick and choose what you want to learn about. Your daily life absolutely depends on a lot more things than you have time to learn how to fix. It's reasonable to expect everyone who uses a car to know how to change a tire. It's reasonable to expect everyone who uses a computer to know how to install software and save files. It's reasonable to expect everyone who watches television to know how to hook an antenna, cable box, or VCR to a TV. It's reasonable to expect everyone who defecates to know how to plunge a clogged toilet. It's reasonable to expect everyone who uses heating and air conditioning to know how to light a pilot light. And so on. But nobody has enough time and resources to learn how to rebuild a carburator, write software (which is much, much harder than just coding, or alter software someone else has written, which is harder still), replace the power converter in the TV when a surge fries it, install a washing machine, AND replace a faulty thermostat. If it were even remotely possible for most people to learn the details of more than one or two things, repairpersons wouldn't be able to charge $50 an hour. I'm a pretty smart guy, and I don't know how to do most of those things. I'm not even sure I spelled carburator right. I know a few, but I had to make choices. And I guarantee you can't do all of them either. You made choices too.
Everyone thinks that everyone else should have made the same choices they did--that's why they made those choiced to begin with. I'm a mathematician. I think that everyone should learn enough about symbolic logic and statistics to be able to tell when they're being misled. I'm also a classically trained musician. I think that everyone should learn enough about music theory to know the difference between N'Sync and the Beatles or Howard Shore and Gustav Holst. But not everyone does. And they can't, because they're busy knowing how to fix my car when it breaks, and keep the utilities in my home working, and teach a room full of five-year-olds how to read, and operate the machinery that built everything I touch, and anesthetise people without killing them. You just have to live with the fact that it's not practical for every computer user to be a software engineer, even the ones who have learned enough compsci to know the difference between Windows and Linux. I have as much right to complain about flaws in publicly distributed software as I do about malfunctions in any of the other things my daily life depends on.
There is, of course, a difference between somebody writing a piece of niche software to solve a problem and sharing it with other people with the same problem and an organized team of people writing a basic utility and expecting it to become The Standard Way to do things. But it's the latter we're talking about. Hell, the name of the software ESR used as an example is called the Common Unix Printing System. Its very name determines which type it is. It's just not something you can limit to experts.
While it is true that many or even most OSS projects need help with the UI, choosing CUPS (which is almost certainly the worst UI in an OSS product that is a major part of a distro) to pick on makes OSS look orders of magnitude worse than it really it. But, ESR is right, usability issues in lots of OSS products is probably the best place to focus effort. CUPS should be fixed first. It's awful and one of the first things new Linux users are bludgeoned with.
Very well said. I applaud your eloquence and verbosity.
If you have a complex set of backup specs, you can save the burn project, then it's just a double-click to load it instead of the d-n-d.
No Nero, no MS-Windows, no viruses, no spyware, no cost, no funny licensing, no coasters. Have a nice day.
Got time? Spend some of it coding or testing
...no mystery instabilities or DLL hell, and I can (do) play 3D interactive games at the same time. Stock standard Mandrake Linux 9.2 kernel and k3b packages.
Got time? Spend some of it coding or testing
Although the trivia is more likely to be "de-install Norton" or "back out Service Pack 6" than something so focussed and easy to fix.
Got time? Spend some of it coding or testing
The percentage may be about to get a lot higher, with the Color LaserJet 3500N (link is to my review), which for some reason is unavailable at retail in the non-networked version.
I bought the network version with JetDirect and am extremely happy with it. Of course part of the reason is that my home network is MacOS X-based, so setup is dead easy.
D
The real reason the registry is an example of bad design is because it is stored entirely in one file. Hence, it can be wiped out by an even mildly idiotic user manoevre. GNOME, and probably KDE, have things similar to the registry, but done right (subdirectories and XML).
I would welcome some uniformity in the configuration arena. But I don't think that's going to happen, unless Linux developers decide to use one programming language for everything, and the chances of that happening are less than zero.
You look beautiful! Incidentally, my favourite artist is Picasso.
Lord, you can take now -- I've heard it all! A UNIX/Linux guru has finally crashed into the frustrating wall of configuration that haunts many of us. The saddest thing is that most of Linux software is written by CS and EE grads who obviously have never had exposure to user interface design -- and this is not new techology!
I can remember from the late 1980s that the UNIX vendors were getting together to solve this problem. Not! Still broke.
IMHO, the only reason that Linux has the [relatively small] desktop penetration it is now is that RH and SUSE have successfully (to varying degrees) conquered the installation problems for most commodity PCs.
If Linux is to get onto the desktop en masse, it needs a lot of work. First, if you are working on Linux applications, give ESRs "The Art of UNIX Programming" a read. While you will have to wade through the Zen , it has some really good principles for software design in general. ESR's mention of discoverability is only one of a well thought out list of rules discussed thoroughly in the book.
Next, Linux needs competitive applications in DTP, engineering - well pretty much everything - that is NOT written for sysadmins and hackers. It must be written for the "Aunt Tillie" types, because they don't care to "get their hands dirty." They have a job to do, and they don't want anything in the way. If it installs easily, relatively quickly, and "works as advertised," it will be welcomed with open arms -- and people will pay for it.
Speaking of price, I am going to mention the unspeakable: profits. Whether anyone likes it or not, nothing in life is free. It may not cost YOU money, but someone had to take their time and money to produce it. If Linux is to be the success we all hope for, it MUST draw investment capital, and it must return a profit to the investors. This is not a "dirty" concept. Please refer to the works of Ayn Rand, Leonard Peikoff, Henry Hazlett, et al for the reasons.
Think about what is happening, and has been happening for years: While Linux is often touted as "free", most of us paid for a distribution. Not only that, we paid for a machine to run it on, took time out of our day to work on it, put up with installation frustration, mostly half-baked applications, etc. Few are making money from it, and some of them are trying to "lock you in" -- you know, like MS does! Starting to ring a bell?!
An old adage in computers still holds true: Once you have committed to an operating system, you will be pretty much locked in, because, over time, you invest a lot of money and knowledge in it. IBM used this with their mainframes for years, and their customers got benefits from it: compatible platforms, languages, & software development interfaces. But the cost was portability (and price). MS had done the same thing, and Linux will have to give them compelling reasons to move to "open source."
As ESR says in his rant, MS may be shooting themselves in the foot, but Linux is cutting off both legs below the knees.
Maybe part of the group that Linus works for now should be devoted to THIS issue for awhile instead of scaling issues in the server space. It is unglamorous tedium to fix all this stuff, but it must be done if Linux is finally going to make significant penetration into the desktop space.
Oh, and get used to the idea of paying: IBM is not "supporting Linux" out of a sense of community duty...nor should they! If you want to write stuff for free, fine. You can be certain IBM has found a way to profit from it -- and may just save it in the process.
Just curious: are you using a text-mode browser to read slashdot?
If not, why not? And what does that tell you about "pandering" to people who don't want to use the shell?
Is it just me or is documentation not as good as it used to be? One of the nice features of Linux used to be the large amount of documentation that was available. Now, I have noticed that documentation seems rather sparse. A lot of what I read is rather outdated. I stumbled onto this problem trying to get wireless to work.
Back when I was trying to get a zip drive to work the HOWTO was most helpful to me but look at it now. It is outdated and refers to some stuff that is not even used now.
it's hypocritical to accuse someone of using the same practices in which you engage. it's not hypocritical to have a model, and accuse others of attempting to use that same model in a manner that is incompatible with the rest of their system (when it works well in your system).
Xfce: Lighter than some, heavier than others. Just right.
Hey, that sounds racist. We should all be supportive of the plight of baboon-americans.
There's no reason to overload one button for both play and pause, for example, they're completely opposite functions! [rant off]
No, they're complementary functions, and there's an important reason for them to share the same button.
"Play" and "Pause" are not both valid at the same time. Only one can work at a certain moment. To use 2 buttons would waste space, and more importantly, force a mouse-user to make precise, rapid short-range movements when she wants to play just a few deciseconds of media.
By having a single Play/Pause button, the user is empowered to toggle in/out of the playing state merely by clicking the mouse, without needing to move it around. Anyone needing split-second timing will value this. (or will use keyboard accelerators)
Yes, they are complementary. But this thread is about UI standards, and (at least under Windows) pushbuttons are not used to indicate state. They are used to invoke immediate commands.
I think you have a good argument for the need for a control to switch rapidly between play and pause, but (IMHO) a standard pushbutton isn't the appropriate thing to do it. A control to toggle state should look different than the ones that invoke actions like stop, seek, record, etc.
While we're at it, why the need for a distinction between pause and stop at all? Yes, I know that they work differently, but is it really that common that I want the semantics of stop instead of pause? Or is this just something blindly carried over from the mechanical age (where the mechanism really force the need for the distinction)?
Admittedly not as pretty as the MS-Windows software, but you could use it with a frontend like acidrip, kmencoder or Gmencoder. They're all fairly portable (AcidRip is even written in PERL), so you could use them on Windows with a great deal less effort than using Nero on Linux.
Got time? Spend some of it coding or testing
Linux can have badly-written drivers running built-down-to-a-price hardware, no questions there, that's why my NForce boards are now all running ATI video cards.
What Linux doesn't have is the mystery indistinguishable semi-sub-versions of DLLs, each with a special something that one or another app requires, but in turn missing or mis-implementing something that the other copies of itself do right. We have a real, extensible version numbering system so a program can request a specific version of a library, or the latest of a specific version range with arbitrary degrees of specificity. It also has much better partitioning between libraries. The problems you have with NForce will be due to NVidia point-blank refusing to Open their drivers, not weird interactions between libraries.
ATI have opened a large part of their drivers, XGI will open at least the 2D parts and hopefully also the 3D parts of their drivers. Spot the odd manufacturer out.
Got time? Spend some of it coding or testing
Well, that's the key, isn't it? To me, this implies that your pattern of usage is pretty narrow, compared with the broad range of things you CAN do (if you want to). I don't mean this to sound belittling - it just implies that your pattern of usage fits neatly into the "GUI Desktop computer only" sort of paradigm where Mac OSX seems to be specialized.
Aside from the straightforward matter of license fees and expense for the comparatively specialized hardware (I think I can safely say that for the cost of a Mac OSX computer and OS license, I could build 2 equivalent Linux computers), there's the matter of flexibility.
Linux runs on a much broader range of hardware than OSX. Linux can be installed without a GUI (leaving ability to run on slower hardware and/or leaving more drive space and RAM for other applications) - as someone else already mentioned, OSX without a GUI essentially just leaves a variant of FreeBSD (not a BAD thing, but why pay the premium for OSX if that's what you want?). Linux also seems to run a broader range of legally-free ("libre") software than OSX (OpenOffice, for example - I gather the OSX port is several versions behind, though I suspect if Apple ever decides it wants to move away from MS Office dependency enough to devote some developer time to the issue, OpenOffice for OSX would be brought current pretty quickly)...
Of course, the "freedom" aspect of both Linux and *BSD is important to a lot of us as well.
None of this is particularly important to a 'typical' single-desktop-computer user, which is to say, most users (and in fact for those people, I really do tend to recommend OSX over Linux for their own use), but I for one use my computers as desktops AND a lot of additional things where OSX just isn't optimal.
Hacker Public Radio is our Friend
Funny how Evil Empires's boxes just worky-worky.
I like my Linux experience far away on a web server someone else maintains. Those Linux boxes in the closet are good for spare parts on the rare occasion Evil Empire box no worky worky.
HenryJamesFeltus.com
joe-schmoe, ant tillie, Joe Sixpack....
There is need for one more pattern: "Eric-the-Troll, Half-Brained"
A kind of a person who
1.a) Thinks computer is a dumb piece of shift, so he won't spend time learning its ways
1.b) Thinks that the computer is genious and any software is RealTime-aware so there is no excuse if there is no personal bar.
2.a) Don't want tremote computer accept it's printing jobs right out of the box, with no single second spent for setup.
2.b) Would be angry after that remote box will also accepts jobs from all the rest PCs in the building.
3.a) Will be angry about issues in alpha-verions like Fedora
3.b) Will kill anyone who will tell them to use some stable release that is 2-days obsolete, and if You will dare to say that some bleeding-edge hald-constucted software kit will be to complex to their superminds
4.a) will not be ever able to understand the inners of CUPS and compile it from sources and install without 'make'
4.b) when any trouble , they dare to know the work 'CUPS' and will annoy CUPS developersm not distro-maker
Thouse hypocriths are not to be dealt with hackers.
CUPS team was to slap Eric-the-troll with a bit stick and through him to the RedHat support team.
If You are user - do not use alpha-versions.
If You are user - you must noi know the word 'Linux' at all.
You must know that You're runnoing RedHat Fedora, or SuSE, or Knoppix, or Alt or whatever - and forward Yourq questions to those you paid for distro.
If Ypu're hacker, playing with alpha toys and is proud that you know the word 'CUPS' and where there developers can be found - then be hacker and be humble and polite and reasonable as a hacker.
Bu when You're riding to different horses at itime - You will (and must!) be tored apart by them.
"personal bar" -> "true time scale progress bar"
Every printer I have set up on an XP box has involved downloading the current driver from teh internet site of the printer manufacturer, thus far.
I have old printers, but so does my Mum.
SuSE has been easier.
I'm the beta tester if I'm using the CVS or a pretest. If I'm using a version that's not only released but in a distribution, it's no longer beta and I shouldn't have to be a beta tester. And, the point of OSS is not that I personally am a beta tester, but that many people like me, with access to the source are beta testers.
There are reasons why democracy does not work nearly as well as capitalism.
-- David D. Friedman
...so long ago I'd forgotten it was necessary.
Thanks for the link. I'm not much into payback, but I'm glad to see the copier's authors excising protection features as well as the descrambler. It puts across the message that they have been playing nicely despite being attacked, but that they will not make a doormat of themselves.
I'm wondering whether this might also have an impact.
Got time? Spend some of it coding or testing
pushbuttons are not used to indicate state
Nope. Pushbuttons can tell a bit of state as part of typical GUI standards. In fact, looking at any control tells you some state: they all indicate whether or not they are presently inoperative by "greying out". In this case, the state information presented is the same, but rather than turning grey, the non-usable button vanishes entirely. (And since at the same instant an additional button becomes usable, it shows up in the same place, acting like a toggle)
They are used to invoke immediate commands.
In this case, "Start Playback" is one command you can invoke, and "Pause Playback" the other. The standard isn't broken in the pedantic sense.
However it is true that conceptually, controls to handle an ongoing operation are rather different from what most GUI widgets do (either set configuration for later, or invoke immediate operations on some data). That's the excuse given by designers of media player applications use to explain why they always break the platform's interface standards (whether the author is Micrsoft, Apple, AOL, or Real, they're all guilty).
Prehaps it would be better if the standard-authors themselves had separate guidance for this type of situation... but that leads to other problems.
While we're at it, why the need for a distinction between pause and stop at all?
Yes, the whole existence of a "Stop" button is a throwback to hardware players. For a software player (including CD and DVD units, which are digital), it'd be better if "stop" was just replaced with "rewind", which is closer conceptually to what happens.
Consider the car. Early cars... well, you had to be a mechanic to drive them. Even in the '60s and '70s, you needed a certain amount of skill - car won't start? Is it cold outside? Did you pump the gas pedal (but not too much)? Did you have the choke engaged? Then you have cars these days. Car won't start? WTF? That never happens...
Just as most people don't want to "drive cars", they want to go somewhere, most computer users don't want to "use your program", they want to create an invoice (or whatever). Personally, I think that a lot of the problems are ego-driven. Its hard for most developers to strive to reach invisibility. That's why we have so many garish products - like anything using skins - that strive to be noticed.
Makes me glad I'm in the enterprise software business, where UI-invisibiltiy is a Good Thing (and, frankly, where the usability bar is often really low).
You're special forces then? That's great! I just love your olympics!
you can't expect people to participate if you treat them like they don't matter if they're new. These problems are old and are just now being addressed.