Designing Linux for the Masses
Kelly McNeill sent in a pointer to this article by Todd Burgess. Here's a quote from it: "The concept of Linux for the Masses is an honorable goal but one that must not be taken too lightly. The purpose of this article is to point out several of the current limitations in Linux and what should be done to create a usable system." You might want to hit the links at the bottom of the article and check out some of Todd's earlier writing on the subject of Linux usability. You may not agree with him, but his opinions are always backed by sound thinking and are well worth reading.
First of all, the author is exactly correct if Linux is to penetrate the desktop to any degree. If "World Domination" is the goal then Linux has to get a lot better in terms of usability. Like it or not.
So why not have two distros?(or two types of the same distro) Something like a "Standard" and a "Professional" version or make that an option during installation. One that restricts your choices, does everything for you, is consistent etc. all the HCI issues, and the other for people who wanna do it their own way and know what they are doing or want to learn. Possibly even include a way to "upgrade" from clueless to hacker for those folks who want to learn more.
I don't see why it should be impossible to have a powerful, flexible OS that is also easy to use for those that need help.
Windows is no better-this whole start menu is awful because you have to deal with 2 different directory representations instead of one
I think one thing thats often overlooked with the Macintosh is that the file system is layed-out so that the user can easily interact with the structure. The MacOS is the the only GUI where you launch programs by actually acting on the excutable file. (The Apple menu is generally only used for small programs such as the Calculator.)
Every other GUI requires you to interact with some shortcut or alias or another alternative representation of your file structure. This adds confusion and just makes the whole GUI that much more fragile.
The MacOS works because the directory structure was layed-out so that users can actually comprehend what is going on. "Netscape Navigator" is in your "Netscape" folder at the root of the hard drive, not in "opt/netscape/communicator/bin" or in "Program Files\Netscape\Program\bin" or whereever. Your hardware drivers are in the "System Folder:Extensions" folder, not in "WINNT\System32\Drivers" and so on. You can actually drag a driver out of the Extensions folder and not break anything.
The UNIX and Windows file systems were designed with system efficency in mind and *not* user efficiency. All of the gee-whiz GUI stuff can't cover this up.
Another key feature in making this all work is the Desktop Database -- Hard coded file paths are NEVER used in the MacOS. For example, A user can actually rename their "Netscape" folder to "My Web Browser", and nothing is going to break. Likewise they can copy the Netscape folder to an entirely different hard drive, and all will still work. (This system applies to Alias links also, so that if the user is using the Apple Menu or another representation, moving a folder won't break the alias.)
The UNIX file system is so established in Linux that it will probably never go away. Still, I'd like to see some of these file system features adapted in a Linux GUI. This stuff is something Microsoft never figured out, and it'd be nice if Linux could beat them to the punch.
--
Business. Numbers. Money. People. Computer World.
They bought it. They need to know, if nothing else, whether or not there is infact a pound of horse manure in their case and nothing else.
It's the same as going into a car lot without a clue and without someone with you that you can trust to have a clue for you.
Although, for genuinely pnp busses, it's not realy necessary for the user to know what card they have. The card knows what it is and can tell the BIOS.
The windows system, like the Mac system, is horrible. Having a seperate directory structure for programs and data is the way to go.
It should be noted that modern versions of Windows and MacOS are set up so that the file dialog defaults to a "Documents" folder. (Hard Drive:Documents on the Mac, and \WINNT\Profiles\$USERNAME\Personal on WinNT)
--
Business. Numbers. Money. People. Computer World.
Oh yeah, that's right I forgot...the mentally handicapped do not deserve the same benefits that the rest of us have. If Something is so easy to use that someone with Downs can use it must be bad.
Grow up and get a life. If Win 98 is really that user friendly that it can be used to help the mentally handicapped integrate into the mainstream of society, I'll keep buying it ( I personally don't think it's that friendly). Just because the person in your particular example uses it to "peek in on adult sites" doesn't mean its bad. He/she could just as easily use it to do online banking or shopping or actually do some work. They could then become productive members of society and able to live independantly. All that sounds fine to me.
Easy to use does not mean poor efficiency, no power of unstable - they are mutually exclusive. Linux should be easy for you or I or anyone with Downs to use. It should also be complicated so you or I can still use the command line/hex editor to hack the system or files. It can be both ways.
I suppose the blind shouldn't use Linux because they can't see the screen or the deaf because they can't hear the warning beeps? If Linux is only for the elite, able-bodied, non-handicapped among us, I hope it dies a painfull death soon. I don't want to have anything to do with that kind of elitism.
Maybe if you ever graduate and start living in the real world you realize this- MR. Pingo...
Never by hatred has hatred been appeased, only by kindness - the Buddha
Todd Burgess is advocating a philosophy that has been dominant in the mainstrem OS market (ie MS) for a long time. But he outlines a system that has been used by MS products. Large, bloated and inefficient products that have a very pretty consistent outer-shell, but do not work on the inside.
The Windows interface was designed to be used by everyday people doing every day things. Yes, the internals are not very good but that is of no concern to the user nor should users be asked to care.
If the internals were not as equally important to the OS, the need for linux would have never arisen. But the computing environment did nuture and raise linux as a reaction to ideals like these.
Well, this philosophy (pure user-centered design) may be effective for HTML, it has already been proven false in the design of operating Systems.
"common people."? Define common people and I can come up with counter-examples. "Common people" is a convenient tool for lumping people together and sticking a label on them. A prefered favorite of marketing and dictators everywere.
"However, for the average user, even intelligent ones, learning to use Linux requires extensive reading, which most people simply don't have time for."
I guess this is why libraries are closing emasse and newspapers are going out of business. Guess the book publishing industry is next. Oh well we don't need them we have the "boob tube" to keep us happy and thought free.
If I could program this is what I'd love to create, maybe someone else will grab the idea and do it for me:
Win95esque look except for a few things, put a Dos/Linux like command line across the bottom of the screen instead of that bloody taskbar, or on top of the taskbar, or something. And not that stupid address thing that you can put down there in win98. I mean a REAL CLI. Link the CLI directly to the GUI and make the CLI smarter, so it I type 'open opera' it will open opera in the GUI area, I can then poke around on Opera with my mouse, or I can type 'Open Quake2' and then Alt-tab switch, or mouse switch between them, or run the at half size next to each other. Equally, if I type LS or Dir in the CLI it will pop up a window that lists the contents of the current directory, if I type cd \usr\fred it will switch to that directory and display the contents.
Of course, I want it to be able to run every app I can think of. I want to be able to use exclusively the mouse, or exclusively the KB without losing any functionality. And I want it to be easy to install and configure, easy to add hardware and software, and I want it to be stable. If an error occurs I want it to tell me exactly what the problem is, not just 'FileX doesn't work'.
Is this too much to ask?!!? If anyone knows of an OS/GUI that does that already, or wants to create one and send it to me let me know at
sleffer@hotmail.com
or
sleffer@home.com
Valis
Check out JoshJitsu.info for Brazilian Ji
Just like in the real world, evolution is not necessarily an ideal solution. When evolution runs amok, with a limited pool of inputs, you can end up with some very odd species popping up.
And like it or not, the genepool that Linux operates with, is a somewhat limited one. And if you let the evolutionary processes work, I suppose that eventually, the system will grow, gradually. But I think it likely that it will take a long time.
"Politicians are interested in people. Not that this is always a virtue. Fleas are interested in dogs." P.J. O'Rourke
Actually, I think the techy would be more likely to design a useful interface for themselves or a random novice. Just because you are a programmer or a tech, that doesn't automagically make you a 'non-user'. The techie aware of the technology involved, likely aware of what can be done and is aware of what they would like to do.
They're aware of what they want and why some particular interface may or may not achieve that. An interface they find effective can be effective for anyone else that overlaps their use of the interface sufficiently.
HP has been using RPN on their calculators for thirty years. Do you really think they wouldn't support it on their latest and greatest?
-Doug (RPN fan for 18 years)
Oh, but it is technical, too. A good UI specialist has to understand what's going on underneath all that doubleclicky on the thingamabob in order to give the user a viable interface without causing the guys who have to maintain the stuff an ulcer. Sorry, but you cannot totally remove the design process from the hardware.
Furthermore, making the UI Just Like Winders is not only stupid, but liable to get you sued. A given UI doesn't have to be Just Like anything. It does have to be intuitive. The singleclicky buttons on the Gnome panel make MORE sense, IMHO, than the doubleclicky icons up the side. (They should probably give a bit more feedback, tho.... such as greying out Netscape when it's active... that or having the thing do a netscape -remote might be simpler approach... but I digress.)
We're doing this from scratch, folks, and as long as we do it in a manner that makes sense, we can do it however we want. Maybe keeping fvwm95 around for the Luddites is a good idea.... or maybe we can write something SO good, we don't NEED to think about M$ anymore! Let's try, shall we?
--
warp eight bot
"Tell me what you mean by that."
-- Dr. Albert Badre, Georgia Tech
(my Human Factors prof)
Yeah, the floppy "shadow" was originally a feature back in the days when the system had 1 400K floppy disk and no hard drive. The fact that they system could remember previously mounted floppies made it easier to use multiple programs and avoided "COMMAND.COM not found" errors and the like.
What was a big mistake was to extend this metaphor to things like CD-ROM drives and Zip disks. The MacOS disables the eject button on the front of the drive, forcing you to use the trash can. That's unintitive, and considering all the UI geniuses at Apple, fairly retarded also.
It has been the most cited "Bad Design Item" for what, 12 years?, but no fix yet.
(I should note that Apple has fixed this if you buy a two button mouse. You now can right-click+Eject a removable volume.)
--
Business. Numbers. Money. People. Computer World.
Hmmm Well seeing as I program but from the authors view (one who wrote the article, not the one im doing a reply on) my opinion is discounted then I have one thing to say to him.
"Bollocks."
Thats the biggest crock of shite ive ever heard.
I had to use TDS for transputer code for editing and downloading. Its a bloody nightmare! I spent a large amount of time learning its quirks. So to say to discount us as wanting input on usability is bleedin ridiculous. I WANT TO PROGRAM! NOT F**K ABOUT WITH THE SYSTEM ALL DAY! TIME IS MONEY!
I deal with mobile telecommunications, which doesnt automatically make me familiar with every OS under the Sun funnily enough (excuse the pun). Theres plenty of stuff I cant use. Plenty of stuff I can use. But also plenty of stuff I can see what would make a good improvement.
ah I feel better now.
Brad
Other Group: Just sit tight while we build this escalator here. If you're impatient you can join in.
Just imagine going up a cliff on a ladder? What a limited GUI-ish notion. Why bother which each of hundreds of rungs (even easy rungs) when you can build better?
Isn't this also the 'dumb-down' argument? I'm tired of hearing that over and over again.
Two points on this:
1. Automobiles are not all Fords. They share basic driving conventions (steering wheel, brake, etc) but there is a wide range of performance (e.g Dump trucks and Yugos). This is o.k., we don't need to make them all the same, you learn what you need to know. Fear of learning is a by-product and/or a promotion of dumb-downing.
2. Choice is good. Part of Todd's argument involves taking away choice from the user and that is the same old Corporate IT directive. Instead of training users to customize for efficency or comfort, the corporate idea of useability, like Todd's, involves conformity and compromise to the lowest average common denominator. Personally, I think this is a function of the non-technical suits that make corporate choices into mandates that have become the 'common corporate wisdom' you read about in IT mags.
My suggestion would be to instead of dumbing-down, make easy to understand documentation for all users so that they can easily learn. In Linux, the HOW-TOs and the MINIs begin to do this but some of them are still too high level. The final result/release of the LDP may resolve most of this as well. But the final note on this is that it is better to empower (pardon the cliches...:-) than to undermine with either dumbed-downed software or with dependency on MIS/IT wizards to magically solve techno problems.
"And I won't even get into the uselessness of having source code available to the average user (I'm not disparaging the concept, or the obvious benefits - just stating that the average user isn't, and never will be able to take advantage of
it personally)."
There's no such thing as an average user. Two saying "never" is like playing with a loaded gun. If your not careful you can shoot youself in the foot. Do you know something about the future that the rest of us doesn't? How do you know this?
What makes the Mac and Windows UI's so touted is that you can talk about each of them as consistent, monolithic UI's. That's because they established standard behavior for everything and stuck to it. It's not a bad idea. The problem of multiple, dissimilar interfaces doesn't even exist on Mac or Windows, but it's a pain in Linux. Behavior depends on whether I'm using a GTK app or a TK app or an X app. (I HATE X dropdown listboxes, BTW.) It seems odd that a culture so enamored of open standards should put up with so many emissible, "proprietary" standards for UI.
I do not think we should scrap innovation, however -- rather, I think the competing/coexisting UI's (GTK, X, TK) need to conform to a consistent but evolving standard of UI behavior, and let the user customize with toolkit-specific behavior as desired. Good UI ideas would then get worked into newer versions of the standard, and everyone else would implement them, too. Now that's innovation. phil
Did you want me to give you some even cooler screenshots?
I have a paint program too.
People think the Mac is logical and easy to use because Apple's ad campaigns say it is. Please.
The Win95 shell isn't great, but it's certainly a step above Win3.1. Right-click menus are a good thing. A desktop you can put things on is a good thing. And the taskbar is nice. People complain about "Shutdown" being on the Start menu, but that's just a flaw in the choice of names - if they'd called it the "Main" menu or something, there wouldn't be a problem.
--
Unless you're the sysadmin, you've got no damn business futzing around in /usr. The filesystem is partitioned for a reason.
What you describe is a workaround for a broken netscape-communicator application. What if you accidentially delete that icon? You might be able to reconstruct it, but would an average user and/or desktop technician?
An intuitive system would do exactly what your script does. For example, Windows' IEXPLORE.EXE does exactly what your Gnome icon does, without the shell voodoo.
--
Business. Numbers. Money. People. Computer World.
Even on Win/Mac user directories are useful, even if you are the only one using the machine. It nicely keeps your own data from the rest of the system. You also don't have to go looking through 25G of disk to seek things that are not system files.
Hmm, you might be right.
I can see a couple instances where the explicit switching between levels might be useful:
1) some advanced functions, if available at all, are confusing to newbies. Virtual screens, for example. I dunno, I could be wrong though.
2) Corporate MIS might want to lock down workstations so that they're only "newbie-grade". This is, admittedly, already possible -- but right now it's a pain in the butt.
Harrumph. Clearly I need to think about this more.
In the free/open system that Linux uses, what most uses need will become quickly apparent. When Gnome get 5000 e-mails saying they need this or that, I would assume that's the direction the team would move in. If they don't it's very easy for someone else to pick up the slack. Either way it won't change for you since you don't have to change your system a bit if you don't want. Keep the choice and the Bazaar and everything else should fall into place (it just might take a while, it's not like there are screaming stockholders hoping for immediate return, oh wait....)
+&x
>Computers and operating systems are tools, >people.Accountants don't use operating systems
And the tools don't work. Take Netscape, please. In RH52, the browser works fine, the email client doesn't accept input until you call up the address book. This is intuitive? No, it's broken.
When you close it and go back to the browser, you find the scroll bars don't work anymore, which doesn't matter, because it quickly crashes anyway.
Ever use the Applix email client? Blaaaah. How about the StarOffice media key fiasco? Or Caldera22 not putting down a boot track, or not being able to write a xserverrc file.
These things kill you, and failure to pay attention to details this killed MSs competitors, not wicked plots imagined by the inJustice Dept.
I thick you've got it backwards. Most of the stuff I see here the CLI pepole are reffering to GUI users as idiots and lusers. That in essence is what tags CLI proponents as "elitist".
"The final mystery is oneself" Oscar Wilde
Microsoft Linux.
"How many light bulbs does it take to change a person?" --BMcC-->
Whereas others still will just give you gibberish, or nothing. Whereas on the subject of library dependencies, there is some value in a developer's workstation.
I can check all of my dynamic binaries with a simple tool (ldd) and check and see what they are linked against and if they were found or not.
So, if I remove a bunch of libraries under Unix I can have some clue why WP8 isn't starting whereas under Windows is won't tell you squat. (it might not tell you anything under Unix either, but that's not a problem)
I know the "Elite" attitude isn't politically correct, but it is kind of fun to feel like you are using something (an OS in this case) that is advanced and only for a certain class of people.
I mean, I think it's fine if Linux comes to the masses, but I just hope they don't pervert it too much so that power users can still do some cool stuff.
-Adrec
I personally don't like using *nix systems, so here's a different point of view for all you die-hard Linux fanatics.
Linux doesn't have an interface problem! It is an OS for techie's and people who really like to do things "the hard way" because it helps them learn about and understand their machine. Yes, it would make life easier for the majority if Linux had a nice GUI that anyone could use, but that is not what Linux is about... (and as far as I'm concerned Linux can rot in it's techie cult grave).
Let the nerds, the geeks, and the computer obsessive have their operating system that requires hard work to use. They like it like that!
The problem is that Windows and MacOS need a lot of work, but these are the operating systems that need UI work, because that is they're intended for mainstream use (and someday they might even be able to run for over an hour without crashing).
Complexity Happens
No, Linux cannot work with Adobe products.
However, there is a "Photoshop"-grade image editor called "The GIMP" (GNU Image Manipulation Program) which can fill the needs of most Photoshop users.
Further, a lot of Linux applications live and breathe in a Postscript environment, so there's a lot of Postscript support in the system.
As to an ability to run the Adobe applications themselves, the only one that I am aware of an official port of is the Adobe Acrobat PDF Viewer. None of Adobe's software portfolio except that single viewer program have been ported to Linux.
I can't find fault with any of his background stuff ("a system your mother could use" is a good yardstick by any standards), but his first law of robo^H^H^H^H linux use -- one distro, one wm -- is just plain not going to happen. We may see a world where people use RedHatLinux as the dominant OS, but there'll always be other flavours.
This is simply just bigotry and should be no less tolerated than if you were simply shouting nigger.
are free to provide feedback to the OpenSource programmers on what they would like to see in the program.
Codifex Maximus ~ In search of... a shorter sig.
It would help in the case of long file names if linux software did not have such hideously long file names. Mesa2.2 instead of MesaLibrarVersionTwoPointTwo
Linux has always been a OS by geeks, for geeks. It isn't the greatest hitng in the world, but it wasn't intened to be. With all the hype now about it being a "Microsoft killer" it must be the best thing in the world. But look at what happens when you do make things easier (Caledra's install proggie, for example), you lose options. All those programs for X, that's great right? not if they don't also accept options from the command line. We are dumbing our selves down, to overthrow Ms, but in doing so, we become no better. I'm all for iimprovements, but make sure they are warrented, not just demanded by "the masses"
Who said anything about holy grail of computing? (isn't that speech recognition :P)>
?
I understand that peopl ethink differently from me, if i had thought they all thought like me, i wouldn't have written that message.
And people hate NT cause the admin tools are usable by idiots? Um, stupid argument.
and worthless for professionals - how so?
Why do people keep comparing NT-out-of-the-box to Linux-and-every-single-unix-application-available
I can admin all i want from the command line. anything not written already, i write myself. Easy peasy.
You could even use unix utils in the form of cygwin. And script using WSH and perlscript if you really want.
If you read again...my point was that just cause it's easy to use (by idiots as you say), doesn't mean professionals/geeks/wotever can't use it with all the power they had before.
Things don't go missing, things are moved around, maybe, but if you use your brain, you can find them and use them - or write better utils - or find ones already written - or port them.
Lets say someone writes a version of Unix.
All the C libraries are present, the Win32 API and the Unix API are avilable under NT. And a similar thing is happening with Linux. Just cause you make everything user friendly, doesn't mean those APIs suddenly vanish.
Actually, that is my point. Most people don't want a Ferrari. They are, if you ask them, afraid to use that much car. All they want is to get from here to there - nice, safe and, from the hotrod perspective, boring. While the 'driving enthusiast' is not going to be happy about dumbing down the car it will happen if the car is offered to the general public at an easy price. I like CLI and prefer to configure my system to my standards, but I do not know one non-CS worker in the office who is more daring than changing the desktop theme. Hopefully, the two realms will co-exist, but I doubt even the best intentions when ca$h is involved.
While there may be some good ideas held hostage inside the text, it was written by a horrible writer. The syntax is as awkward as any purportedly well-written article I have read in a long time. Did this guy step directly out of a Usenet environment. Example:
"Perhaps to the technological bigot but users matter."
That sentence would earn a "C" grade at best in any Freshman comp course. And it's the second sentence in the article.
Soon after, the writer stumbles into a set of 'examples' where he throws out the notion of "A tribesman who has no idea what a computer is" as a user scenario. No context is given, no use this "tribesman" (a term considered an insulting slur by people in most Third World countries) might have for a WWW client is cited.
The whole essay is a mess. We should just flood it with red ink and send it back for a rewrite. Particularly since it seems to contain some good ideas crying to get out.
I don't know about you all, but to me, this flies in the face of much of the logic about what makes open source great--competition (or "coopetition"), like between GNOME and KDE. So long as the two don't diverge too greatly, I see no problem with having both (or others, if they are well-developed). The key is not consistency, but interoperability--i.e. so long as I can use a GNOME app under KDE and vice versa, I see no real problem.
As for point 2, I agree that at some point as much of the CLI needs to be hidden as possible--with the caveat that it should still be easily available if needed. Linux should remain user-friendly for those "Dilbert T-shirt" types *as well as* for their moms.
cya
Ethelred
Everyone wants to be Ethelred. Even I want to be Ethelred.
The article has a few points, but goes way too far. The only way to configure a computer to structly meet the presented guidelines is to remove the innards, and fill the case in with epoxy (so that the user can't take the 'wrong' path and complicate his life by having innards installed).
After all, if the box will actually do anything, it is possable for the user to make the wrong choice somewhere (insufficently constrained).
Let's face it, you can't stop the user from using the mouse as a hammer. (or the CDROM tray as a built in cup holder)
Improving GUI configuration tools is a must, and appears to be happening slowly but surely. Software installation could be improved by standardising icon location (for GUI apps), and configuring various app launchers to know about the new app.
Under no circumstance is Linux going to become more usable by removing capability and choice. The user will just have to know their own skill level, and choose the interface that matches. This shouldn't be anything new, car buyers manage to know whether or not they can (or want to) drive a manual transmission, and choose appropriatly.
On the one hand, the article sounds like end user advocasy. On the other it manages to be condescending to the same end users by suggesting they should not be allowed to have any features they could hurt themselves with. Safty scissors and crayons for all! (I am reminded of Stoogemania where they are teaching recovering stoogemaniacs the proper use of a hammer)
In many cases the problem is simply that computers are reletivly new, and so the use of them is not yet cultural knowledge (for many adults anyway). At one time, new car owners needed to consult the owner's manual for starting and driving instructions, but everyone knew how to ride and care for a horse. Icons are NOT intuitive, they are just what the masses have managed to learn to use. Take someone who has never seen a computer before, and they probably will have to be told that moving the mouse moves that arrow, and that pressing and releasing the button is called 'clicking'. Then they will have to learn what the icons mean ("I want to draw a picture, but all it offers is a paintbrush. Is there some way I can use the mouse instead?").
Short conclusion: Like every other tool in existance, proper use of Linux will eventually become cultural knowledge and the common person will laugh when they see the 'ease of use' features their great-grandparents couldn't figure out.
That part about linux for the masses...does that sound familiar ? Sounds a lot like windows if you ask me. Everything has to be neat and easy to use. I'm sorry, but linux doesn't work that way (if you make it easy to use, it won't be linux anymore). You can add all the GUI setup utilities you want, but the guy that's configuring "whatever" device need's to know that it's an ATI Xpert@play 8MB. A lot of people have NO clue what they bought when they went shopping for their computer.
why do we have to have levels that get switched on or off, though? all power features should be there, and easy to access, but not in the users face. that way, there is no advanced mode - the advanced user just starts a term, whereas the average user doen't know what a term is. same goes for file managers - advanced commands can be easily accessible from menus, but don't show up in normal drag'n'drop activity. if you double-click on a .conf file, it will start it's own configuration tool with teh file loaded, but the hackers can always use vi. look at Next, or even BeOS. Command prompt is there, but noone needs to use it.
gg
gg
Dr.Whiz-Bang
Without wanting to make this into a "me too!" thread, I agree 100%. By all means make the OS able to use little words and pretty pictures so that "average" computer users feel at home, but make it "grow" with experience. This is one of the reasons I like AmigaOS in its later incarnations. You can do virtually everything from the GUI, and most native Amiga apps (i.e. not Unix ports) are graphical. However, power users can drop down into a shell and do things that way. The GUI and shell complement each other perfectly. That's the way it should be.
(since being an Amigan seems to be the best way to get yourself ignored/flamed/ridiculed on Slashdot at the moment, feel free to ignore everything I say :-)
By the term technical, I suppose I have made it clear that I don't refer to tasks which require programming knowledge. Therefore, I include in the technical professions linguistics, graphic design and ergonomics among others. It is likely that we'd agree on the variety of their social aspects.
I'd like to restate that those are technical but definitely mandatory skills for UI design.
Another point to which I'd oppose is the claim that Windows has been successful in capturing the workflow of an everyday user. To the contrary, Windows has designated pseudo standards and have enforced people to comply with them.
--exa--
My favourites are:
1. Hit "Start" to shut down.
2. Type "Ctrl-Alt-Del" to change your password.
Changes aren't permanent, but change is.
It wasn't my intention to offend mentally handicapped people by associating them with the Windows operating system or any other Redmond product.
//Pingo
--- Linux or FreeBSD, it's like blondes or brunettes. I like both. ---
Ya. Except Windows crashes. The tool that keeps vanishing every five minutes. You can work around, but it will never have the potential of other certain tools (one with a penguin engraved on it). And I think those ordinary people deserve something like that. I feel bad every time my Mac crashes when my sister's doing something (MacOS X, I cannot wait), and she says that she hates computers. Or a neigbor does. Or something like that. They deserve better. Granted, I like the power of Linux. AfterStep is really cool, for example...but it's sure hard to configure (despite examples and heroic efforts to document it). But I like the power it gives me. (Of course...a simpler configuration method might be a win for *all* of us.) I just worry that a user-friendly Linux will be another Windows. Windows was designed to cover up complexities. It tries to do something the architecture was never designed to do, with PnP and crud like that. And thus it only partly succeeds. The MacOS was designed from ground-up to do what it does. No command lines or manual config that it glosses over. It was built to work as it does. So it works well. And Linux seems doomed to walk the Windows path...
Actually get rid of X and replace it with something else (anything else!) But it probably wouldn't be a good idea, if you are running a server, you don't need the overhead of X
Actually the Linux file system comes out of the box out of order. Some stuff is in /usr/bin some stuff is in /bin, some stuff is in... Then the /etc directory has 3 files about hosts, Some software wants to install in a specified directory, other software have dependencies hardcoded in and won't work if they don't find that program in that particular directory. In my opinion Linux needs a registry.
A deep unwavering belief is a sure sign you're missing something...
Why on earth would anyone *use* a pure CLI? Well, maybe a bunch of X-windows terminal windows is considered CLI...I'd consider it GUI. Get to use pager to move between them, and look at two screens simultaneously...all those goodies.
Unless you don't have the resources, not running X-windows seems strange to me. Even doing CLI-type tasks is mader easier from X-windows.
Now, as for editors, that's different. Never tried vi, but emacs is nice. I grew up with pretty GUI editors though, so I can't live without my pretty syntax-colored Xemacs or some type of graphical more mouse-oriented editor.
Does anyone here really use standard 24x80 text mode CLI *outside* of X-windows? And if so, *why*?
Someone who's been computing for 20 years should loose any time over learning tar. For someone with two decades of experince, tar is not that complicated.
mount really shouldn't be either. However, there aren't many analogs of it such as pkzip or arc.ttp.
easy interface + cheap = wide usage.
is that better?
gg
gg
Dr.Whiz-Bang
You know I agree with you but we have to remember that home computers have been around as common household items (as common as cars) for only about 10 - 15 years (TRS-80, PETs C-64 don't really count - most people may have heard of them but did not own or use them. Only since the Mac in 84 have most people owned or used a computer on a daily basis). Think about the world or cars about 10 - 15 years after they were "invented" or introduced into common use. Except for a few 1900's car "geeks" I'm willing to bet a very large number of people ran out of gas and didn't know what to do. Many people couldn't drive or even start a car because of the way the gears worked or the fact that you had to crank that handle on the front to get it going. But man, when the gears were made a little easier to use and the electric starter was invented (read an easier to use interface) - BOOM - did the car ever take off. A lot of people owned them. Now today you can either buy a car and drive it with minimal maintainance (I don't have to change Power steering fluid or transmission fluid for 5 years in my Sunfire with an automatic transmission)or you can delve into the depths of the engine and hop it up, or choose a manual tranny over automatic, mag wheels or a kicking stereo. Would you even own a car if, in order to drive you had to use one key to open the door, work the throttle and coolant valves by hand, turn with no power steering and use another key to turn on the radio, which you tuned with you other hand (?) by holding the antenna out the window and scratching a crystal with a needle? Conversely would you own it if you could only use an AM Radio and the hood was welded shut and it only went 60 km/h?
Computers an OSes are the same way. Just as most people will never change their own oil or will never have to know that they have a 318I 6 cylinder in order to drive to work, they should not have to know that they have an Expert@work 8mg AGP video card and PII with BX-440 chipset or that they have 11 daemons running, 1 active and 9 sleeping, in order to check their e-mail (why should my wife have to know how to start pppd or how to write chat scripts and setuids in order to connect to the net to do her real job - advertising? Seems like a waste when she would only need to click under a GUI). But if they want to completely change the configuration, they should be allowed to, if they know how. I think the author's "Linux for the masses" is more of a "let an expert set it up once so it works well and then just let the average Joe drive it." If they need anything changed that they can't do easily, they bring it to the expert again. If they choose to learn more, then they cando more themselves. If they don't, that's OK too.
Maybe in another generation or 2 when computers are more common place, many of the CLI Vs GUI arguements we have will seem silly. Until then I think there is room for both. But don't turn off most users from Linux by telling them the HAVE to do or know details they could care less about.
At my house we could turn on the lights by manually hooking up the wires to the transformer and then twisting the ends together, making sure we have a complete circuit, but we prefer to just flick the switch. I also turn my tv on and change channels with the remote not with the knobs (or buttons as the case may be) - not because it's faster or more efficient but because it's easier and more convenient. I suppose if I wanted to be cool, I could always used to knobs and insist that anyone who used the remote was a "Luser" but I guess I'm just not that immature...
Never by hatred has hatred been appeased, only by kindness - the Buddha
1) Why should we move?
2) If we did move and start pouring our hearts and souls into it making it better. What'll happen is those "average users" will start moving into our territory because they *broke* their toys and want to play with ours. But before they do they'll insist that WE change it to suit them first. And the cycle continues. Nothing but reverse-elitism.
--
The grass is always greener on the other os.
This is the part I think some folks (including me) are concerned about:
"Linux for the masses will be consistent across all platforms. No multiple distributions or window managers. One and only one of each. "
I have no problems whatsoever with a special distribution for the masses, but to say that we must all live with a distribution or window manager designed solely for the computer illiterate just isn't acceptable.
To attract users at the cost of driving away developers is not going to help. Linux can support both, and it should.
The notion that Windows only presents one way of doing things is completely false. I can run programs by the Run prompt, the Start menu, clicking shortcuts, using a DOS Window as a CLI, double clicking from Explorer, etc. This hasn't interfered with Window's usability, apparently.
Choice is good.
easy interface + cheap = wide usage?
Tell that to Atari and Commodore.
Amen. GNOME needs two things now: consistency, which is extremely hard to fix and change later, and documentation, which can come along as people get paid (prob by Red Hat, at this rate) to write it.
But DOS software as an example of consistency? Eeeew.
I remember one of my first days on DOS, trying to figure out how to exit the three games I was playing with. The first one was Alt-F4. The next was Esc. The next was Cntrl-Q. I still use this as an example of consistency.
It isn't made up; I had it appear in one of my programs last week. The program wasn't even accessing files at the time. Since I had the source I found out that where it said "file" it should have said "registry key".
Even better is printing on Windows 95. If the StartPage() call fails, you ask what the error was, and Windows says "The operation completed successfully."
Yeah, right. Boy, questioning of the GUI all over.
"Gee, Bob...I've been thinking about buying a new computer."
"Great, Jim! Be sure not to get one of those gooey thingies...get a CLI computer! They're lots better!"
"So I've heard. No one's gonna keep me from having a good computer!"
Ya. It's just sweeping the nation.
Who cares?
The only people I can see caring about this debate are CLI people that are PO'd that lots of good new tools are GUI-only, so you can't do nice scripting or whatever like you used to with them. To some extent, I agree...it's gonna get harder and harder to do things with shell scripts, as they can interact with less and less software (look at AppleScript, tho...it's not impossible to do an easy-to-use GUI scripting setup). But I can't understand why anyone else is upset or cares. So something comes out CLI. And has a GUI front end done the next day.
For me, CLI = development/personal
GUI = software that goes out to the world
It _is_ a good yardstick since (most) everyone reads it with the assumption that "mother" is willing to learn the basic concepts of click vs. double-click and directory stuctures.
Besides, it's must more convenient than saying "A computer that your parent who is competent and willing to learn a few new concepts can use".
Actually in windows you can start a program by clicking on the executable.
A deep unwavering belief is a sure sign you're missing something...
I think the CLI should work but inside X ( like in an Xterm). That way both normal users and technically inclined users can use the same distro. And the system should boot directly into X
Face it. You're over-reacting again. Nobody said _anything_ about crippling Linux or burying the CLI.
... for DEVELOPERS and experienced users. But it is bad bad bad to expect a new user to dig through source code to figure out how to use a common feature. When you go down that route, you're no different than Micro(BTW: You'll have to buy a huge book too)soft.
A good interface to an application makes it easy for the newbie, but does not restrict an experienced user. As a matter of fact, a really good interface turns a newbie into an experienced user ("Hey, what's this Cmd-O beside the File>Open command?).
The trouble is (and Todd points this out), that most software interfaces are designed by folks with a "be happy I gave you anything" attitude.
"Use the Source" is a great idea
If you want to be 3l33t, fine. But don't throw your crappy attitude in the way of helping non-programmers have a decent OS.
But there are programmers who are interseted in things like GUI's otherwise there wouldn't be so many wm's and desktop environments under development. And it hasn't only been since the media frenzy of coverage on Linux that all of these projects started, they were all there when I first became interseted last year. Therefore there must be alot of programmers out there who want/need graphical interfaces.
"The final mystery is oneself" Oscar Wilde
But Linux's design actually can make this easier.
/home/ directory. So not only should WordPerfect automatically assume data files are in that directory, but you could also have a "show me all my WordPerfect files" button on the File Open dialog for WordPerfect and it could quickly look through her subdirectories and give her a list of them.
Where would you look for a user's file on Windows (or MacOS for that matter)? Just about anywhere in the file hierarchy. In contrast, a Linux user's file should be somewhere under the (much smaller)
Note that you should probably also have a list of recently changed files for a given user. A file created five minutes ago is more likely to be the one I want to work on now than one I haven't touched in six months. And the WordPerfect file I saved five minutes ago is *extremely* likely to be the one I want when I start up WordPerfect. It could be that easy, without changing fundamentals of Linux.
BTW, why does Linux need to say the system is halted twice?
Ooh, a sarcasm detector. Oh, that's a real useful invention.
I like UI. I dislike most of the linux UI that I've seen.
Yeah, themes are cool and look real nice, but sometimes it takes a bunch of ~ugly~ mouse-clicks in order to do something.
Anyway, I like the point that the author is making- that there should be a linux for the masses. And that the masses want something simple, something consistent and something they don't have to spend a year to master.
Bundling a basic window manager with linux, and providing ~links~ from all other window managers to the basic window manager would go quite far towards accomplishing the author's goal.
I'm not talking about a "standard" window manager, or a default window manager (like Gnome or KDE). I'm talking about a drop-dead, bullet-proof, idiot-proof, simplistic window manager.
Instead of funky icons in the corner of each window, put a little text box, with hover-highlighting:
[hide fullscreen close]
Have another text button called [options] that brings up that "sticky/de-iconify/etc..." menu. Better yet, put the word "options" on a second line in the title bar (yeah, make a two-line title bar) and make it "whooshe" out and expand when a user clicks. That way they feel cool. And all those other options like:
[auto-hide, always visible, etc...]
...are always available, but not overwhelming. You can take the two-line title bar and make window title text large and easy to read. Heck, add drop shadows to it.
Instead of a windows-like task-switcher, make each task add the text of it's title bar to a list of buttons in the lower right corner. Make it build upwards, with long, two-line titles saying:
[Show Netscape ]
[ - http://slashdot.org/ ]
Add a header menu (in the same style as the title-bar menus) to the group that says: "[hide program list]", and "[hide all programs]". Make the ~menu~ collapse down into a simple [show program list] button in the lower right hand corner.
No icons to describe. No confusion for the user. Everything gets out of the way. Everything is self-describing. Everything is consistent.
The user can feel confident about clicking on something because they know that the button saying: [fullscreen] is going to make that program full screen. And the button that says [hide program list] is going to hide the program list.
Tech support? A breeze. "Show the program list, click Hide all programs, then click the 'Show "Type your Password" button, then type in your password."
Not "look at the bottom of your screen- do you see an icon for netscape? How many icons do you have on your screen? How many programs do you have running? Can you close any of the windows that you're working on? You should see a little icon that looks like a flying flag, do you see that?"
And internationalization is a breeze. Find somebody that knows that "cerrar" means "close" in spanish, and it's taken care of.
Even if you don't speak that language, if you've used your own system for a while you should be able to remember which button does what.
And of course in the lower left hand corner, in the [basic options menu], you'd have an option to change the language. In the [advanced options menu] you'd have a selector to change the window manager back to something different. Tie a user's "start menu" thingy (I forget what it's called) to a [start a program] button.
It's not for everybody. I'd get annoyed by it in a day or two. But it *is* for everybody, because everybody "gets" it. And while it should primarily serve as a basis for tech-support and a gentle introduction to other window managers, something like this would serve as an *excellent* foundation that everyone can fall back on when using 'Joe-Bob's ultra-cool custom-rev of Enlightenment 7.94 with streaming video clip background support.'
IMHO if all you want to do is "start a program" that's all you should have to do.
Right.
And as a result, the programmers only code in (notice I make no mention of the idea of actually developing anything for Linux) the 80% of the program that scratches their itch. So the typical user ends up with a pock-marked bunch of applications with big holes in the middle where things just can't be done. Of course, the user who has a need for the missing features can roll up her sleeves and code it in, but the people who have the skill of actually developing an application often aren't the coders. It's a team thing, and usability issues need to be addressed at least as much as the code architecture.
A building isn't created solely from the efforts of a group of bricklayers. But this gets into the whole topic of the builders of the Cathedral. The wood and canvas stalls at the Bazaar are enough for some, but not for monumental work that will last.
Anyhow
When my mom decided she needed a computer she just went out and bought a Thinkpad with Windows 95 installed on it. She's been happily using it for several years now, and has had no problems with it at all.
The myth that Windows 95 is frail and unstable doesn't hold up in her case. If you brought such a subject up, she'd ask what the heck you were talking about.
I could design a Linux desktop for her machine that let her do everything she does with her present machine (word processing, email, web browsing). She'd flame me like only mothers can, however, when she couldn't go out to the store and pick up new clipart collections, recipie CDROMS, and the like, and simply plug them in and go at it.
Nah. Too much to learn.
Take the way of the Mac. The Mac's help system is designed around walking people through tasks, so they can do it themselves next time. The Windows help system (wizards) are designed to do stuff quickly. Once. And you don't know how to do (or undo) what the computer did.
I once installed Excel 5. I tried using the wizards. Set up 8 charts or so, but they didn't come out the same. And I couldn't figure out how to replicate what the wizards did (and didn't have time to go through hundreds of pages of documentation).
That's the MS path. Hide complexity. The Mac path is minimize complexity in fundamental design, *then* teach what is required. The current Linux path is to expose all the complexity, for easy working with. I'd like to see Linux go the Mac route, but keep the goodies available. Someday, someone *will* make Linux without a CLI (the MP3 players, for instance). And I don't see that as a good thing. But you should be able to use Linux for a lifetime, not just with some presets your sysadmin or distributor set up, but fully and setting things up the way you want, without ever seeing a CLI. And that *includes* troubleshooting...if users have to just go straight to a command line to fix problems, Linux is gonna get a bad rep (yeah, Linux is fast, but I can't get it to work...).
I challenge you, Mr AC, to point out what I said that is elitist. I said what the author proposed was not only a bad idea but also unworkable. However, in doing that I was not challenging the idea that Linux should be easier for 'ordinary folk' to use. I agree with that wholeheartedly and said so in another post. I was challening two ideas - firstly that in order to be kind to users you need to be actively hostile to hackers. This is false, and will alienate the people who keep Linux alive - and secondly that 'usability' is best defined as being more like Windows.
Your rantings about 'elitists' and the evil sysadmin conspiracy to deprive the public of Linux are laughable. Network sysadmins are skilled (and sometimes even creative) people. Their job emphatically cannot be done by 'trained monkeys' even with a pretty GUI.
Ya. We forget something. Linux is not currently to the point where I can get a RH CD, stick it in a computer, select "simple stand-alone workstation install" (should be default), and hit return. And watch a *secure* (we really don't need finger and http running on a workstation install, Red Hat...), *easy to use* (sorry...GNOME isn't anywhere near covering all the issues that pop up when using Linux) system that lets you do everything without possibly wiping out the system (Root is part of UNIX, but if users have to do things as root, something is wrong...) be installed before our eyes. Without *any* more config options. Like the Windows install. Or the Mac (of course, the Mac can *boot* off the standard CD...Windows/Linux will never match the Mac for troublshooting/ease of installation :-) ).
:-( Must be too easy to reuse code...no fun tracking down dangling pointers or something. It' s just that the attitude is wrong. Elitism is okay. It just shouldn't encompass 95% of a community.
Finally, I want to say that the "Red Hat" menus are a moronic idea. It's like the Windows start menu, which gets filled with crud, and requires a massive effort to keep clean, since people think they have a right to put junk in it at install. I say, keep things like the Mac's Apple Menu. You can put things in there *if you want* as a shortcut to the item, but nothing will touch your personal layout during installs.
Windows wouldn't have all these dumb alternative "launcher toolbars" if it didn't have a flawed Start Menu to begin with.
Windows still amazes me. A lame 8.3 filesystem. Which is confusingly mapped to by a 256 char pathname system. (Try explaining *that* to a newbie). Then the only time people ever see the software is in the Start Menu (no, that's not where the software *is*, it's just a link, you see...no, they don't see). Finally, whatever launcher pallettes show up are actually used 90% of the time to lauch 5 or 6 programs.
I wish Linux would take more cues from the Mac.
And I wish the Linux community wasn't so much out to show off -- "Yeah, I use vi in a CLI to do *all* my coding (C only, of course), and everyone's gonna hear about it". No one ever wants to even think about C++ if they like Linux.
See, I write mostly C++ code in Code Crusader (a Codewarrior clone...nice, if you like Codewarrior, BTW). Yet I always seem to be in the minority...and if I mention something like this in a forum, it's sure to generate a wave of scorn. BeOS doesn't have this problem. The Mac doesn't have this problem. Windows doesn't even have this problem. Why does Linux have most of the the masochistic techie types that are determined to stay one step above binary code? Does everyone just model themselves after the idealized kernel hacker or something? Why is the Linux community so anti-user friendliness and ease of use?
Be nice if Linux became more Mac-like...rather than Window 95-like in the months ahead.
As for toolbars, I hate 'em. GNOME is probably the first UI environment where toolbars commonly can't be removed, which drives me nuts. Does *anyone* in their right mind use toolbars?
I just can't understand why people that surely spent time back when screen resolution was measured in (low) 3 digit numbers up and across take such pleasure in eating it. *Windows* is more screen real-estate friendly than Linux. 64x64 icons. Sheesh. (I guess this will get better as time goes on and resolutions grow). Toolbars galore. Floating menus. Massive whitespace in interfaces. Huge fonts.
Every time I start X-windows I cringe at how much space is used...wasted...on bars along screen edges, the pager (which is actually one of the few efficent things), and so on.
Case and point: type at your linux command line prompt the following: "rpm --help | more"
you get about 3-4 screenfuls of options, which you will never use most of the time.
This is why many users prefer not to use a command line interface...
Toodles,
Wolfheart
I agree...wish BeOS would take over mainstream (or at least become the dominant power), and the let Linux stay power-user. Linux *is* UNIX, which is a problem with mainstreaming. But there's one little problem. Linux is BIG. Linux is popular. Linux is famous. BeOS is not. BeOS doesn't have the chance that Linux does.
First:
"Another false argument put forward by the elitists is that making a system easier to use removes power and choice. Not so. Interfaces to help people do some things more easily do not necessarily have any effect whatsoever on the ability to customize the underlying system. They
are just interfaces which one can use or not use."
Not really...if the programs coming out are all GUI, you go GUI. Not much alternative.
You sound fanatic, but I agree. IT people are possibly the world's least-knowlegeable group with the most power over computer related issues. It's tremendously frusterating...I've never met an employed IT person that I could stand...maybe just because human relations hasn't caught up with the IT field yet. I don't know...
You can use a command line interface in KDE without even opening an X-term. Just hit CTL-F2
and it pops a nice dialog to type your command into. If it's and X app it runs it like normal, if it's not it'll open an X-term for you and run the app there.
"The final mystery is oneself" Oscar Wilde
> I'd like to see a wm that offered three "stages" -- beginner, advanced, and customized. That way newbies would have something universal across distros, mid-level folks would have access to more complicated features, and the enlightened have everything they want.
First, that is already possible, simply assign say, kwm to beginner, and others e.g. enlightenment to advanced.
But that's the wrong solution to the general problem of UI design. Users (i.e. *all* users, including both 'naive' and 'power' users)
don't exactly fit into beginner,intermediate,advanced camps.
For example, it's not proven that Mac/Windows- style GUIs are the best computer user interfaces.
What about voice/sound? After all, most people have no trouble speaking, and speaking to a computer theoretically would be a good interface.
Me, I prefer vim over emacs, GNOME over KDE; for others it may be the opposite. How can a single 'advanced' setting cover all of these variations?
(On the subject of alternative UI's, other than voice, GUI, and CLI, in the future I would like to see a full English (or some other language) interface. Many of the 'naive' users are literate. I for one don't really like speaking to computers though, I like to work silently. If CLI/GUI is not enough, this could be a possible alternative.)
Oh, come on! It isn't a massive polar issue, with soldiers with GUI on their shields opposing a trench full of soldiers with CLI on their shields. Get real.
Note, When I say Linux, below, I mean the complete Linux system, apps and all, not just the kernel.
The things that make Linux, well, Linux are:
1) Openness
2) Compliance to "open" standards.
3) The ability for users (admin-level) to modify damn-near every aspect of the system at the lowest levels (including kernel-level modifications).
4) Choice (if you don't like this shell? use another. Don't like this Window Manager? use another. Don't like the current choices? Write your own!)
5) Create a powerful, stable, multi-tasking, multi-user system.
The author of this article seems to believe that "usability" is the most importaint goal. I agree that it's importaint. However:
* The author suggests that (1) and (5) are as importaint as usability.
* and goes further to say that (3) and (4) are actually *BAD*.
Look, usability is importaint, but following the author's advice would mean a complete 180 degree turn in the Linux philosophy. That being the case, mabye Linux isn't for you. If you want an OS without a choice of GUI's and without a CLI, Linux is clearly not for you.
I suppose a good analogy to this article would be:
That car you folks created is nice, but it's too complicated to use. you need to remove two of the tires (4 is way too confusing), replace the engine with something simpler, like a chain and 2 gears, and get rid of that complicated climate control doo-hickey, cause the average user wants fresh air.
Just by a bicycle.
Or in this case: Windows
Any file that can be created in vi can be done in pico. Just takes a little longer.
You use Linux, and you say the MacOS has a bad GUI? I'd say the Mac has the best, though it's more elderly and simple than these new-fangled contextual menu animated whatchamig GUIs...
You've adopted a particularly luddite attitude regarding the command line.
Don't let your fear get to you like that.
MesaVe[TAB]
and you will get
MesaVersionTwopointTwoandsoonandsoon
It's really nice to know what the hardware is in your computer. It's even possible if you build your own (as I'm glad I did). But *you* try buying a Dell or something and figuring out what all those oddball OEM parts are and how they differ from the normal ones. If *I* bought a premade computer, I don't know if *I* could identify all the parts (of course, I've never tried...)
My point is that if your EXE is buried six directories deep, and is one of 100 files in that directory, and has a 8.3 file name, who's going to bother.
--
Business. Numbers. Money. People. Computer World.
Ease of user use use?
User use usage? Use?
Spare me.
If and when you graduate from com-sci and enter the real world try watching how people who don't have computer knowledge interact with computers. Or how abould taking a psych course this summer so you can get an understanding of how people think (are you more likely to remember the word dog or a picture of one?).
For you, the CLI snob, typing arcane commands in a very particular order at 45 wpm is a very good way to interact with a computer. For my 60 year old father (a farmer with a grade 10 education and NO typing ability) it is not. He is better off with a GUI. Not any GUI, but a well designed GUI (take an HCI course). A lot of stuff in Windows is terrible GUI design...some of it is very good and intuitive. So Linux should keep the CLI for those who WANT or NEED to use it, but provided a well designed, intuitive GUI for those who WANT or NEED to use that. Why stop there? How about voice interaction with a computer (Sound User Interface)? Or touch/movement (for the paralyzed etc)? How about OCR or other kinds of scanners/readers (brainwaves?) a user could employ to interface with a computer? The possibilities are endless. The CLI is not buried but face it, except for programmers and a few older people, no one uses it as their primary interface to a computer any more. They use a GUI. Not because it is easier to use nescesarily (although a properly designed one would be) but because it's easier to remember how to use and more intuitive to figure out if you've never used one (or even to figure out where you are or what application is presented to you). It give the user confidence that they can figure it out - more confidence than a blinking [user]$ or c:\> prompt would be.
BTW, if all of this "Ease of use bullshit" is a "fucking lie", how come most home OSes (Win/Mac making up well over 95% of that market) are GUI based or driven? If your arguement was true, we wouldn't be having this debate - people would want Linux BECAUSE it was solely CLI (and thus by your arguement easier to use)not DESPITE that. Why are so many people asking for a better Linux GUI? Huh?
I like the CLI. I think GUI is better for most things. Niether is the end all be all of computer interface. Use both of these and a lot more (see above) to make the computer truely easy to use...and drop the elitist, snobby attitude. It makes you seem like a hot blooded fool.
Never by hatred has hatred been appeased, only by kindness - the Buddha
Linux is the perfect geek OS. We can do with it whatever we want and tailor it to our needs. Which is a fun activity beneficial to the entire community.
Making Linux a great user OS - ie. having a consistency police, sticking to cumbersome design decisions because the end users got used to it, eliminating power-options, delivering low-level end user support... - no way!
Personally, I think developping something new and cool for fun is a great pastime - but, hey, as soon as the criteria for inclusion in a distro are "our end users are capable of using it and there's no conceivable way that they can shoot themselves into their feet" I'll quit.
I think we should all go back and read Neal Stephenson's In the Beginning was
the Command Line for some insight.
I literally grew up on an Amiga, so I like both the CLI and the GUI at the same time.
"I am not a number! I am a free man!"-- The Prisoner
I'm jumping into this conversation way too late for this to actually get read by anybody, or moderated up to a readable state. Nevertheless, I make the attempt to hear myself say wise and erudite things. :^) {/tongue-in-cheek}
Why does most everybody couch this argument in black and white terms? We can have a power and configurability OR we can have ease of use and no choices.
Or, the person who says they can co-exist as different/multiple distributions, assumes any given user has to choose one and then that's it, they're stuck with it.
A user interface, and interfaces, don't have to be static. Think dynamic. In my mind, the ideal interface is an interface which scales according to the skills and desires of the user.
When I'm learning a new progam, I appreciate 'wizards' and idiot buttons & tips. If I don't understand what the programs' goal or capabilities are, wizards can be a good way of covering ground quickly.
As competence grows, wizards become a major pain and should be banished utterly. When competence becomes mastery, godlike powers should be at my fingertips, with absolutely nothing inaccessible or unmodifiable.
So a good user interface is one which is adaptable to the individual at the console.
Human beings change with time and experience. So should user interfaces. As I learn about my computer, my computer should learn about me. About how to 'interface' with me.
okay, so that's a tall order. but the principle behind it could be a guiding light. a design philosophy.
To the power-users and developers who think "Linux is for power. Newbies-who-never-aspire-to-more than newbieism need not apply".
Sorry man, it's out of your control. Linux is a reflection of it's users. There *are* more newbies, and there *are* more coming. This can't be helped. Anybody can download it. Anybody can modify it. Guess what? People will, including newbies.
But that's okay too. That's what it's all about. The freedom to modify your computing experience to suit your own needs. Nobody can take that away from you, but you can't deny that freedom to anybody else either.
That's it. End of sermon. Go back to your black and white world now.
-matt
Which error message is: "Cannot find the file specified." ? I haven't encountered one like that. I recently put Windows 98 SE onto one of my machines (the one next to the one in my home office that runs Slackware). It encountered a DLL conflict when I tried to load Paperport. The thing was, for the first time, the error message told me the name of the conflicing DLL and the name of function within a second DLL that had called the DLL. It was enough information that I fixed the problem easily by removing an old library file. The error messages are getting more and more meaningful in the products from Redmond. But there will always be folklore coming from people who haven't used MS products newer than a half decade old.
Whatever, of course.
Sure, users can always find a way to fsck things up, but does that mean we have to give them help? We can't remove every source of potential error, but does that mean we can't safely remove some of the ways to make pointless errors?
I see both sides of this. On the one hand, I believe in reducing the "monkey factor," which is the potential to use a lot of power without knowing a thing about what you're doing. I've done some computer support work, and I remember more than one boss who knew how to delete files they had no use for -- and nearly deleted important system files that way, because they didn't know what they were doing, and thought that they weren't using those files. But they knew how to do it, and that made them dangerous.
The monkey factor is low with a CLI. There are dangerous commands, yes, but their density in the set of all the strings that *could* get typed in at the command prompt is low. But the same factor can obstruct people who know exactly what they want to do. If I want to perform a simple command on a file called supercalifragilisticexpialadocious, how many times do I have to try typing it in before I match the spelling completely? I knew exactly what I wanted to do; why should I have to be allowed the 'choice' of wasting everyone's time by typing a single letter wrong? Of course, in practice, I'd probably type 'supercali*' and let the wildcard make the single match for me. But wildcards push the monkey factor up again.
There isn't a perfect solution. I don't think we've gone as far as we can go towards a perfect solution, though, so we can keep looking for a better way. I think the original article hit at least one nail right on the head, by saying that a user should understand what they're doing at all times. And primarily, that's the user's responsibility, but the interface can also take a hand, and is long overdue in doing so.
Now, now. Don't call his bluff.
It was a perfectly good made up example of a Windows error message, before you came along and messed it up.
I bet you're one of those people who doesn't hate Microsoft. evile! evile!!
True. True. I *love* the Mac GUI.
My sole disappointment is that Apple aimed for maximum approachability to new users, and didn't originally put in context-sensitive menus (of course, they weren't sexy back then like they are now) with a right mouse button...because the current solution is a lame hack...I want my control button back.
And the idea of a menu with keyboard shortcuts listed is AFAIK from the Mac. So you use menus at first, become more knowledgable, and eventually use the keyboard. Makes for a fantastic learning curve -- the Mac is all about teaching you constantly, more and more, without you noticing. On the Mac, if you have to go for a user manual, something's wrong with the program. That's not quite true under Windows, and on Linux, if you don't have to read doc files, you're truly blessed.
"If people are interested in developing programs that will produce LFTM, more power to them. I don't use a Mac or a Windows box because I am not interested in using an OS that deliberately limits my ability to use it. Yes, a GUI is very limiting. Think about this every time you see Windows delvier a meaningless error message, such as: "Cannot find the file specified.""
A GUI has zero link with poor error messages. A CLI can have poor error messages just as easily. Don't blame the Mac for poor M$ design in Windows.
To which I respond "Which file ?!? Tell me!"
I would not be interested in using a version of Linux which had no CLI, delivered meaningless error codes, and had no development tools. Most users don't want this level of complexity.
Yeah, I'm real sure that error messages would become more meaningless...if anything, they'd get better to help people on the phone with tech support. I think Linux will *always* have a CLI, just because of its nature. It may not be the first thing you see at startup, though. I'll agree on the dev tools. The Mac gives you nice tools for poking at existing software, but no authoring apps. Windows gives you squat. I've heard Be is better...
And you *could* disassemble the libraries, *just* as ldd is doing. And know exactly what routines it contains.
I hate Windoze, but don't blame it for something it's innocent of.
Ugh. What a depressing post!
Somehow, running Linux is being equated with playing system administrator and mucking about with new window managers, kernel upgrades, and distributions. This is only a byproduct of Linux still being under heavy development and not an intended goal or lifestyle.
Imagine a system with the UI polish and ease of use of a Macintosh. The only difference--and 98% of users wouldn't even know this--is that there's an xterm-like application that you can fire up. From it, you can run gcc, use Perl, and do whatever you please. (Please, nobody needs to point out MacOS X.)
This is a nightmare scenario for many Linux "users," but I have no idea why.
I'd like to see Linux become more like the Mac. You can do a *lot* to the MacOS (people get fed up and don't really learn about it), unlike Windows. But even an average user never needs to go to an expert, not even for setup.
You can't define "the average user" as we're doing. The typical user is a broad range.
An "OS by and for programmers" is useless.
Useless only to a non-programmer.
But they don't enhance usability. Look at the crummy new QuickTime interface -- real-life similarity does not always make things good, even for new users. And 3d would be a pain until we have hologram projectors on our desks...why try to emulate a 3d image with a 2d display -- it's not suited for it!
In all, the main message to me was "look at what you want and how to get it". If linux wants to be "the" OS for users, yes users, it better start learning to play the game. Be something for everyone.
In all, I agree with the author. That is until the comment about one distribution or window manager. I strongly dissagree with is assessment that it is a weakness that we have many distributions and window managers. What makes Linux dynamic "is" its ability to be different. Take for instance, most people own a car. You do I'm sure. Why did you buy your car? What criteria did you have? Color? Interior style? Brand name? Usefulness?
How would you feel if the only car you could get was a sedan? Maybe green. Maybe white. Maybe blue. But basically, a sedan with a 1.5l engine, 30mpg, top speed 70mph. Kinda boring huh?
Oh yes, consistent! You or your mechanic could easily fix it if necessary, but right now, do you do the work of a certified mechanic on your car? I think not.
Consistency "is" important though, but not sameness. Windows is the prime example of consistency. As the author stated, when you look at the menu bar (tool bar), you see "file" and "edit" and a number of other familiar items. And yes, at the price of sameness, you get consistency. Take this a s double edged sword.
However, I had read a few replies to "Designing Linux..." saying that people do not use Operating systems, they use programs and applications. B.S.
They do use operating systems. They use it everytime they use the app or program. Its called the API.
Which bring me back full circle to why Linux _must_ become a more user friendly system. As one post stated "I'm not the masses...", I'm not either, but 95%+ of the computer users in the World are.
I volunteer on irc channel Linuxhelp frequently and the most frequent questions are "how do I install?" and "I can't get to work." "How do I do this...?" "Why won't this device work?" Even something simple as "how do I mount a floppy?" Why should they _have_ to ask? Why can't these tasks be performed automatically? Actually I know they can, but _they_ don't. Both Windows and Macintosh can do it, why can't Linux do it by default? And better, might I add.
No, I don't advocate "one flavor for the masses". We have Windows for that. But we _cannot_ dissmiss the _fact_ that Windows IS highly successful. And that to be as successful, wheather OSI, FSF, GNU, GPL or any of the other "acronyms-of-the-month", Linux has to play the game. The game of _winning over_ the Windows users by showing them the better way. But it _has_ to be simple.
-Wes Yates
INSERT INTO comment VALUE('Doh!') WHERE user='you';
Erhm...Iexplore.exe...a web browser? does the same thing as a shell script?...anyway, in Windows the "launcher" does NOT check to see if the program is already running, Windows itself simply prohibits you from running more than one copy of a given program.
easy interface + cheap = wide usage.
I really have to try not to say "tell that to WebTV" at this point, because it would be so unfair: WebTV's cheapness has only recently arrived with the retail channel trying to clear out the older first-generation units from inventory.
But the guy right next to me here has a point: "tell that to Atari and Commodore." Of course, they didn't have easy interfaces. GEM was crap (did anyone ever figure out what the strange-looking bee-shaped thing was when the system was busy?), and the Workbench was quite a ways from intuitive for a lot of folks (click-to-focus without float-on-focus was a very very bad interface decision.)
So really, cheap + easy haven't been well packaged together as far as I can recall. The Pilot is easy and readily has the best interface of the PDAs I've seen, but it's far from cheap -- it's overpriced to the point of absurdity. Yet they sell like hotcakes.
It looks like anecdotal evidence suggests that there is no rule of thumb about marketing success for (cheap, easy).
What the author is describing is nothing else that the evolution path followed by Microsoft to get from DOS to Windows.
Why would you want another Windows? If you read between lines, the author is asking for a FREE Windows. Furthermore, he's confusing ( I don't know whether on purpose or not ) the use of *free* in Free Software ( when he says that Open Source is the developer-centered version of Free Software ).
Last but not least, his description of what a good UI is seems to be very biased ( influenced by the Microsoft way, which, personally, I don't share ).
What would be the point? An "OS by and for programmers" is useless. Linux needs to be mass-marketed (but not corrupted/broken/adulterated Microsoft-style) because the home user and the business community will be our customers.
If the nerds and geeks want their own OS, play around with Herd (sp?). You and the FSF can have your own private toy that will be of no use to anyone other than yourselves. It will never see the masses because there is no reason for it to exist. Meanwhile the professional programmers (i.e. those who earn a living, rather than whiny college students) will continue to develop Linux, FreeBSD, etc. because they DO have a future in the real world (the home user and the business world).
Ya. The author had good points, except his mindless ranting on window managers. That made no sense. People can't handle seeing 5 windows open at once?
Seems to me you could set up something like that using the KDE or Gnome taskbar. And it would work, until...
Until that average user wanted to install some cool game. I could probably convert my entire friends/family "user base" to Linux but for that.
My personal view of the "average user" sees them as a little more knowledgeable, possibly because I show them what I'm doing when I help them out. I get few follow-up calls asking me to do the same thing -- my evenings are a little quieter, but I don't make as much beer money as I could. :-)
People like your pretty young client are glad to adjust, especially if you show them a more convenient way to do something. If they thought that they were limited to what's on the hard drive already, I doubt that they would be interested in getting the computer in the first place.
-- Dirt Road
-- Dirt Road
Improvise - Adapt - Overcome (unofficial USMC motto)
I'm afraid this is a civilization we're living in, and we can't just throw all the animals into a big compound and let "natural law" settle things for us.
Programmers, if left to their own, will only produce programs that they (programmers) see as sufficient. They're fundamentally not capable of designing a user interface appropriate for everyone. That would be as inadequate as having the mechanics who assemble the engine in the car plant throw together a design for the dashboard on his lunch break.
There are many levels of design, and many areas of expertise that need to be consulted, for a good design.
Research can not be replaced by natural selection. If you think that is the case, here's your box of mixed integrated circuits. They're all LSI and MSI TTL gates. And there's your reel of pullup resistors. Throw together a computer for me by next Tuesday, okay? Or, maybe, just shake the box of parts around for awhile like a shamen. Maybe the pins will connect correctly on their own, since it's self-evolving. The most successful box of parts will certainly emerge eventually. It will be the one that spontaneously calculates PI to twelve places.
God, you can't have used MacOS very much. I've used it extensively, as well as Windows 95 and a variety of Linux window mangers and both full-fledged GUIs.
The Macintosh has, by far, the most internally consistent and sensible interface. It even has useful keyboard shortcuts, that are extremely consistent across applications. Don't let that one mouse button confuse you, it's modifed extensively with the keyboard, making use of your other hand.
>instead of dumbing-down, make easy to understand documentation for all users
Opening Scene "How Windows Ate the World" (c)1999 NotSoGood Fliks, Inc.
Man #1 (Looking up from bottom of cliff): Could you help me get up there?
Man #2 (Looking down from top of cliff --with bloody hands): Well, I _could_ build you a ladder, but that would show you are dumb. Instead, I'm going to throw down a couple of books on rock-climbing.
Right now, users will put up with the problems of Windows because they seem trivial to the (currently) steep learning curve of Linux. When it comes down to it, the new computer user is going to use what everyone else uses, and right now, that's Windows. They use Windows because when they don't know how to do something, they can ask the guy in the next cube, or next door, or the neighbor's kid. They don't use Linux becuase they *can't* ask the guy in the next cube, or next door, or the neighbor's kid (although that's changing).
If the os isn't easy to use, or at least have millions of other people who know how to use it, users won't use it on their desktop. When it gets easier to use than Windows (even one specialized distribution), Linux will make it's way to everyone.
I don't think the author meant to ditch Linux as we know it and make it completely end user safe. A new distribution with a simplified installation method, intuitive gui, easy application installation, and access to a CLI is necessary for the vast majority of Windows users out there who use Windows because it has most of these features. I think Linux can do this and do it better than the boys in Redmond.
Bryan J. Casto
bryan.casto(a)gmail.com
What people are missing I think is the point of this article. The point is not what Linux should do, it is what it would have to do. If Linux in the mainstream is the goal, then this is what (in the author's opinion) will have to happen. The subtext of this is actually that this is an argument against going "mainstream". To put it sort of bluntly, build a system any idiot can use, and only idiots will want to use it. The point the author is trying to make is that one much trade a certain amount of power to make things really user-friendly. This is the point that should be debated.
Sometimes I wonder why every command line interface user is labeled an "elitist". I use CLI because it works for me. I understand that many users dispise the CLI and find they get more work done with a GUI. I do not use the CLI because im trying to be "elite", i use CLI because I get more work done more quickly with it and it is what I am accustomed to. I do not use vim as my text editor so i can go flood an irc channel with ":syntax on r00lz you$%#", i use vim because it works for _ME_ and _I_ like it. I feel that a user should be able to use what ever works best for them without being called "elite" "old timer" etc. I understand that the CLI is not suitable for many tasks, but please understand that all of the work I do can be done with the CLI. e.g. I would not expect anyone to edit a jpeg picture from the command line.
I understand that the average user would not want to have to learn the CLI to get their work done, why can't the GUI fans understand that I use the command line because it works for ME, NOT because i am trying to be "leeter than thou".
-intol
I think a lot of people are mistaking difficulty with power and flexibility. The rc files in linux only accept a certain number of options anyway. By wrapping in a gui, you can keep track of everything without sacrificing the flexiblity. And if the GUI edit the text files for you, then you could edit the text files directly if you wanted. I would also like to point out that changing small things in Linux often has to be done in many places. Where is the PATH variable set? In .bashrc, in bash-config in your home directory, the .bashrc in your /etc directory ,etc? Look at the /etc directory. All those config files could easily be narrowed to a few and a GUI wrapped around it without sacrificing any flexibility. Also, I would like to point out that BeOS is very easy to configure, but everything can be done from the command line if one wishes.
Interesting comments.
I don't understand this argument against standardization. First you say:
"Try to shame the Linux developers into making a 'standard' Linux. This will hopefully never happen."
Then you turn around and say:
"Secondly, linux already has a standard user interface that is common across all distributions: the dreaded CLI. I can sit on a RedHat or Slackware or SuSE installation, type 'ls' or 'cd' or 'vi', 'find' or 'awk' or 'perl', 'ps' or 'kill' or 'cat', and get the expected result every single time. More to the point, I can use 90% of those same commands on virtually any Sun, HP-UX, OSF (er sorry Tru64), AIX, Irix, or BSD machine and get the expected results!"
My favorite thing we have is that things are the same across platforms at the CLI level. I see no reason why this shouldn't be extended to the GUI. There isn't any reason why we shouldn't expect something a little more functional than twm (even though it does work... kinda) as a standard. If I knew I could view any *nix desktop and know exactly how to use most of the features of it I would be happier. It would make using Linux much easier. Of course, thanks to the flexibility of Linux, you can use many other configurations, but having that guarantee of having a good GUI would be wonderful. I know grep, ls, cd, etc will always be there, but also knowing what applets will do and what double clicking something on the desktop will do would be nice too.
You wouldn't happen to be a UI designer looking for job security, now would you?
I don't think UI is as brutal as you make it out to be. Generally, a reasonable UI revised based on user complaints is going to be fine. If you have good guidelines to follow (Apple Human Interface Guidelines on the Mac), you can't go too far wrong.
Maybe in somethign extremely abnormal...but still...
I can't see you requiring linguistics skills for UI. Maybe for localization, and *extremely* rarely UI. Not as a common skill.
I think that users can be involved all through the design process -- though their suggestions may not be best, when they say they don't like something, you should watch out. I don't know what you mean by a "very good user himself" regarding the UI design team member...I would imagine he would be a *bad* example, since he is experienced and and figure out what things do more quickly (and probably has biases, and so on).
GNOME & KDE are rip-offs? Uh...I'd say less so than Windows. E I agree with you on. It's probably good for impressing Windowsites (UNIX looks cool!), but eats CPU time and has an incomprehensible interface (though some like a heavy interface like that...I simply am more spartan in my tastes).
There are reasons for this.
1) The Mac UI is old, and designed around a B/W screen.
2) It doesn't discriminate against the color-blind.
3) Color depth doesn't matter -- the app is equally usable (something about this is in Apple's Human Interface Guidelines)
There's no reason you can't use color on the Mac. Intermapper is a nifty Mac program I like that certainly uses color. Apple just recommends against showing anything in color that can't be determined another way as well.
"4.There must be constraints on the users actions. "
Is this strictly true? There must be a reasonable way to make things easy to use without constraining the user....I'm not sure if becoming popular is the best thing for Linux if it means it has to be castrated first. :-)
dylan_-
--
Igor Presnyakov stole my hat
Sheesh. Escalator, ladder, whatever.
;)
The point is not everyone wants to learn rock-climbing. Some folks just want to get to the top of the cliff.
(I could say that your inability to reason my point shows a limited CLI-ish attitude, but I won't, because that would be stooping to your level
The PCW was - and is - very flexible, precisely because it was supplied with a general-purpose operating system - CP/M. Yes, CP/M is small, limited and awkward compared to a Unix shell. Yes, it has an "arcane command line". But it meant that the PCW could support a vast range of programs, which greatly increased its usefulness and longevity. The same hardware could be used by an amateur, a power user, or a programmer (the standard CP/M development tools were included).
By all means, start with a nice simple graphical system. But like the PCW, a Linux machine should scale to match its user's abilities.
I am drooling.
We don't need a single WM or environment for things to be consistent. Conventions like dragging files, making shortcuts, and the location and format of config and log files are good enough. Most of the former have been established, and hopefully LSB will take care of the rest. This will allow anyone to be supported over the phone, which is how most users with problems will get help.
// Hmm, another variant of IE/W9x/NT to add to the "integrated MS value proposition"
Unless of course Netscape died on you, in which case the icon will mysteriously stop working until you remove the lock file. Imagine a new user chewing on that...
Actually, the programs themselves are responsible for doing this, windows doesn't restrict how many times you can run a program. You can open up 50 copies of command.com if you really wanted to.
Netscape itself will check to see if it's already running under Windows and automatically issue a command to it's already running browser to open a new window.
--
The world is neither black nor white nor good nor evil, only many shades of CowboyNeal.
Whereas on the *Mac* it does... :-)
And these days, with a new AppleEvent, a double click on the app icon can open a new document...
"Design a system *all* mothers can use", say I.
My queen just dropped a litter of kittens. Please tell her which button to press with her wet nose to get the machine to dispense a little pinch of catnip.
Thank you.
But doesn't FreeBSD only have one distribution?
--
The world is neither black nor white nor good nor evil, only many shades of CowboyNeal.
The assumption that programmers don't matter and shouldn't be cattered to ignores how the whole open-source thing works.
Programmers see they have a need, and they write a program to fill that need. Then they share the results with the world.
Under this model, the programmer is not going to say "Hmmmm, I wonder what a 45 year old house wife from Denmark would want this icon to look like." (Unless said programmer is a 45 year old house wife from denmark) They design things the way they want them. There is little motive for them to do otherwise. (Unless you are paying them to write the program with 45 year old house wives from Denmark in mind)
They're called "universities"
English Majors would only get halfway into the first paragraph of this article before reaching for the red pen. It's one of the most poorly written articles I have read in quite awhile.
"In the Linux for the masses the command line interface (CLI) is dead. What may of worked for line printers and dumb terminals has been made obsolete by PCs with graphics cards capable of supporting a GUI."
I think i have heard this one before like 100 times, why is everyone so scared with command line interfaces. Why can't there be a GUI and a CLI? You could hide it from the user maybe, but why kill it? CLI's are very powerful and i couldnt ever see myself using an OS without one. Reason being that with a CLI you dont need a customized "wizard" to guide you through setup, etc. Doesnt it seem pretty silly to have a different window pop up for every little task that you want to do in an OS? I think CLI's are the ultimate in customization for any OS, after all you are only limited by your own imagination with what you can do with it, you can combine commands, redirect output/input, pipe output/input. Lets see you do that with a GUI. I think it would get very messy. This guy should just stick to windoze from the sounds of it, or maybe better yet he should buy a calculator...
If you want ultimate control, get out the wire wrap gun.
You'll be pleased to know that we have EPROMS now, so you won't have to toggle in the bootstrap loader every time on the row of switches. But of course you'll give up some control to whomever puts the code into that EPROM. Do it yourself, if that's your inclination.
If Linux stops being fun for people to hack
on, then people will stop doing so and it will
die. Thus, being useful and entertaining to the
geek crowd is extremely important, because that's
how developers and qualified testers get recruited.
Thus, the advice to ignore the input of programmers when doing UI design should be ignored. Of course, considering the input of the average user _as well_ may be a good plan.
Also, just because someone is an average user, that does not make them more likely to be a good HCI designer! If you had a programmer, an HCI expert and a completely non-technical person all design an interface, I bet the programmer would design something that was easier to use for the avergae non-techie than what the non-technical person would design.
Also, it is pretty annoying in general when a random person who has not made a significant contribution to free software gets on his high-horse and says "Linux _must_ do X"! It is especially annoying when X involves removing features that hackers like.
BTW I have four virtual desktops with 6-7 windows
open each right now, and I am using each one to
do something useful. This is a pretty light load
compared to the usual. Not that a window manager
that can manage many windows is somehow _worse_
at managing a few...
I will get an account soon I promise...
What a great article. Please please could
someone (not coders - I'm a coder btw)
develop a great consistent GUI for Linux,
then we could have Linux's great CLI along
with a usable GUI. Imagine the result of
Linux coupled with something like the Mac GUI,
with cool usable apps - that's free...
Windows would start to suffer. Please let's
not keep Linux the preserve of Power Users,
and network backends - let's conquer the
desktop and have an OS that people are hardly
aware of.
Er, doesn't BeOS do this lot anyway? Apart from
the free bit...
The anti-usability comments are interesting. I don't know half of what goes on under the hood of my car, and if it breaks I take it to somebody who does. I can't drive a stick shift. Once a little light came on and I had to stop and figure out how to put more water in it, and I was glad the stuff under the hood was clearly labeled, but I still pay somebody to change my oil for me. Computers are like cars, phones, and toasters. 99% of the people using them don't care what makes it go, they just want it to work with as little effort on their part as possible. If you force them to learn the details, they'll go elsewhere. Period. My car takes me to work/grocery store/movie theater, I don't tinker with it in the garage and paint flames down the side. I only think about it if it breaks. The hobbyists can create a market, and guide the market, but if we don't provide what the market wants somebody else WILL. And we'll wind up having to deal with it. The point of Linux is it's a better way of doing things. But if it's only a better way of doing things for techies and not for all the regular people who use computers like toasters (stick this in here and press that button and then it comes out finished) and hire techies for the same reason I hire auto mechanics, then we're doomed to having to support Windows or Macintoshes, and that's SERIOUSLY unpleasant. (And even the techies, deep down, want the computer to work like on Star Trek. "Computer, do this". It does it. End of story.) Rob
> Programmers, if left to their own, will only
> produce programs that they (programmers) see as
> sufficient. They're fundamentally not capable of
> designing a user interface appropriate for
> everyone.
Sorry, but you're just WRONG. That is a very broad generalization, probably made from experience with a small set of programmers.
I know someone who talks like you. He can never substantiate anything. He's a total idiot. Should I say that means you must be exactly the same, and inherently have no capabilities of logical discourse?
When I write a program, I make the interface which makes the most sense for the problem which the program tries to solve. This may be graphical, scripted, in an editor buffer, or entirely no user interface!
I don't want a Linux for the masses, I want a Linux for me. Interface design will ultimately fail if it only caters for the 'masses', and ignores the fact that with time, help and practice, even the most technophobic user can become proficient, or at least familiar with a product. Drop down menus may be easy to use when you don't know where something is, but after a couple of dozen times scrolling down the same list, you start to wish for a button or short command. To design everything for a lowest common denominator user is to ignore the needs of those whose require speed, flexibility and control and are willing to invest the time and effort to learn a difficult but powerful interface. This idea of having a single, consistant interface, so easy your mother can use it seems to go against the trends in modern product design towards customisablility and uniqueness. I'm quite happy for people to design interfaces easy enough for my mother to use, but why does it have to be Linux? After all, she can always buy an iMac. I'm all for designing easy to use interfaces, as long as lurking behind that easy to use, bland, facade is a potent penguin with attitude.
No no no. I never got the impression that the author wanted to scrap all the other distros. He wants there to be a subset of the Linux community who is served by "Linux for the Masses". That's not to say that all the geeks can still use whatever distro they want, he was trying to articulate what would be necessary for Linux to REALLY go mainstream on the desktop. None of his goals preclude any other distro still being available (if you like the kludgy stuff).
Why yes, I AM a rocket scientist!
Sigh. No matter how well thought out and well written this article is, it is still the same self-negating, point-missing argument that should have been put to rest many years ago. If implementation is irrelevant to users then, by definition, choice of operating system is also irrelevant. Computers and operating systems are tools, people. Accountants don't use operating systems - they use spreadsheets and accounting systems. Secretaries don't use operating systems - they use word processors, PBX systems etc. No "average user" can be expected to use the tools they are given without three important things; training, training and training. Users have jobs to do and these jobs generally have nothing to do with computers or operating systems. Users can be trained to perform their jobs efficiently whatever platform, operating system or application is available. For example, someone hands me a screwdriver saying "This is the most advanced screwdriver in existence - it has been painstakingly tested and developed to the be easiest, most consistent screwdriver on the market. Now, go fix my car!" Gee, where do I start? However, train me how to fix a car and I will probably be able to do it with a sturdy knife rather than the super-screwdriver. (BTW, I am not a mechanic and it shows :-) So, my point. All you talented people out there hacking Linux software - keep on doing what you do best. Sure, try to design good user interfaces and help users as much as possible but keep in mind that your software exists to solve problems. Users who need your solution can be trained to use it. (I really need to cut down my coffee intake :-)
The windows system, like the Mac system, is horrible. Having a seperate directory structure for programs and data is the way to go.
One important distinction: what you are saying is certainly true of a multi-user, shared system like Unix or Win NT. However, for Win95 or the Mac, where there's usually only one user, it is a different story. On my Mac, for example, I set everything up, so I know exactly where things are. It would be silly to give myself a "home directory," since there's only one user.
And I would argue that the Mac is usually set up better then the Windows equivalent. The Mac has one "System Folder" and as long as you don't mess with it, your system won't break. Likewise, there is usually an Applications folder, into which applications go, and documents are no normally stored there.
Of course this requires some discipline on the user's part. The best laid out FS in the world is going to break if the user doesn't take the effort to keep in order. But for a single-user machine, I'm not sure there's anything particularly wrong with the Win/Mac filesystem layout. The Mac in particular has a very well-designed set of conventions, IMHO.
Of course, it's lousy for multi-user environments, but that's what OS X is for.
Platitudes about user-friendliness, stability of Linux vs BSD, or whatever, are great, but I really miss the technical details. Want to make Linux user-friendly? Ok, let's walk through the list of daemons and other services that a typical distro starts up and decide whether they belong on a desktop OS. Want to compare the TCP/IP stacks of Linux and BSD? Ok, give me some technical details about what is different about them. I don't much care about when and where they were written.
Maybe I'm not going to find this kind of information from Slashdot. Where does one find real technical discussions these days?
I actually think the Macintosh's UI is bland. It pretty much doesn't use colors for anything. When ever I write graphical programs, they make use of color to portray information such as different node types, conditions in code, semantic differences, etc.
Since when are people who do not need the flexibility of text files dumb? I don't run a web server, I don't need the scripting capabilities of CLI, but want to be able to tweek my system without editing a bunch of text files! The only people who are dumb are people like you who use the CLI just to make their poor egos feel better.
There are a lot of users who CAN use the CLI, CAN do pnpdumps to find IRQS, IO ports, DMAs etc. If they don't WANT to, people like you have no right to call them dumb!
The thing is, there are many, *many* more people like your mother out there than there are people who are comfortable with the complexities of linux (as it is today). I realize that there are a lot of people here who believe that there's no reason to change linux to make it more 'user friendly' - that it is, and should be, an OS for the technological 'elite', for lack of a better word. This is a perfectly valid opinion---but it's mutually exclusive with another common (and again, perfectly valid) idea I've seen in the linux community, the 'take over the world' mentality. I do run linux at home, and would classify myself as a linux newbie at best - but I'm still far more knowledgable about computers than at least 95% of my peers - and these are all highly educated, intelligent people, people who wouldn't consider linux even if they knew anything more than the name. Most people simply don't care, as long as they can use computers to get their work done, use the web, or play the occasional computer game. Endless configurability and myriad choices of interfaces just aren't an issue. And I won't even get into the uselessness of having source code available to the average user (I'm not disparaging the concept, or the obvious benefits - just stating that the average user isn't, and never will be able to take advantage of it personally). The needs and desires of the traditional linux user are so different from that of the majority of computer users, and future computer users, that the likeliest common ground I can see is simple binary compatibility. Let the hard core linux user use the CLI, customize to their little heart's desire, get things running _exactly_ perfectly. Give the average user a simple, stable, consistent interface that they can learn quickly (and only once) - and let them use the same applications so that both groups can work and play compatibly. This is assuming that the average user can be convinced that there's a reason to use anything other than windows and office... anyway, my point is this - there simply isn't any way to please both groups, and without the pool of average users, linux won't become mainstream, ever. Linux has the potential flexibility to serve both camps, but there's no reason to even try to make everyone happy with one distribution/interface set.
Okay, I think I have read at least 3 out of the 7 post I've read refer to GUI users as dumb(or dum for the one to lazy to type)
GUI USERS ARE NOT AUTOMATICALLY DUMB.
CLI USERS ARE NOT AUTOMATICALLY SMART.
Repeat this mantra when you go to bed at night.
I use the GUI when it suits my needs (graphics, video, gaming, web surfing) I use the CLI when it suits my needs (moving files around, configuring the system) Some people never use programs that demand a CLI. Sure a lost of them COULD use a CLI, but they don't. You forget that a lot of the 40 somethings who click away at word all day DID use Unicies at work in earlier days, so they CAN use the CLI. But the GUI just suits their work better. Allows them to concentrate work and not commands (it seems every Unix program author has their own idea of how to do command line flags, even exit hotkeys.) The only people who are dumb are those who don't know what to use in a given situation.
I envision that each user of a system be given the option when a username/password is made, one selects:
"Normal User" (the default, since there are a lot more of them than there are of us), or
"Linux Guru" or "Expert User" or something similar so that the OS defaults to give you a CLI.
Of course, a person who, for any reason, wants to change their status can do so by toggling a PointAndDrool variable buried in an /etc file in a suitably out-of-the-way (for Normal Users) location. Just my $0.02 of course.
Todd Burgess' article has some food for thought but my concern is that he (and perhaps many others) underestimate the ability of the public to focus on a technology and learn it when they need it. I'm pretty sure that only giving them one choice is not the way we want to go (unless you're a major stockholder in the company that produces that single choice.
What happens when, for instance, a new Linux user is presented with a "no choices" user-friendly Linux distribution (there will be only one in the Burgess scenario)? After a week of surfing this user hears from a Linux guru that Linux will gateway his entire office to the internet on one line. Unfortunately for him, his choice-less distribution won't let him do this because it's too complicated for the average person. So this user becomes frustrated and angry; exactly the emotions Burgess doesn't want.
Regarding the idea that programmers shouldn't do the interfaces, who else is going to do it? Designers? They can draw pictures of what they want but someone has to actually code them into reality. Who else but programmers? You might argue that more thought needs to be put into the GUIs offered via XWindows and I'd agree... but we seem to be making some big strides in this area as it is.
Linux can't be the "new Macintosh", offering only one way to do everything, and still be rich and useful to power users. You might be able to code a GUI that restricts users - at first - and allows them to grow their interface along with their skills. But denying choice to users based on some simplistic idea of what people need and want is like designing a freeway with no off-ramps until the destination is reached.
I'm aware of the difficulties a new Linux user has installing this OS and, believe me, I've struggled to introduce it to even relatively sophisticated users. I'm not sure it will ever be ready for "prime time" and not sure we want it to. However, I'm adamantly against dumbing-down this superb creation in order to get it on a few more desktops. We already have enough "no choice" operating systems... I think it's time to let people have enough choices and challenge themselves.
No one ever had to evacuate a city because the solar panels broke!
I'm not really familiar with Linux... so maybe I shouldn't be talking... but what about WINE?
Let me explain.
I work for a fairly large corporation. We have lots of unix machines for various engineers who do lots of CAD and stuff like that.
The environment, however, looks the same across platforms. Whether you run an Alpha or a Sun, everything is in the same place as your home machine. Likewise, it doesn't matter if gimp is in /usr/bin(DistroA) or /usr/local/bin(DistroB) So long as the Gimp Icon is available from a toolbar or menu.
This is also what we see on windows and Mac installations. People don't precisely know where important system utilities are when they sit down, but they know to look around in the start or apple menu.
Also, being limited to one window manager is silly. We have three supported window managers here: OpenLook, CDE, and Mwm. You have a file in your home directory that your init script uses to decide which one to start up -- and it's the same wm across machines and across platforms. If you want to change it, it's a menu option. Having the same window manager shouldn't be manditory across platforms -- but perhaps there should be a standard list of window managers that should be available. And it should be easy for users to switch to their window manager of choice when they need to.
I certainly agree that for a LinuxForTheMasses distribution that the command line and administration knowledge should not be necessary. I could not live without my command line -- it's the perfect file manager, program launcher, and with vim, word processor. But my mother has enough problems remembering where to double-click, remembering the syntax for various commands isn't something she's interested in.
I think we've started to see some of this in the server market -- the Cobalt Qube is configurable with buttons on the front and web pages -- no knowledge of Unix administration is necessary. And I think that Gnome and KDE are coming up with a good base on which to add the features we need for LFTM. Just give it a few years to mature. It will come.
-- Erich
Slashdot reader since 1997
All the education that journalists have with regard to conjugation, matching tenses
and word placement has put them out of touch with the
general populace. Obviously, a more reader-oriented person
should create the sentiment, and authors should restrict themselves
to making sure that the spelling is correct.
I'm glad that articles like this are being written; the issue of usability is one that Linux geeks have ignored for too long and are still mostly ignorant about.
An operating system is good if it helps you get a job done with as few problems as possible. Stability and efficiency count, and Linux shines at this. However, usability is just as important, that's why KDE and GNOME have been created, and they both still have a long way to go. There's little point in stability and efficiency if the user can't get to it because they're first required to learn 100 different arcane interfaces and commands.
The author is right with his assertion that interface design shouldn't be left to the programmers of applications, as they tend to design from the inside looking out as opposed to the user's point of view, from the outside looking in. Not only that, but interfaces need to be tested, and this is done by exposure to users unfamiliar with the program. If the users have trouble understanding the interface and can't use the program properly, 99% of the time it's the fault of the interface, not the users.
There's a horrible attitude that's quite pervasive in the threads above and it's one of pointless elitism: that Linux should be for geeks only, if you make it easier to use then you get more and stupider users and you lose configurability and the ability to do the complex things you can do now. And it's all utter crap:
a) If you really want to use an OS that hardly anyone else is using, there are loads out there: Plan 9, RiscOS, OS/2 etc. They all have lots of good points. Just don't expect much of an application or support base and don't expect much progress. If you want to be part of a minority, you pay the price.
b) Everyone reading this had to learn Linux at some point. Would you rather spend more or less time learning how to do something? (Personally, I'd rather spend less time learning and more time doing)
c) Unix has already progressed in terms of usability from when it started; there are applications in common use that greatly simplify necessary Unix tasks, and they purely exist because of usability needs. If you don't think usability is a major issue, try replacing your favourite text editor with ed or pico. It's just as powerful, but it's a hell of a lot less usable. The fact is that most of the "we don't need usability" idiots depend far more on usability improvements than they think.
d) Decent computing power should be available to everyone. We believe that Linux has that power. If it's held back by bad usability, there's no point railing against Microsoft, because we're not providing a usable alternative. (And do you want the less tech-able of your family using Microsoft forever? I bet you get pretty sick of the support calls...)
I disagree with the author's assertion that all feedback from programmers should be rejected; programmers are users too, and you're not going to get feedback on a C++ IDE's usability from your average secretary. All feedback should be counted and considered.
However, the author makes a very good point about hardware - why the hell does the average need to know what hardware is in the machine? Why do I need to mount drives manually or know which graphics card I have? This is all stuff that the computer should be detecting and taking care of for me. It just gets in the way.
Usability is vital if Linux is to prosper. Fortunately, there are more and more projects happening that will contribute to Linux's usability and friendliness. Let's all assist where we can and ditch the childish elitism.
..if she needs to install a new printer, change her ISP, deal with a fault...
Easy click and go can only work when there is a support system available, and this is true for Windows and Linux users.
Home users, and businesses to small/disorganised to employ support staff, are left struggling when they need to do the non-routine jobs. They've been sold a package (the machine) with a vital component (the support) missing, and assumed that this was the way it was meant to be.
They need support and they need companies ready to give it to them in ways which will really help and are cost-effective. That should include (re)configuration, installing software updates, problem solving, and use direct access to the machine.
Let me tell you a story. I was recently at a pretty young woman's house, um, helping her with her computer which she'd managed to foul up again. While I was there, I decided to reinstall some drivers. So I opened her CD-ROM drive and what should I find but the Internet Startup Kit that her ISP had given her. No big deal, but she was terrified. "Don't I need to play that CD to use the Internet?"
Yeah yeah, she's not stupid, just ignorant. But this is the type of user most people are. They know as little about computers as I know about the inner workings of an internal combustion engine.
You want a user-friendly computer? Make a Palm Pilot with a big screen. Press a button and you're in 'email' mode. Press another button and you're in 'web' mode. Anything more than the minimum function set necessary to do the job at hand (e.g. email/web) is wasted on the average user.
Believe me, I deal with average users every day. They may not be stupid, but they definitely do not have the time or inclination to learn how to use these admittedly esoteric gadgets. Today's desktop interfaces are an expression of contempt towards the end user.
I know someone who talks like you. He can never substantiate anything. He's a total idiot. Should I say that means you must be exactly the same, and inherently have no capabilities of logical discourse?
Uh...you just did.
You can add all the GUI setup utilities you want, but the guy that's configuring "whatever" device need's to know that it's an ATI Xpert@play 8MB. A lot of people have NO clue what they bought when they went shopping for their computer.
A lot of users have no clue what hardware is in their computer. They're right, they shouldn't have to know. Why do they have to know?
Why should I have to know what graphics card I have in order to get my work done? It's stupid and irrelevant. Linux should be taking care of all that with autodetection. That's what usability's all about.
(And yes, if you really want to get in there and configure it all manually, you should be able to do that too. But 99% of people have mroe important things to do.)
A truly excellent post. Your economic take on the motive for sysadmins "hoarding" Linux information is spot on. I've heard similar stories about information-hoarding in all sorts of fields, from construction to physics to tech support. It's an old story: don't teach anybody how to do your job or tomorrow they'll be competing for it. Be vague, make instructions ten times too hard to follow, deliberately misdirect. Wave your hands a lot. Make it mysterious while you cry, "What the fuck? This is so *easy*! How can you not understand it?" Smart apprentices catch on and mimic the same attitude, contemptuous of everyone who is "clueless" about something they themselves didn't know yesterday afternoon. Wherever these habits become ingrained, the information-hoarders will always invent a myth of "superior intelligence" which deserves its rewards. Maybe they'll even come to believe it themselves(especially if they're as fat and overpaid as most computer techies).
Of course the answer is command-line with optional (well-designed) GUIs on top, so that all users can have what they need. A win-win situation is perfectly thinkable, perfectly doable. The talk about "dumbing down" is pure ideology, absolutely pure. The motive to hoard and mystify the Linux OS has nothing to do with any threat to its complexity or integrity.
Give a mom a fish, and you feed her for a day. Teach her to fish...
/? first. Different strokes for different folks...both are appropriate in different situations.
I do the same thing on the phone with my customers. My goal is to solve their immediate problem, not teach them how to solve problems. If I was going to teach somebody how to copy files, I think it would be easier for them to understand drag and drop and rubberband select than explaining how filenames, paths, and wildcards work. Hell, I still can't use xcopy without using a
Why yes, I AM a rocket scientist!
Apple is currently in process of creating a unix for the masses, called "Mac OS X consumer". Why not use that as a benchmark of the ease of use the Linux for Masses ought to target?
Saying the CLI should be dead in a easy to use system is stupid. The Mac way of doing things has been, for a long time, to hide the details for most users but give the possibility to expose more functionality once you've learned how to use what you were given at first.
The point of having just one GUI with one consistent behaviour across different hardware platforms is a good one. I'm extremely agitated by the fact that I have to use different keyboard shortcuts on Linux, Mac OS and Windows. On Linux I even have to use different keys on different programs!
What I'd love would be a crossover UI consisting of the best Win 98 and Mac OS features that I could use on one machine that ran all the software I need, be it that I was doing prepress or developing a dynamic website. Linux has a long way to this, but I hope we'll make it some day.
"Although it is not true that all conservatives are stupid, it is true that most stupid people are conservative."
I know that Burgess tried to avoid the term User Friendly. But it's still there in concept. And I propose this: there is no such thing as a User Friendly interface. It cannot be achieved. Oh, you can keep trying, day in and day out, but you will never ever make an interface that pleases everyone. You can't make a computer that anyone can walk up to and just start using. They have to have some amount of minimal training. And even though I've said it before, I'll say it again: computer users should be _required_ to have some sort of training before they are allowed to use a computer. People love to use the old, cliched, trite, and extremely bad analogy of a car and computer. This analogy is completely wrong except for one point: you have to learn how to drive a car before you are allowed to drive it. It should be the same for computers, not because they are hard to use, but because you can get yourself into trouble with them.
a lot of the problems that people have with CLI's are that the language in which you communicate to the computer is not a natural language like English. .fetchmailrc file. take a look at it sometime. It get across everything you need to know and it is written in english sentence-like grammer.
I've found GUI's a difficult concept for a large number of people to grasp. I'm speaking from the expierience of working on my college's helpline. GUI's often try to incorporate new and very foriegn concepts to the uninitiated. Ever think about a windows shortcut? The icon is ideally supposed to represent the program/document or whatever. The windows shortcut completely destroys this notion by adding a extra abstract layer. The icon is no longer he program but a symbol of the program. How many people you know think that when youdelete a shortcut off of your desktop the program is gone? Well if the metaphor made sense, they'd be right!
Anyway, I think the CLI _can_ be the best interface for the user, as long as it is properly designed. I think a good example of how you would want it designed is the
For example, I think it's good for brevity's sake to write this:
cp foo bar/
but that isn't english like. The alternative would be something like:
copy foo into bar
Yes, that is more typing and is a bit more to implement but I think that it is much more easier to understand than either the current CLI interface or the GUI solution.(and you could always switch back to bash)
Really, I think there are two big attractions of GUI's. One is wallpaper, screensavers, and themes. I mean, name a windows user from the most technical power user to the newest novice that hasn't played around with them. The other is porn, every GUI known to man has a picture viewer.
I, for one, am one of those who prefer a GUI most of the time, but, like Azul, I find the command line useful, too.
Having more than one GUI could be a problem. A programmer's resources might be put to better use, if designing a GUI-based program, programming for one basic interface. If all GUIs used the same underlying programming interface, however, this might not be a problem. The differences in the GUIs could satisfy the needs or desires of different people, while allowing GUI-based programs to run under multiple GUIs.
An example of this can be found in some Windows 9x programs that have a "non-standard" window structure that deviates quite a bit from the usual ones (like Symantec's latest offerings for that OS). They use the Windows API as all of the rest, but they don't have the same "look and feel" as most other Windows programs.
If there were a "standard" programming layer between the OS itself and the GUI, programs could be written that could be used in any graphical interface.
There is one problem with a "standard" anything, however. It is restrictive and limits creativity beyond what that standard imposes. Sometimes this is a good thing, and sometimes it is a bad thing.
And remember that this is part of what Linux is all about, the ability to deviate from a standard, to be able to customize a program, fix a bug in the OS, design a device driver for yourself, etc.
I can see both sides of the issue, and I do not totally feel that either extreme is the way to go. In time, however, the Linux community will determine which way things are headed. It seems that an available GUI will be in our future, whether we like it or not. It also seems that we will have the command line available for those of us that like to go beyond simply running applications. Sometimes, using the command line is the only way to fix things.
Personally, I'd like to see both survive, to make Linux useful for the masses. It could mean more useful programs written or ported into Linux, more supported hardware, and a starting point for those who need a GUI to get their feet wet but want to dig deeper into the OS itself.
I am one of those people.
What I don't want to see is a few people wanting to keep others "out" by carefully guarding the knowledge that they have about Linux or any other computer subject. Knowledge can be power, but power can be abused. It can also be used to empower others if we use it in a way to benefit others instead of keeping it to ourself.
My experience with those in the Linux community is that most are willing to help others learn about Linux. I hope that all of us can follow their good example.
Donald Hellen
Remove both ".spamproof" sections to reply directly by email.
I never said I was a programmer. You probably will not see this because I have been away for awhile but I use my Linux box as a server for my home network routing mail, acting as my portal out to the internet via IP Masquerading, and sharing files across with Samba.
Designing the distribution around the type of user that will be using the Linux box is only one part of a solution for Linux to hit the masses.
In my post, I was simply trying to point out the fact that if you make the OS generic enough to not drive the common user insane with choices you rob the same OS from much of what makes it strong.
Trying to make the OS a mass as opposed to a niche market you are simply liquidating a large portion of its power and grace. If done correctly a niche market product can have a much larger shelf life than a product that tries to be all things to all people. Novell had a nice networking system but tried to take on both Office apps and even Groupware products at the same time and it killed them in their core market as NT 4.0 slipped right past them. However, even if you despise Apple, they have played the niche card very well through some very depressing times.
In the end if you try to be a better Microsoft being everything to everyone (client, server, enterprise) even if you succeed you will end up at your goal look back and realize one thing. Being a better Microsoft means being Microsoft in the end, do we want to become our own worst enemy? Is that the real goal?
ACK
Okay read the articel and thougt about it some.. What I came up with is that what we want is a easy way to do the hard things.. He say "starting deamons shouldn't be in the rc file, rather just a click on a icon." hey.. how hard is it to make this icon for the man.. We have two big desctop system out there. If they came up with some nice 'usertype' standard so if you choice is to be a 'desctop/newbe user' the install would be install some nice icons i a system/deamon dir in the popup menu.. clean and easy.. and it would be nice to use this litle thing to show the status of the deamons.. /etc dir to restart apache for an example but still have this nice config files for me to use when I make my scripts that check if the deamon lives every hour or so..
after all one of the power of linux is the ability to make scrips to automake "that thing that take 5min:s of my time every day."
What I'm trying to say is that we should keep the advanced level that linux work on but make some tools to easily make the most common task so my mother don't need to rumble around in the
But I think that diffrent subdistros will come to live in not a so far future.
One for the total newbe that do the most things automagic using automount on cd:s etc.
One for the computer knowing homeuser that having choise for most things.
And last the server version that ask about just everything and tells the user there to find the docs for eg. nfs and then let him build hes own configfiles.. Time consuming but gives total control.
The diffrent distros already does this but not take the whole step becorse thy try to satisfy everyone..
well this are just my thougt good ones in my opinion (isn't so sure about the sub distros anyway)
//rE^d
While I agree with many of the views expressed in the article, I think the writer needs to think through what he's saying a little more thoroughly.
A "problem" with Open Source programming is that it isn't user-driven, whereas commercial software development is. (Whether this is actually a problem depends on where you sit.) Commercial software vendors have to please end users if they want to keep on selling them software. Open Source developers don't have to please anybody but themselves and a small circle of others whose opinions they care about, which circle usually doesn't include end users. What we have here is YA attempt to convince someone who's doing what he does for the hell of it to pay attention to the opinions of a bunch of people he doesn't really care about.
This article is unlikely to convince him. Considered as a requirements definition, most of the Seven Commandments of UI Design cry out for elaboration, and even when we get it, it's often incoherent. Wondering what in the world the writer meant by "There must be constraints on the users actions," I wound up looking at this:
"The system should be flexible enough to allow users to do the same task multiple ways. Users should be allowed flexibility only if there is consistency between the two methods. If two methods produce the same results but using two divergent paths then users should only be allowed one path."
Which not only contradicts itself but the whole concept of user-centric design which the article seems to be championing. Taking Windows as a model, as the writer seems to do, there is not one single way to do most things and the differing ways may indeed involve "divergent paths." You can start a program in four or five different ways, for instance. Contrary to what the writer seems to think, this array of choices doesn't leave users paralyzed from "information overload," and the problem they face at the Linux CLI prompt isn't "information overload" either, but an inability to find out how to do anything unless they know how to do it already. This is not throwing too much information at the user, this is an overenthusiastic application of the concept of data hiding.
However much he may chide others for failing to realize that It's the User, Stupid, in that paragraph the writer reveals his own failure to Get It: " . . . users should only be _allowed_ one path." In user-centric design the programmer and the UI designer alike aren't there to decide what the user is allowed to do but to DO WHAT THE USER WANTS. If he wants to be able to do the same thing five different ways, the UI designer and the programmer get to say "Swell!" not "We can't allow you to do that." GUI interfaces ought to be consistent not because some cabal of Wise Experts has decided that this reduces a "gulf" but because THAT'S WHAT USERS WANT.
I can't help thinking that the writer is unable to get past his own feeling that users are too dumb to make key decisions, which must be made for them by some variety of propellerhead. He just wants a different kind of p-head to make some of the decisions. Judging by the article as a whole -- particularly the writer's tendencies to make very broad, very vague statements and to contradict himself -- I'm not sure we'd be any better off even from his perspective if he got his way.
Technically-oriented people like flexible tools that reward a deep understanding of how they work, but normal people actually prefer inflexible tools that enable them to do a handful of key things simply and effectively. (Consider manual transmission, Web browsers, or VCRs.)
Trying to be all things to all people is a hopeless task. I can imagine a few different shells, targeted at different people to address their needs.
It's a well structured, thoughtful article.
Many of Todd's points would be true if Linux was a proprietary OS, trying to break into the market, like BeOS.
But it isn't. Linux is a Vast Internet Thing that doesn't care anymore about competition, or markets. If MS disappeared tomorrow it wouldn't make any difference (although IBM might actually admit they make OS/2 Warp 4)
As for the flexibility thing - Linux's flexibility is the reason it is where it is.
#ifdef OFFTOPIC
Rule 1 of HCI. Microsoft Windows and its applications are, generally, how NOT to do it. Windows lost the HCI plot when it moved to the 95 explorer shell. Windows 3 was nice, everything was consistent, users liked it. The 95 shell is broken from a UI point of view. It's inconsistent, illogical and confusing.
If you want an example of a really easy interface, you still have to go to the Mac.
#endif
Linux is easy to use *now*. Installation doesn't count. The people who would barf on a Linux install would equally barf on a Windows install.
Compare like with like. Windows-only boxen should *only* be compared with Linux-only boxen.
There'll always be a place for character displays (ask the accounts department and goods inward) too.
Command lines are useful as well. AutoCAD 2000 keeps the command line and for good reason - it's often the fastest way to do what you want.
Still, a good article and food for thought.
Peter.
Peter
Interesting insight and I agree closely! I run a Mac and Windows and wish on the starts I had a term or can get process info. But thats just them.
Yes, make it as simple as one wants it OR as complex. Why can't it be? Can the Linux gods (real programmers) not create a "user friendly, net surf'in" Linux distro that has mostly, and I stress mostly, similar interface. Many will disagree, but to me GNOME and KDE are very similar in appearance. Caldera has a fantastic install program and Partition Magic is the best i've seen yet.
Absolutely give choice. I posted to this article that choice==dynamic OS! Choice is what will allow software developers the chance to try something new and be as creative as they can, but similarity will keep the audience.
Mark my words, as a volunteer on irc Linuxhelp, I see about half to three-quarters of the people are new to Linux and see it as a "Windows" alternative. Once they find out that it really isn't, their attention will turn. Linux must keep the audience. If it doen't, it will die as a popular OS.
Users and administrators can benefit greatly from Linux. but Linux _has_ to be more focused on what it wants to become. If that is enterprise serving, so be it. If it is workstations, great. if it is home use desktop OS's, go for it. And it can be all the above.
Just remember _who_ is using it!
thanks
-Wes Yates
INSERT INTO comment VALUE('Doh!') WHERE user='you';
First let me say that I agree wholeheartedly with the author's underlying goal of creating a "system your mother could use". I do, however, have a lot of concerns about the approach being advocated.
My most important concern is that, while the author seems to know there are many different groups of user, he proceeds to outline a scheme that caters only to those who are most technically naive.
He seems to be advocating eliminating all the diversity and choice than exists in Linux at the moment, in order to simplify the lives of the one group that doesn't use Linux, hasn't heard of Linux, and doesn't care what OS they use. In the process following his scheme (getting rid of all but one distribution, all but one window manager, all but one toolkit, and every single command line shell) everone else, all the people currently using Linux, all the people who actually care and keep the community alive, would be alienated. Even if it were possible to do this, which obviously it isn't, would it really be worth it ?
My point it this: linux is not designed poorly - it is designed for technical people, and only technical people are going to care enough to keep it alive.
I have no problem at all with a "Linux for the Masses" like the author proposes existing (although I don't really see who wants a warmed over Windows clone). Its the idea that all other Linux systems must be sacrificed and the entire existing user community alienated, to attract the people who care least , that I find disturbing.
On a somewhat more minor point, 'usability' means a lot more than UI design, and is not that easy to disentangle from implementation issues. Some of the worst systems I've seem had their UI developed separately by a 'user centered' individual who unfortunately had not understanding of the application domain. Users are not all the same - probably the only person who can do UI design well is someone who understands the application from the user's perspective, not someone who just thinks they understand 'users'. Oddly enough, that person is sometimes the programmer.
Now for some pickiness. Windows is really a pretty poor example of how to do UI design. Most Mac applications, and lots of NeXT ones are much better. The point of window managers is to manage windows, not to read mail, therefore to demonstarte a window manger you show a picture of lots of windows. Seems kind of obvious - even the author's typical user (who seems much stupider than anyone I've ever met, if he gets information overload from looking at 10 pictures on the same screen) should be able to deal with that.
The author's belief that users should develop the user interfaces rather than the programmers is a fallible and misleading suggestion. I haven't encountered a user developed UI that could be credited as the state-of-the-art human computer interaction. Indeed, there is a trend in disabling customization features for the commmon user because they can create distracting environments.
UI design is a very difficult and technical problem which requires profession in computer sciences, linguistics, human form factors (ergonomics), graphic design, etc. While it is true that the UI design obligates a team comprised not only by programmers, it by no means implies that users can be UI designers.
I suspect that a causal user can only be involved as the subject of experiments or beta-tests. Nevertheless, the member of a UI design team would need to be a very good user himself, for him to understand issues closely. Also, I don't think it would be harsh to state that a good programmer has to be a good user.
Also, the definitions and examples in the article are insufficient. I see little light of history and UI design academia there. Tasteless.
On the other hand, it is true that Linux developers have not been very successful. Surely, GNOME and KDE sometimes look like rip-offs and E is entirely a desperate matter... But this doesn't mean ppl are not good programmers, it's simply that UI design is sophisticated task and it must not be taken too lightly..
--exa--
the stupid plug and play monitor issue. (You know how windows automatically detects the proper settings for a monitor)
;)) This is even after I tuned it a bit.
This is one of the most annoying things ever.
I'm running 800x600 with something like 30khz x 50! hz!!! It flickers like crazy. My head hurts after looking at it for an hour. (This is why I now prefer the console
I did a little research on this and "Plug and Play" is actually a well defined IEEE/VESA standard. I looked it up on their site and the docs on the spec were pretty expensive (like 300+) .
Is this going to get addressed in XFree 4.0??
I still think that the operating system is one of the most important pieces of the system.
Yes, you can train people almost anything, but we should lower the learning curve. This is what I think the article is getting at.
Btw... i dont like your metaphor. I see it more like this:
OS = road/highway
App = Car
The road is an important part of driving most of the time. Unless you're off-roading, then you dont care what the road is like. (Off-roading ~= allowing users to not touch the os in the background. Then the OS doesn't become as important to the user as the actual application)
But most of the time the OS is very important.
Linux is not a home OS for the mass public and should not be unless we want to pollute the very essence of what makes the OS such a wonderful thing. Tod is right in the sense that one interface and clean consistency in approach is what makes a great interface for the general public. The sad part is there is already an interface like that on the market. People who want the easiest cleanest interface should go out and buy a Mac and then shut the hell up.
The deal is that those are not the kind of people that use Linux and they are not the kind of people most Linux folks want to see using the OS. The kind of people that use Linux want choices and opportunities. They do not want the easiest way out but the most flexible and powerful way is the only way for them. Making the interface easier to deal with while still keeping choices available for the masochistic or the technically adept is what makes the Linux OS such fun for the little geek inside of us all. The whole community should back off the insanity of trying to create a mass appeal OS and focus on the server, network and programming side of the system that makes it such a powerful and joyous choice for the hardcore power users out there in the IT world.
In closing, do you really want your mom on your computer? I don't. I have enough trouble dragging my wife off the 95 box long enough for me to play a game. Instead she is chatting with other young moms talking about the last time their kids took a poop on their own. I want them all off so I can play the latest Windows games. After all, if it was not for the games it would be her machine to muck with as she pleases and I would have the Linux box to myself.
ACK
That's why I believe we should change the desktop metaphor to the room metaphor.
/var/spool/mail/user"
;)
#include "argument_for_3d_XFree"
like when you get email... instead of:
"you have mail in
a 3d rendered dog runs up to you with a message in it's mouth, barking (optional)
or
the mailman knocks on your door.
Real life metaphors like these will kill the learning cuve and make good use of those powerful 3d cards
But it's not like one day we'll have the window manager built into the kernel or something. Linux is a very modular OS.
To me, the first half of the article was meaningless nonsense. The second half argues, in essence, that Windows is the current "OS for the Masses",a fact that retroactively validates the Windows philosophy. And since the philosophy is valid -so the argument goes- Linux must buy into it in order to compete.
IMHO, this "Linux for the Masses" argument boils down to copy-catting the philosophy of an operating environment that assumes the users are dumb, and produces more dumb users as a consequence.
all your problems start to look like nails.
The Unix command line interface solves many problems better than most GUIs, and until I used NextStep a few years back, I thought GUIs were unintuitive toys that got in the way of real work. NextStep was both intuitive and unobtrusive; in fact I never once needed to drop to a shell while using that system.
To quote Larry Wall, "There's more than one way to do it."
GUIs make uncommon tasks seem ordinary while command lines make common tasks easy and repeatable.
There's a horrible attitude that's quite pervasive in the threads above and it's one of pointless elitism: that Linux should be for geeks only, if you make it easier to use then you get more and stupider users and you lose configurability and the ability to do the complex things you can do now.
I haven't actually seen much elitism on this thread. There is a serious problem with the approach the author is advocating though, and perhaps you are mistaking this for elitism. The point is that Linux has succeeded because it is a good operating system for geeks. If we do what the author wants, and ditch the open source thing, and all the choice in toolkits/wms/shells etc., to pander to the lowest possible common denominator (and let me point out here that I have a higher opinion of the competence of most users than the author does) we will lose the very people who keep Linux going. The people who actually care what OS they use.
This is not only a reason why the approach being advocated is a bad idea. Its also exactly the reason why it won't happen. Linux developers are going to keep developing things they like, not things for 'average users'
Well, The GIMP *does* kick ass. I won't deny that. It was what I learned image editing on, actually.
.. I can't see anything short of an act of God getting these lovely things ported to Linux. Sigh.
.. but, Photoshop + Illustrator are such resource hogs that I can't imagine running them under emulation unless you had some *extremely* serious hardware.
I bought Photoshop after I'd already been using The GIMP for several months, and it was kinda funny to see just how much of the GIMP's interface was stolen from Photoshop. Made it a lot easier for me to learn Photoshop.
Hell, Adobe products are the reason I'm dual-booting NT. Illustrator and Photoshop
If you have an extraordinarily kick-ass machine, you could install VMWare & run Windows inside of Linux
Thank goodness this man isn't capable of dictating the path Linux should follow. He wants one distribution!
Linux's strength and beauty lies in the ease with which it can morph into anything the market wants. Let RedHat go consumer; I'll keep running Debian (or FreeBSD). All consumer users can see RedHat consistency, but there'll be other options if the market wants them.
This man should look into 'evolution' and see how it applies to markets.
While I agree in principle with a lot of the material covered in the article, I'm very concerned that these measures might go too far. Linux does need to be made easier to use - even for someone such as myself who is happy to use .rc files and so on, many (semi) routine tasks such as printer configuration, fs maintainance etc... do would be a lot easier with some kind of standardised interface. Similarly, standardisation of aspects such as the widget library used by applications, or the standard keyboard shortcuts for poular commands would be useful for inexperienced users and would not really be to the detriment of developpers and the likes.
Where the problems would start however, would be with the elimination of choice. It is one thing to offer an easy-to-use version of an application (eg a MS-Notepad style editor as well as emacs), but it another to entirely sacrifice more powerful features for ease of use - to take an example from the text, to get rid of the CLI would be stupid, and not even windows has gone quite that far! In short, such a move would be getting rid of one of the one of the elements of Linux which sets it apart from other operating systems.
Another point over which I have to disagree is the insistance that the interface should be designed from the point of view of a novice. This clearly would alienate experienced users who like to be able to use shortcuts, evaluate shell expressions and so on from within their programs. This real trick is to achieve a compromise whereby novices can make progress but more advanced commands are not removed from the interface. As well as the obvious problems, this can also cause new users not to utilise the full power of the system. Besides, simple interfaces can be quite patronising, as I'm sure that anyone with experience of the MS Office Assistant wil agree!
One thing which must not be forgotten, is that although the majority of computer users only want to write letters and send email, the developers and 'power users' cannot be forgotten. The proposals in this article would effectively remove any advantage that they see in Linux over Windows and would force them to migrate either to other OSs (either Windows or the other free Unicies).
I sit here using my Linux box, and all seems uniform because all my window borders look the same. Then I look a little deeper. On my screen right now i've got Motif, Arena, GTK+, Qt, and whatever widget set Eterm uses. Sure they're ALMOST all alike, but they all have their unique traits. For example, if I click a menu in Motif, Qt, or GTK+, it stays down, but if I simply click it in the other two, it pops out for a second and disappears (similar to a Macintosh). Also, the menus look different, the whole app just feels different. This could very easily disorient users, and something really ought to be done about it. Obviously we can't ask people to rewrite all their applications. First of all, the programmers would never go for it, and second it would be too much work. My proposal is that we create a set of wrapper libraries. The ideal implementation would be to allow the user to choose the widget set they want, and suddenly all applications use it. Of course this may seem incredibly difficult at first, because it means creating seperate wrapper libraries for each widget set...or does it? I propose we create a very basic widget set, one that enables you to DO everything existing ones do, but can also be easily implemented on top of any other set. That way we simply wrap this around each set, and wrap all of the others around this, and we're done. I do of course see the two obvious problems with this: it's slow, and it's bloated. My idea was that it would be an interim(sic) solution, eventually we would need to wrap each widget set around each other one, but in the interest of fast development I would like to see my other idear implemented as well. I unfortunately don't have the time to do this, and because I'm posting so late I doubt anyone will see this, but I think this would go a lot way in bringing linux to the masses.
-- Jon Olson
morph@NOSPAM.jmss.com
One point in the essay was that their should be a consistent UI so that moving a file is always done the same way, or other tasks.
If you teach the users what the task is, and the idea behind it, then the interface becomes less important.
As tech support, I don't know how many times I've asked someone to do something like minimize a window, or open a file - the answer is always "huh?". What really gets them past this is when I say "click the box with the line at the bottom" or "double clicky on the pretty picture".
Hmm.. well that would be nice wouldnt it?
Trouble is, even with an 'advanced' GUI like WinNT the user can still make mistakes.
Perhaps we should design a file manager app that knows exactly where a user should drag their files to?
Users can and will find ways to fuck things up. Faqct of life.
And by user, I mean *all* users. I bet even Linus rm's the wrong files sometimes.
-- Stu
I do agree that Windows file copy is cumbersome--
it uses an embedded metaphor, the cut and paste
metaphor for file copying which is a metaphor for
making newspapers in the old days. A person who
isn't good with abstraction might have trouble
with the win95 file copy.
On the mac, it's a little easier. it's very easy
to position windows next to each other, and drag the file over, or use the intermediate step of
the placing the file on the desktop. through the
whole operation, there's only one level of
abstraction.
Somoen will say that you can drag&drop on win, but
it's not as easy. and 95/98 windows take too much
screen space and time to load.
--
why did I mention this? the original point was
that a file command is easier to teach. yes in the
sense that you can write it down, but no, not
really, because remembering symbols is harder than
remembering pictures or actions. The problem comes
when people confuse pictures with symbols.
The word toolbar is hard for a nontechie to learn
because those pictures are really just symbols.
A picture is more like being able to imagine the
file sliding over from one window to another on a
Macintosh.
Don't worry,
There could be a Linux for the masses. Think
about the Univac. Huge supercomputer that took up
a city block and has only the fraction of the
power that a current pc has. At that time, none of
the scientists probably thought that there could
ever be a computer for everyone. It was just too
big and expensive.
But by the early 80s, you saw Apples, Timex, Altair, Atari, all sorts of home computers. Some
had specialized functions, others had BASIC which
is easy to pick up.
What had to happen was a lot of the technical
problems had to be solved before the case could
be closed and sold to the public. when they were,
it was.
Think about the Internet. the raw, nasty internet
is really just a conglomeration of protocols,
FTP, SMTP, HTTP,(and more) on top of TCP/IP. If you wanted to, you could write a unix c program to set up some communication with another computer
using one of these protocols, or even on of
your own. But it's not realistic to ask your
average joe to be versed in them. It's easier to
plug in eudora or outlook and click on the "send"
button when you want to send mail.
The natural progresion is,
1) first the technical problems hav eto get worked
out, then
2) the technology can get black-boxed
(abstraction) to a point where little learning is
necessary to use it.
A wide-spread, highly configurable OS by programmers for programmers is a wonderful thing. We do not necessarily want a homogeneous linux environment, but linux rocks as a developer's platform.
In a multi-platform non-homogeneous world I hope for in the not-too-distant future, linux could be THE development environment of choice, with environments (like wine) and cross-compilers to develop and debug for ALL those other platforms. I would love to reliably go through the entire development cycle of win32 programming without leaving linux. Beyond that, I would like to see the day when vendors do not even consider creating an OS without providing linux-based development tools for linux.
This is the thing I like best about cross-platform solutions like Java or wxWindos, the ability to qrite apps for the other platforms without leaving my nice, power-user friendly, highly customized, unrestrictive environment.
There are going to be a lot of penguinheads who will disagree with this: "But diversity is one of Linux' greatest strengths!" No argument there; diversity is a Good Thing. But having a standard interface will gain a LOT of users who would otherwise be "lost" to the Linux community.
Note that a standard interface isn't the same thing as a single interface. GNOME, KDE, whatever -- those can and should be options -- but a GUI that ships with ALL distributions of Linux would do wonders expanding the user base.
It looks from the posts here as if most people (myself included) haven't bothered to read the author's other writings linked at the bottom of the article. I suggest you do so, it makes things a bit clearer.
It seems that the author was deliberately being extreme in writing this, but has also written another article supporting the oposite extreme !
In the comments I've read (didn't read them all) most people say that Linux will be changed in the wrong direction (i.e. from the command line). Some remarks to things I've read:
- What has a nice OS to do with a GUI? GUI is on top of it! And you can design an GUI the way you want.
- Thus a GUI and a CLI can live next to each other
- Flexibility also includes being able to use the mouse for actions.
- If I write a nice script I gonna use often, I want to be able to put it behind a button and never care about it anymore.
Some other thing. As stated in the article, there are many different kind of users. Geek to dumbo. And the "masses" will buy the best designed distribution, the geeks get slackware or so.
And to respond to this particular comment:
Linux is multi-user, isn't it?
What is the programming side used for in your case? Well designed GUI's for MS?
hey.. you missing something here.. you say convert to riscOS,OS/2 or plan 9.. why should the geeks move away .. they were there first and acculy it was they who built it.. and give it away for free for everyone ho whant's it... I thing this people that have spent 10'000:s of hour to build this OS in the first room and lisen to what thay have to say or they may take there skils and move away..
and after it's good for the OS (mayby not for some users) to not be to simple. If you know just a litle about the computer you can fix it by yourself and don'n need some help and even help someone else that need some help rather than he/she have to call for the sysadmin to ask how to add a icon on the desktop..
after all if you buy a car you dont demand that they should put away the instumentpanel so you don't have to wory about it you learn how to use it instead and become abel to know when you need new gas...
IHMO, the proposal to remove the CLI interface and reduce the user's choices is a major pitfall. It is much better to present the users with a good, useable default environment, so they won't even be tempted to look for other options unless a special need arises (and then, the choices should be available!), than to force them to stick to a particular environment like Windows does just in order to make the designer's and supporter's jobs easier.
"I love my job, but I hate talking to people like you" (Freddie Mercury)
Whatever happened to user choice? Surely all is needed is a simple switch between Expert and Novice mode - much like ICQ, for example, has in its Windows app.
There could also be a simple questioninaire the user could fill out at install time (instead of playing Tetris ;) while the files are being copied across. There would have to be a lot of thought put into it, but general questions like "Have you used a computer before?"; "Do you know how to use the command line?"; Do you know how to use the Internet?"; - could be used to filter out the newbies from the power users.
The answers to this questionnaire could then be used to determine what UI the user would be presented with on first boot-up - for the novice, a simple interface that /does/ hide all the complexity, but maybe with the chance to learn more; for the hacker, all the bells and whistles.
--
bpdlr (posting as AC because I've already moderated on this topic!)
--
calculators have a command line.
btw, whoever thought of supporting postfix RPN (1 1 +) on the HP48 was a genius!
I was thinking of how to intentionally fail my drug test... It would make a good memoir story someday.
I for one liked this article for one simple reason: it addressed what many Linux users simply refuse to acknowledge. Linux is simply not ready for the common people. I don't use Linux, but I support everything about it. Open software is the answer to bloat and antiquated computing; when people get fed up with a way of doing things or something is outdated, the user base will replace it. Bravo. However, for the average user, even intelligent ones, learning to use Linux requires extensive reading, which most people simply don't have time for. Let me repeat, I love what Linux is about, and think that it is a great OS. But all you crazed Linux fanatics have to realize that right now, it is simply not ready for the majority of users. It can be the best OS in the world, but if the learning curve is not steep enough, then people simply will not use it. This is not meant to be flamebait.
(...well, not literally, you know what I mean)
This is a good article, but I think that it represents a throwback to the 'bad old days' when operating systems competed head to head (amiga vs mac vs Win vs OS/2 vs...). The users of one OS looked at another and said, "we like parts of that, but we'd really rather other parts of it look like this." In this case, Windows users crave both the standardization of Windows with the stability of Linux. The proposed solution? Try to shame the Linux developers into making a 'standard' Linux.
This will hopefully never happen. 'Linux For EveryUser' would not be a linux I would use. Say what you want about them, but CLI commands are usually smaller, lighter, faster, more flexible, can be more easilly run in batch (when you need to do the same thing or similar things on large groups of input) and can be more easilly run remotely (through telnet) than virtually _any_ GUI app.
I also reject the argument that multiple distributions are inheirantly bad. Multiple distributions means that if I have different needs, I can select a different distro that meets those needs better. Microsoft has brilliantly demonstrated that the "good enough for most users" solution isn't "best" for virtually anything.
Similarly, the multiple UI argument is both bogus and already satisfied. Firstly, I want to be able to select my own interface. (I'm a sick puppy, I _like_ olvwm -- I don't like all the bells and whistles of E or afterStep, and CDE -er- KDE leaves me cold.) But that is my choice. Locking me into an interface that 'you' have decided is 'standard' (which usually means, it meets _your_ needs adequately) does nothing for my support of the system and little for my productivity.
Secondly, linux already has a standard user interface that is common across all distributions: the dreaded CLI. I can sit on a RedHat or Slackware or SuSE installation, type 'ls' or 'cd' or 'vi', 'find' or 'awk' or 'perl', 'ps' or 'kill' or 'cat', and get the expected result every single time. More to the point, I can use 90% of those same commands on virtually any Sun, HP-UX, OSF (er sorry Tru64), AIX, Irix, or BSD machine and get the expected results! And best of all, I can do it through telnet (or rsh in closed shops) from the comfort of the other side of the office/building/planet! Try running even gmc across an internet VPN.
The point is that choice is good. You can select the right tool for the job. When the only tool you have is a hammer, every problem tends to look like a nail. I guess you could similarly say "when all you have is Microsoft Windows, every problem tends to look like either a labour-intensive impossibility or a GPF waiting to happen."
:)
Some things are not simple. Nor can they be made simple. Sometimes you need clever people to do difficult things.
--
you should read everything on the internet as if it had "but I'm probably talking out of my ass" appended to it.
There's a common misunderstanding that making software easy-to-use means making it less powerful. Many people talk about having to "dumb-down" linux in order to make it usable by the masses. This simply isn't true.
In the HCI field, there's a strategy for designing user interfaces known as "progressive disclosure." This design strategy presents a simple and limited set of options and actions to the user in the first "layer" of the user interface. As the user becomes more familiar and comfortable with the software, more features and options reveal themselves (possibly including a command-line). A really well-designed UI can support both the novice user and the expert. Progressive disclosure works much like a good teacher does; the basics first, then the intermediate to hard stuff when the student's ready to handle it. Designing UIs isn't about making pretty icons; it's about constructing a meaningful dialogue between the computer and the user.
If we truly want to raise the technological intelligence of the world population, then I believe this is the best approach. On the other hand, if we want to keep powerful technology in the hands of the techno-elite, then we can continue to toss new users into a CLI ocean of device drivers and kernal patches while smugly watching them drown.
Dustin Beltram
usrdzign@netscape.net
One of the great things abouot Linux, tho', is that you can pick and choose what you want to install on top of linux itself - you get options.
I'd welcome a distro that didn't have a command line and a version of Linux / GNU that didn't have one either - It's good for those of us that haven't spent much time learning Unix. But that doesn't mean that you can't put together your own selection. Linux can be for Geeks *and* Lusers. it's not bumbing down. It's smartening up. Being better than Windows includes being more user friendly - which is why OSes like MacOS and BeOS are better systems. They're simply easier to use and, in some cases, administrate. That's why I use MacOS and not Windows.
'NT drools like an inbred goat.'
Since it's the only OS that will/has stand the test of time it should be _really_ (not made super-userf-friendly) tought. This will also help in interest of security etc. It is neccessary in an age of information.
I was deeply offended by the suggestion that window managers should only show 2 windows open at the same time. What? people are that stupid or something that they can't deal with many things open at the same time? I thought the whole point of using a modern OS was that you could do many things at the same time. Yes, linux should be more consistent but it shouldn't be dumbed down for people who won't even deal with anything even slightly different than Microsoft Office (which will never come to linux anyway)
---
First of all, I'd like to say that I don't think the author is saying there should be only one standard distribution for everyone, he is saying that the "Linux for the Masses" should be standard and consistent, but that doesn't eliminate choice. I do agree with that. Perhaps there should be a rigid set of Linux standards (more detailed than the LSB would be, perhaps including rules for a standard GUI) so that anyone going between distributions which met the standard wouldn't have to worry about learning a new "look and feel." Now, there are already two pretty good GUI's out there: GNOME and KDE. I believe you can customize both to emulate UI's of other operating systems, but that means emulating quirks as well. Personally, I haven't seen a GUI that really works well. I prefer Windows 95 just because I'm used to it, but it certainly has its UI flaws. Perhaps a "Linux for the Masses" should have a completely new GUI, a paradigm shift even, if an effective one could be created (perhaps one that somehow could have more of the power of the CLI). That's certainly no small task.
I do disagree with the author on some other points--I dislike the idea of hiding functionality to the user. The user should have access to it if he wants it. And I don't think many OS's really handle errors very well. Windows 95/NT certainly aren't much better than DOS for error messages. I think the only thing to hope for there is more graceful error handling.
In short, if there were to be a Linux for the Masses, I think it should adhere to a set of standards set by the community (applications should try to as well). As far as GUI's go, either use GNOME or KDE and let the user pick the "look and feel" he desires, or try to create a new GUI without the limits/quirks of existing UI's. Finally, there's nothing wrong with computer-challenged people using Linux--they won't ruin it for us technical users. I think both Linux worlds can coexist just fine.
...people, for the (Dilbert T-shirt, jean wearing)
people.
First, make it work, then make it right, then make it fast, then, make it bloated!
OK folks, here's the deal: This article was true BS.
/., and "in the beginning there was line command" and get some sleep.
Do I want comptuers to have a good user interface? yes. Do I want my mom to be able to use a acomputer (and preferably Linux)? absolutely.
But guess what? I DON'T USE A COMPUTER LIKE MY MOTHER!! I have been told by people at work (and I'm sure this has happened to all of you, too), "Dang you click/type/use the computer fast!" Do I want a system that gets rid of the command line, disposes with hotkeys, and is just a system of clicks and dummed-down interfaces so I don't get confused?
No way! The biggest problem I have with windows and even my VERY BELOVEED Macintosh is that I ultimately have very little control over the actual system internals. I want CONTROL over the computer. Does my mom need (or want, or even know about) that control? NO! So don't give it to her, but give it to me!
The problem with this guy (as someone mentioned above) is that he is simply validating the idiot win32 GUI: make ONE solution so that everyone works the same way. Totalitarian BS. The guy needs to get a clue, read
For that matter, do I want someone from Biafra or France or Texas using a computer the same way I do? No! I don't want the guy in the next Dilbert-style cubicle doing things like I do. The point with computers is EMPOWERMENT and VERSATILITY. We are human beings, volks, not machines. Every one of us 'thinks different.' If being popular means making a crappy and philosophically unsound system, then dammit, I don't want linux to ever be popular.
I want a GUI that does this:
1) CAN be used in a universal manner by all people with a great deal of consistency
1b) can be used in several ways, in several manners, and in ways the programmer never intended.
2) Abstracts hardware and other issues from users
2b) Gives ultimate control of the system to those who want it
3) Easily configured to the mental patterns and psychology of every person. No cultural or neurological advantages to one group (in other words, no preference for Russian hackers v. South American grandmas, or whatever)
4) Make the system so users will not need help.
4b) Make the system so WHEN they need help, it is easily available. Also, make continued learning, modification, and customization inforamtion easy to find.
To sum up, then, this guy is really a totalitarian: eat you meat or you won't get any pudding, darn it. The point is that humans are INTELLIGENT, CREATIVE people.
It's a great article, it brings up some interesting points, and the people who point out the dumbing-down/elite issues have good points too.
;->
I personally wouldn't want to be limited to one of anything. Choice is good.
I also don't like the tone of "Thou Shalt" and the use of the word "must" in the article.
However... Look at it like this:
There is/could/should be a new distribution called "Linux For The Masses" . It will be locked down. It will always, version-to-version, have one wm, one desktop. It will not boot in text mode, you will not need command line knowledge. It will be easy enough for your mom to use AND install!
If you take it in *that* point of view, then *everyone* could be satisfied.
Ok... so who's going to start working on it?
"Linux For The Masses... Your Mom's next distro"
mindslip
Agreed. It looks like what he's trying to remove, is the actual Open Source way of thinking, which involves having a choice:
To me, choice is good. I can choose to use Netscape instead of MSIE. I can choose to use Linux instead of Windows. Perhaps what we need, is a method to make that choice easy for the end user.
/* Steinar */
(This comment is of course GPLed.)
Designing User Interfaces, be it graphical or not, is not easy, and certainly not technical. The design process itself should not involve technical problem setting at all, which is what most people designing for the various OSS projects are doing. The UI implementation phase is different, but that should come only after designing the UI.
UI design is a world of it own, comprising of processes and thinking models that most people are not very familiar with. Good UI designers are good with people socially, as they're good at figuring out the way people process information in their heads. Some people can't ever become good UI designers because they are too closed to various sources for ideas!
One of the problems I see in the GUI projects related to Linux is that in order to design a good UI novadays, you have to look at Windows users to figure out behaviour patters that people have established and design those in mind, as most people do use Windows. Anything they're not familiar with, ie, not Windows-alike, will make using the UI harder for them. This doesn't mean everything should look like Windows, but you can't go too far from it without losing usability either.
So anybody who absolutely hates Windows (or a Mac) to the point of not being able see it as a viable platform for UI design ideas is never going to be able to make a very good UI. I hope people will relax in this sense a little more in the future..
"Although it is not true that all conservatives are stupid, it is true that most stupid people are conservative."
1. There is no such thing as _One Size Fits All_, if there were, we would all be using Windows.
2. I personally don't want to see Linux developed into a clone of Windows, or the Mac, or the Next. It's uniqueness is what I like about it. CLI and GUI blended together in a configuration where I can choose which interface to use depending on my mood, needs, and the task at hand.
3. I like the concept of a free open toolkit (GTK), but don't like either Gnome or KDE. Both are trying too hard to mimick Windows. If that is what I wanted, I'd use it and not a KDE or Gnome.
4. For what it's worth. There has not been a copy of Windows on my computer at work or in my house for over a year.
It seems most criticism of the article is of this aspect of it. Of this portion of the criticism, people are talking like this would make Linux too much like Windows.
The problem is that the single interface and distro is NOT what makes Windows so crappy. Windows is crappy for its bugginess, lack of speed and stability, and cost. The concept of one Distro and interface is really why Windows is as opular among general users as it is.
From the user standpoint, having hust one interface is less to think about in installing, using, learning about, etc... The average user doesn't want to change distros to use a different software package every day/week/month.
From the developer standpoint, having multiple distros and interfaces means having more to worry about in developing applications for Linux... Will my product work on all Linux Distros?? If not, which versions of which distro?? Do I develop for KDE, GNOME, both?
I like the idea of one distro/one interface... What I disagree with in the article is that the CLI has to go... It must stay and must retain every bit of functionality. Keep the commands the same. I see no problem in letting dum users have a dum interface.... but let the power users choose to use a power interface as well.
People will write anything to get hits to their web sites... and it looks like that is what this guy did. What is the point in contradicting yourself really? you dont accomplish much, other than showing off your ability to debate and last i knew his page wasnt a debate page. sounds like a scam to get hits.
and fewer coffee shops.
I had to stop reading when Windows had a most consistant interface. After I finished ROTFLMAO, I realized this poor fellow hasn't got a clue about UI. Why the 70 other people here can't see it I don't know and THAT has me worried, I hope you all are just script jockeys.
What he does want is a windows clone, apparently using Linux as a baseline. Sorry, I don't buy it.
HCI cannot be a new field, since humans and computers have been interacting since day 1 of the automatic device.
The first example is about websites. Websites are put together by managers and artists. Most are horrible. Think of your top 3 websites, now are all of them like daily news type sites? How many here just use lynx?
The author should read more books and use the web for crimineys sake, such as the interface hall of shame (which if full of the famously consistant MS products). http://www.iarchitect.com/mshame.htm
Also , Alan Cooper - About Face.
The book he used for reference is on no ones recommended list BTW.
I really dislike those of you who want this free pool of talented and hardworking programmers who work on every aspect of your free linux universe to conform to your ideal of a perfect winblows clone. If you like windows use it. If you like linux use it. But stop dictating from the podiom, your disturbing those of us who work.
Yeah I'll sign it...
Joe Robertson
jmrober1@ingr.com
Posted by Barbas:
Linux has broght back power to developers and techys.
I now don't have to discuss with a power user how the system is configured and he will not dare to mess around with my configurations.
He still uses windows, and he can still mess his computer up, but not the server.
This is to point out that for me linux has a server role, or better, a back end role, the foundation of an information system, and that role must be supported by developers and system admins, not users!
regards
What's with you guys huh? :P.
.rc files etc. Do you think this is what makes you an official geek?
I like the ideas behind MS' decision to make NT GUI based. I mean, when we moved to CLI, we abandoned nice LEDs with flick switches. Eventually, computers will be sooo powerful that text is pointless. However, Windows still has the command line that runs ontop of the GUI. It may not be good for lower class machines (which linux excels on) but it's nice for machines where you can get the intial resources for the GUI.
Making Linux easy to use shouldn't alienate hackers and the dilbert shirt wearing community. How can it? Just cause there is an easy interface doesn't mean what's underneath disspears. Take NT (again), you can basically do everything you would do in Unix with Cygwin and other ported utils. But it's a GUI based OS. Open up a cygwin box, and full screen it and then you have all your 'power' again.
Personallly, I prefer to run everything from a GUI. I use Xfree (even tho it's unstable) in Linux and run shells within it. What's there missing from that that you would have if you ran without X - except memory and some cpu time which is negliable with modern pcs, unless you plan to run netscape - then you're stuffed no matter what hardwar you are bestowed with
IMHO Linux needs a better GUI engine, X has crashed more times for me that NT ever has (couting non GUI related crashes).
Linux needs so much more simplifying. Automount is a good idea, but doesn't come standard with any distribution i've tried (i'm suprised redhat doesn't do it - they've simplyfied other things like enabling END and HOME keys in bash).
I don't understand what fun some of you guys feel when you manually mount a file system. Geee BIG DEAL - doesn't the thrill or ego run out somewhere?
Sometimes I have to wonder - you guys spend too much time doing mundane stuff (to the technically minded - but not to joe normal) like mounting, editong
Like I've always said. I prefer to spend my time doing interesting new fascinating tasks, not doing the same old thing over and over and over and over and over and over again (wow, good brain excercise NOT). The OS should do it, and maybe for some things, the OS should learn what I want to do, and suggest it (much like Windows is starting to do) at appropriate times.
Come on guys,m get off your egotistical butts and start working on an OS that everyone can use. And don't think that cause you do things manually that you are geeky and cool. And don't think that GUIs and easy user interfaces means everything's easy (or that it's bad for technical people either - someone has to always make these easy interfaces with non easy things).
I'm a SuSE-based newbie who's put a lot of
time into loading and learning Linux, and
this article is 100% dead-on.
After using computers for more than 20 years,
I shouldn't lose a full day learning to mount
a drive, or trying to untar something.
Yes, that means I'm not as savvy as a lot of
you guys, but people like me (or, perish the
thought, dumber and less patient) will determine
the OS propagation path going forward.
Alas, Bill Gates figured this out a long
time ago.
This guy is not a techie. He says things but does'nt even try to give any proof. For instance, he points out that word97 interface is overwhelming. Ok, it does have alot of icons and buttons and menus. Then he goes on to say that CLI is overwhelming. WHA?? CLI is just a prompt, stupid. Now why the hell is it overwhelming??
On the contrary, CLI is the easiest to use and most consistent interface known to man.
1. Easy to use. There's just a line on the screen where you type stuff in. No toolbars, icons, menus, pupup boxes, et cetera. Sure, most users will find GUI easier to use, but that's not CLI's fault or GUI's advantage, as you will see in my point #3
2. Consistent. Every command is a string of text, the leftmost word is the name of program and the rest are options. Options can be found out by typing command --help. Burning a cd or unzipping something or playing an mp3 is accomplished in a very similar manner. Unlike GUI!
3. So why is GUI dubbed as 'easy to use'? few reasons:
a) Pretty. Nothing's wrong with that but after 5 minutes playing with a window manager themes I suddenly realize i need to get some work done and that while I'm working, I'm not looking at the background through a transparent aterm anyway. Back to console.
b) Newer. At first computers didn't have enough power to run GUI's. Now they can, so we can use them. CLI is old technology, lets embrace the bleeding age, get on with the time, make progress. Use icons and buttons.
c) Companies have to push something, create hype. It's hard to do with CLI's, they all pretty much look the same. It's hard to create hype around something that looks liek the next thing. Besides, most of the things people need to do with computers can be done with a 386 running linux and no X. How is Intel going to sell Xeons? How is microsoft going to sell New Version? You can change GUIs all the time. Make the animate, slide out, lit up, dance a jig. Sell the new version.
d) GUIs have help systems, wizards, animations that show you how to do stuff. CLIs are something that we're supposed to read thru manuals to understand. Because they've been typecasted as 'too complex for average user'.
So what do we do? Let's make CLI easier to learn, for start. Most useful things people do in console can be abstracted to a few pages of 'cheat sheet' (i intend to make one soon). Something has to be done about manpages.. these things are often incomprehensible.. There should also be a search where each command has some keywords and you can search for 'space on harddrive' and get df. Some commands should have better defaults. ie find. find myfile.* should work.. - Rainy s/spring/mindspring/
Many Windows file not found messages i get normally are caused by apps accessing non existed dlls etc...in which case i do get the filename i'm after.
Where do you get a simple "Cannot find the file specified"?
Did you specify a file or did an app do it?
If an app did it, it should have trapped the error windows sent it.
Most of the readers seem to be unable to read
so I wonder what they are frothing about, they
couldn't have read the article.
The author isn't going to take away your CLI or
your favorite window damagers or your favorite
distro or anybody's freedom of choice or the
poweruser interface. He is suggesting
*A* *NEW* *DISTRIBUTION*
that, in want of a better name, is called
Linux for the Masses. A distribution that
builds a GUI that "everybody's mother and
accountant" can use.
Now repeat after me: you don't have to use that.
HCI isn't about building cooler looking widget
sets or choosing sexier background images.
Linux is a kernel. You can write whatever
set of utilities, daemons, and whatnot you
want around it.
As the writer, I am also quite sick of the
elitism of most red-eyed Linux nerds. Don't
get me wrong: I myself use Linux. But I also
use *BSD. I would use NeXTs if I still had
access to them.
First and foremost I am a heavy-duty CLI user: my shell is zsh, my script language is Perl. And I
count myself as a power user: 12 years now
doing UNIX, 10 years as a "power user" (system
admin in one or more machines.) But if I find
a good CLI, I use it. (This phenomenon is very
rare.)
But *demanding* that the user interface of
Linux (or *BSD) stay user-hostile and painful
is pure lunacy and advocates of such such be
sentenced to end-user telephone support for
the minimum of three years. They won't last
four weeks. Those claiming that a user that
can't handle more than two windows simultaneously
is a moron should take a look in the mirror
and ask themselves *why* would a Joe Random
Luser *need* more than two windows (applications)
simultaneously.
This is a good article, but the author is missing one point (one that is important to me, anways) - Linux is not an operating system, it is a kernel that is used to build operating system, mostly unix clones like RedHat Linux. There will most certainly be a LFTM (probably redhat) but the different flavors are a good thing, since they maintain developer interest. Us non-developers can pick the one that is easiest to use, and eventually the LFTM will appear. I personally would like to see a non-unix-clone built on linux and the GNU tools (as a matter of fact, if someone else is interested in this contact me), but the freedom of the OS is what will drive LFTM
gg
gg
Dr.Whiz-Bang
If these Amiga guys get their act together then we'll see a linux distro that actually meets with many of the article's suggestions. Problem is, apps written for this OS won't work with the other linux distros. It might even have a proprietary interface instead of going 100% GPL.
---
I agree completely! The fact that the initial GUI is simplistic does not mean that you couldn't delve into the advanced funkiness if you wanted to.
I'd like to see a wm that offered three "stages" -- beginner, advanced, and customized. That way newbies would have something universal across distros, mid-level folks would have access to more complicated features, and the enlightened have everything they want.
How is this different from what we've got right now? Well, for one thing, it would be easy to switch between GUI levels -- so if a newbie comes back to their machine and the MIS drone switched it to Advanced, the newbie would still be able to get their simple stuff back into action. Switching between GUI levels would be almost automatic -- going from Beginner to Advanced wouldn't require any installation or configuration whatsoever. Switching all the way to Customized could require all kinds of installation/configuration right off the bat.
None of this is really difficult, and I think it's something worth thinking about as the window managers mature.
And it doesn't "dumb down" Linux -- your precious CLI and kernel patching is still there. It's just that not everybody wants to think about patch levels, or even about how to untar something. There are millions of users that don't even like computers for their own sake -- they like computers because they help them do some other job. The same OS can accomodate both the basic user and the hackerz.
. . . unless, that is, this "problem" is too complicated for the hackerz to solve. We're going to get a journalling filesystem -- why can't we have a decent, consistent UI as well?
Linux for the masses will be consistent across all platforms. No multiple distributions or window managers. One and only one of each. That's exactly what I love about linux... A GUI a day, the freedom to choose a distribution for your needs and an interface for your liking. The way he describes "Linux for the masses" is to transform Linux into Windows. We don't need that. We already have Windows.
Please don't embarrass us again. I'm literally terrified that this poor guy
will get thousands of nasty e-mails from a bunch of techno-bigots (his term).
He's absolutely correct in every way. I fell into a trap a few weeks ago,
where I was praising Linux, up and down, to everyone. One of those people was
my mother.
She asked me if I would install Linux on her computer, because she's tired of
windows crashing all the time. She's also tired of "gackling:" a term she
uses to describe windows poor memory management, which results in that funny
hard drive sound. Much to my surprise, I told her that she wouldn't like
Linux. This, after I had spent so many hours praising Linux to my little
masses. The fact is, although she is extremely intelligent, she probably
couldn't make Linux go. All she wants to do is send e-mail, surf the web,
make posters, scan things, and make business cards. These are all things I can
do in Linux. I'm not convinced she could. At least, not without a
never-ending stream of panicky phone calls.
I talked my roommate into running Linux as well. He informed me last month,
that if it wasn't for having me around to ask questions, there isn't a chance
in hell that he'd run Linux. See, unless you want to spend several hundred
hours reading HOWTOs, Linux just won't work when you need to get things done.
Currently, my productivity is well over 10x my windows productivity. This may
be because I love Linux, and am able to do almost anything in it. The poor
interfaces don't bother me at all, because I can just design my own from the
things I d/l off the net. Could my roommate? No. He uses fvwm. *shrug* His
machine... Could my mother? I'd have to set up gnome for her or something.
She still couldn't get the scanner to work.
Linux needs a mom's interface before I would ever dare install it on her
machine. Linux does not need to become windows. It only needs a simple and
consistent window manager. Then I could install it for her and she could
happily run her programs without ever rebooting. I'd still have to install
because of the install process. It seems simple to me now. I could do it in
30 minutes if that machine was fast enough. To my roommate though, it's about
200 very difficult questions.
Jet (jettero@.nospam.yakko.cs.wmich.edu)
Easy Interface = Wide Usage. Period.
Tell that to Apple's market share.
No, this isn't a troll. I'm just trying to point out the fallacy of an assumption like that.
Mr Burgess seems to be falling into the "Linux is the panacea to everything trap". There's nothing in the article about why Linux is the OS for the job he's looking to do. Basically what he wants is "Windows Done Right (TM)" and whatever the current media-favourite non-MS OS of the day is, his point of view will latch onto it and plead "but you should be doing it THIS way!". This isn't an article about Linux at all, it's an article about Windows -- specifically about its failures in UI and in cross-platform consistency and availability. -- chutney ferret (soon to be registered)
As Linux has already demonstrated, CLI and GUI are both necessary. You wouldn't want to GIMP from a command line and you wouldn't want to do anything involving redirects and pipes through a GUI.
.foowmrc or whatever file. Those graphical config utilities are what we need to be aiming at today. They don't have to be as universal or expressive as the textfiles, but they have to be there.
What we need is a migration from textfile-only configuration files to textfile-or-gui-generated configuration files. Mom (or even a one-time techie user) can toss together a configuration for Foowm from a graphical utility, whereas Joe Superhacker can edit the raw bits by hand with SQUID if he wants to.
In the end, GUI vs. CLI is a question of what makes sense, and programmers have as much of a feel for usability in this regard as anyone else because an interface should appeal to the lazy (give me the features I want easy and nearby at the toplevel, complex thigs buried further down, and even a geek needs help sometimes).
Where this breaks down is in configuration, and that's where unixen all lose -- my wm should have a graphical configuration utility in addition to its
So how do we make a *distribution* any moron can use? I have a few ideas:
- Hide the CLI. tcsh is just a program, so bury it in the back where users aren't likely to look. That way the gurus can find it if something needs fixing, but the average user won't get confused.
- An RPM-esque binary distribution format with GUI hooks. That way people using a GUI-only distribution can see feedback, while CLI programs can still extract/install the program just as easily.
- A password-optional system. Users without passwords should only be able to login from the console, but for people without their own home LAN (most people?) that shouldn't be a problem. They should just be able to click on their name (IRIX-esque) and be logged-in (or asked for a password first, for those who have one)
- A single, consistant desktop environment. I don't think all apps need look/feel identical - people are used to differences in different programs - but the administration utilities and core programs (email, web browser) should meld nicely with the desktop environment.
Remember, nowhere in UNIX does it say you have to have a CLI. Everything is configurable and a distribution can be made to satisfy the "user on the street" without hobbling the entire OS for the rest of us.Or we could just come up with a second OS for end-users only :)
Ita erat quando hic adveni.
Many comments have pointed out holes in the arguments. I won't repeat those but I will give the one thing I remember that my lecturer said to me when I first learned unix.
'unix is a sharp tool, you get all the power and precision of a scalpel as well as the capability to cut yourself and bleed'
To this I will just add that this is case of different tools for different people to do differnet tasks. Some tools were never designed to take an edge and some are useless if blunted.
What the author described is a lot like saying give them Be. You can do all the web, email, letters to Grandma and quake that most users want (and from what I've seen a whole lot more that most users don't need but developers will love).
If I was starting to write my PhD thesis now, I may well be choosing Be rather than linux as my platform.
It's interesting to note one thing about articles like this is that the author(s) attempt to provide a direction for the furter development of linux and its surrounding applications.
Ones first thought is that "who are they to attempt to dictate where linux goes from here", and ones second thought is that is the whole point behind linux is that they are free to try.
A freedom that Microsoft or any other OS vender doesn't give its customers. Linux is the OS created by us and for us, and I think one of the reasons that journalists are starting to get into linux is that they can do more than just comment on the revolution.
Linux was designed to be practical and useful. When Linus first started working on the system, he was working to provide a system that would allow him to access the University of Helsinki's Unix machine via modem.
If people are interested in developing programs that will produce LFTM, more power to them. I don't use a Mac or a Windows box because I am not interested in using an OS that deliberately limits my ability to use it. Yes, a GUI is very limiting. Think about this every time you see Windows delvier a meaningless error message, such as: "Cannot find the file specified."
To which I respond "Which file ?!? Tell me!"
I would not be interested in using a version of Linux which had no CLI, delivered meaningless error codes, and had no development tools. Most users don't want this level of complexity.
What is needed is software which satisfies the general user's demand for simplicity, but allows technical people supporting that system to actually work with the OS instead of against it. I believe that Linux will eventually satisfy this goal.
unix must be taken out of linux
No - unix must be made invisible. I can do this now.
linux is poorly designed for the end user
Linux can be made into an appliance anyone can use, but they will have very little freedom over it. This is very attractive to bussinesses, but does not solve the home user problem.
The problem is not "taking unix out of it" or any nonsense like that. The problem is system administration. With any unix system, someone has to be the admin. That is the problem. I doubt that linux will ever solve that problem entirely, but I think enough progress has been made so that it will be attractive to most people who have some curiosity and intelligence. Windows does not solve this problem either - not even close. I don't know how many times people at work come to me with their fscked windows machines. "What did I do? It just stopped working." they ask.
Designing a UI for people who hate computers is frankly, a total bullshit idea. They need appliances, like set top boxes, not PC's. If they want that level of ease and hand holding, they're going to have to give up the freedoms that we enjoy. That is a fact.
support gun control: take guns from cops
Who says EVERYONE should be able to install and set up their own computer? Some people do a lot of work on their own cars, but most leave it to a professional. Why shouldn't computers be the same way. We need to grow that profession.
"Your Mother could us it"
When she was 69, my brother and I got my mother her first computer. She uses it mainly to exchange email with friends and family, and play a few card games. Occasionally she bashes her head against it trying to use a database, but not really getting too far.
Her first computer was a Windows machine, and I was her support. She locked it up regularly, largely because she had no feel for the machine, and figured if one mouse click doesn't do it, several more in rapid succession might. Eventually the machine got outdated, and no longer kept up.
Her second machine was a Mac, at my brother's urging, since "Macs are easier to use". She uses it the same way as the Windows machine, and locks it up regularly, too.
Had I known then what I know now, I would have had her get a newer Wintel machine instead of the Mac, and put Linux on it. I would have set the machine up for her, and put a button bar on the desktop that would do everything she wanted to do. Then I would have locked down all permissions to keep her from hurting herself.
This machine would serve her needs better than either Windows or Mac, because she would have a professional (me) to take care of it for her. Even better, since I'm 600 miles away, I could just arrange a time for us both to be online, and telnet into her machine to do maintenance.
This paradigm doesn't exist in personal computers today, but it needs to. Nor did this paradigm exist in the early days of the automobile, but it was an essential part of the widespread acceptance. (Early 'car adopters' HAD to be mechanics.) Come to think of it, this is the way a lot of business use is, today. We need to move this mindset into the home computers, as well.
Easing the administration job so it can be offered at a reasonable price is the key.
I often have to provide tech support to Windows 95/98 users. Describing icons and menus to the remote user is a distraction and a time-waster. I'd estimate that 95% of the time, the first thing I have the user do is open a DOS box so I can tell him exactly what to do to get his problem fixed ("Now, enter D-I-R, that's delta india romeo...now press the spacebar..."). Isolating and fixing the problem often takes a handful of commands and a little reading on the part of the user ("OK, it says 'volume in drive C has no label...'") but this saves me and the user a lot of time and frustration in the long run.
It would be expensive and frustrating (a nightmare?) to try to support an OS over the phone without the ability to dictate concise commands that allow no room for interpretation, and usually return only the information required. Any Linux distributor who tried to eliminate the CLI in order to produce a "distro for the braindead," would either be forced to charge unrealistic prices in order to cover the additional support costs, or go broke.
slashdot broke my sig
I agree with many of the points of the article, but disagree with some others. As other posts have pointed out, the author's previous articles take an opposite viewpoint from this one, so perhaps he is just painting the two extremes that the Linux community has available.
Users will never need to know Unix to use Linux for the masses. I agree that it is important that a casual user not have to understand Unix to use a Linux system. There has to be at least one bulletproof point'n'click interface which maps fairly closely to the established GUIs that new users will be familiar with: Win 95/98 and/or Mac. Note that this is for the casual user - a CLI should still be available for the user if they want to explore more of the capabilities of their system, or if a more advanced user needs to use the system for something.
Common system tasks will be automated. Automating common system tasks is a good idea too - the problem is that a network OS has a lot of system tasks that have to be running for 'net connectivity, and knowing which ones to run is non-trivial. People criticize Redhat for setting up too many daemons to run at installation. In a certain sense, they have automated these system tasks, so that the user doesn't have to set up inetd manually. The tradeoff is that this may make the box less secure. I'm not sure how much of the administration you can safely take out of the user's hands without making dangerous assumptions about their planned use of the system. Of course, the casual user probably won't be installing Linux on their own anyway, so maybe this isn't as much of a problem. As far as common system tasks like mounting a floppy, etc., these should be automated from the point of view of the casual user.
No multiple distributions or window managers. I don't know about this one. I think it would be safe to say that within one large installation (corporate office, university computer lab, etc.) the distro and WM choice should be consistent, so that users don't have a learning curve to use each other's machines. I don't see why we have to restrict choice when providing Linux to the individual consumers, though. Right now home users are running DOS, Win 3.1, 95, and 98, and MacOS. They already have a learning curve to use each other's machines. What will probably happen is that most Linux users will end up installing Redhat and using the default WM, and that will end up being the consistent look and feel for casual Linux users. I don't think it's necessary to remove the choice of other distros or WMs for this to happen. I politely disagree that flexibility is a fault; forcing too much flexibility on a casual user is a problem, but not providing flexibility for the advanced user is a bigger mistake.
My biggest complaint with this article was this: it isn't a mistake for the window manager screenshots to show multiple applications running at once - that's the whole point of a WM, isn't it? If the user is only supposed to run one thing at a time, then they might as well be running DOS. Sure, most users still only run one or two things at a time, but that's exactly the reason that WM screenshots should show many things running. A new user can look at that and realize that their computer is more powerful than they had expected, even if they don't recognize everything that is running. This is a powerful feature even for casual users, not something that should remain the province of Linux gurus.
Your right to not believe: Americans United for Separation of Church and
What is Todd going on about? The free software licenses that make Linux what it is pretty well prevent most of what he is proposing. The point of the GPL is to give freedom to programmers. Do you think we will give up that freedom for the sake of a consistant "look and feel" - especially when we're not getting paid?
Why did those of us who use linux start using it, anyway? For me, raised on DOS/Windows, and not knowing that any other os existed (except macos, of course), my first experience with linux was at the same time frightening and exhilerating. Frightening because I had two pre-configured machines that I was stuck administering with 0 prior experience, and thousands of miles away from anyone to help. Exhilerating, because as I learned the linux command line I could feel how powerful it was. No more crashes. No more fuzzy dos error messages that don't tell you anything. Just solid, powerful computing that does what you tell it to. It was like a breath of fresh air when you've never breathed it before. There really is something out there besides Microsoft crap!
I'm not a programmer, but if we do as this article suggests and kill the cli, ban non-redhat distros, and combine gnome and kde into one synonymous monolith with a pretty interface and automated tools, why should I use it? Hell, most of the programs I want to use are already available for windoze, if linux becomes a clone, what's the point?
I want to see linux achieve mainstream, but not at the expense of its soul, as it were.
Usability in the sense of this article is a trade off with functionality. An extremely "usable" system might consist of four well-labelled buttons to click on. Of course, it could only do four things. The other end of the spectrum is the command line interface where there is no limit to what you can do, but usability suffers.
In general the more functionality you want the more training you need. The strength of linux is that it (potentially) allows a user to be anywhere she chooses on this spectrum of functionality versus simplicity of use.
An interesting illustration of this strength is that Microsoft is now coming out with a special version of NT which has no GUI -- presumably for things like server farms or compute farms. Linux, by contrast, has always had the "feature" of "no builtin GUI." NT having integrated the GUI in the name of usability has to produce a whole new version of the OS to add the functionality of removing the GUI.
Linux can stand some improvement at the usability end of the usability/functionality spectrum, but forcing everyone to the same place on this spectrum -- the least common denominator -- would be a terrible mistake and quite frankly there is no danger of it happening.
The bottom line is that least common denominator defaults may make sense, but removing choice is always a bad idea.
Okay, this is going to sound Ultra-Elitist, but here we go:
Why are so many people concerned with bringing Linux to the masses? Most of the people who currently use Linux use it because they found it a useful tool for what they do, or because they found it interesting, or just wanted a system that was more stable. Regardless of the actual reason, the underlying reason that exists in all these cases is that the user went to Linux because it worked for them.
Now, a lot of people are talking about how we need to make Linux "marketable" and "ready for the masses". But why? The masses are happy where they are. They don't WANT to switch. Quite frankly, they SHOULDN'T switch if what they have works for them. Just because you or I feel that there is a better OS for them out there doesn't change the fact that they are happy where they are, and until there comes a time when they express a wish to use a different OS, we should leave them alone.
I'm all for having Linux and BeOS and *BSD and any other OS visible to the general public, and available if they want to use it. However, I am very much against the idea that it is our "duty" to make Linux usable by the masses. Linux doesn't have to be incredibly difficult, but at the same time, as a programmer, I have better things to do than try to dumb down a powerful OS so people who were never really intended to use it can use it without having to learn. If they want to use Unix or Linux or *BSD, they can learn it. If they don't want to learn it, they can use an OS that is designed for them, such as Windows, MacOS, or BeOS.
It comes down to there being different OSes for different purposes. Sure, I'd like to see Linux thrive. I would love to walk into my old high school to find the Win95 machines replaced with Linux machines... but only if there was a valid reason for doing so. Putting Linux on a computer just for the sake of putting Linux on a computer is wrong. Putting Linux in my old high school to teach programming classes is a good idea. Putting Linux in my old high school just because you want to replace Windows even though the Windows machines are working fine and the students couldn't care less about an OS and they can do everything they need to do and more is a BAD idea.
Linux is not the solution to everything, and trying to make it so is going to just cause problems. I'm not saying your mom or your grandfather shouldn't be allowed to use Linux. I am saying that your mom or your grandfather should use Linux only if there is a real reason to do so, and even then, they should learn how to use it. If all they need is email and the internet, get them Windows. If there are stability issues, og with BeOS.
The bottom line is, Linux was not designed with the desktop in mind. This is not to say it cannot be used as a desktop. I myself use Linux as my desktop machine. But if all a person needs is a desktop, you'll do a far better service to them by pointing them to BeOS than to Linux. I'm not saying you have to be a power user to use Linux. However, if you aren't going to do anything but surf and read email, most of the compelling reasons to use Linux will be lost on you. At that point, you might as well be using an OS designed with a GUI and ease of use in mind from the start, like BeOS.
Just my $0.02 . For now, I'm out. Flame on.
-[Blaine]- "'Oh dear,' says God, 'I hadn't thought of that,' and promptly vanishes in a puff of logic."
I set up a Linux box for my parents (in their 70s). It's running WindowMaker with wmppp, Netscape Communicator, and gicq on the dock. I added a docked shutdown command (sudoed) and put enough games and Maxwell (a wordprocessor) on the menus to satisfy them. Their user training consisted pretty much of, "click the right button to get the menus," "click the big X icon to shutdown, then wait till the screen says system halted to turn the computer off," and showing what each application did. My sisters want me to put Windows on the box because they don't know how to operate it, but my parents are happy as clams.
Doug Loss
My mother has a computer...
She runs windows and Linux (mandrake - which I installed to make my
father happy..)
Computers will _NEVER_ be simple enough for her to use, as evidenced
by this exchange.
Mom: "Your aunt just sent me a letter she wrote in WordPerfect, but I
can't open it. When I go into WordPerfect and select OPEN, it's not
there."
Me: "Well, where did you save it? You'll need to tell WordPerfect
where to look for the file."
Mom: "Oh God, that's horrible, I can't do that - it's all too
complicated."
Someone who WON'T (not can't, but refuses to try to) understand
directories isn't someone who will ever be able to use a computer.
fully. "A system your mother could use" is _NOT_ a good yardstick by
any means.
If the author wants to create a distribution
oriented towards dumb new users he is free to do
so. He could design that distribution so that all
applications have a consistent look, there is no
command line and no choice of window manager. All
that can be accomplished by creating a Linux
distribution without the need to change Linux itself.
A GUI is good for simplifying common, well-defined tasks. If you need to do anything out of the ordinary that the GUI designers didn't think of, then forget it.
In short, a GUI makes easy things easy, and hard things impossible. You never want to totally throw it away.
Of all the comments I've ever posted, this is definately one of them
About the article: There's this stereotype of programmers lacking any aesthetic sense; one that has been made worse by much software in the Linux world. A programmer without any real-world aesthetics is next to worthless, IMO.
About some followups: The attitude of trying to keep things difficult to use because its k00l in an "I thought The Matrix was the best movie ever made" sorta way is something that needs to go. There's a reason that clue-ridden insiders like Jamie Zawinski have been hard on Linux. Even Linus has smacked down Emacs on Usenet. What's the purpose of a "let's make it worse" attitude?
The right direction is the Darwin principle. Let users create what they think will be nice for them. Let those who use provide insights into what they want. Let designs compete for users who give feedback. Those who don't, don't matter anyway. Nobody can design for them. How do you know what they want. You can only design for users that do give a feedback. The best design will be one which recieves the most feedback. That designer will get the most feedback who treats his users well. And that designer will succeed.
I think the current path is the best one. We will get usability because enough of the people will care to give feadback. And enough designers will care to use them. On this path alone we will get a system that is everything for everybody, and could be changed to be everything for everybody who got left out. HCI surveys and research will make us reach the best end result faster. But they are not necessary to reach to the end. Its like human evolution, research is not necessary if you use natural selection, it could shorten the time though.
The Average user using a general purpose OS on a general purpose computer is a going to obscelesce. With integration and miniaturization the future of the average user is to use embedded systems. This is of course already in full swing and the viability of the general purpose 'average user' desktop computer is weakening. With set-top boxes, internet phones, PDAs, and office-top boxes becoming more refined, the general purpose computer will again be mainly in the hands of developers more than anyone else. Therefore, for a general purpose OS's interface it IS the developers who it should be optimized for, not the average user.
The author is right in the fact that Linux needs to be easier to use. He's very in wrong when he states that the variety and differences available in Linux are negative things. I think that one of the things that we all like best about Linux is that we have choice. Don't like the GUI? get a new one? don't like one distro? get a different one. With Linux we have the opportunity to select from a broad range of tools instead of just one, which is the case with Microsoft. The author is confusing vast choice with difficulty, which is absolutely incorrect. Haning helped computer users of all levels for many years, the one thing I can tell you they would all prefer more choice.
I'm all for "Linux for the masses", but I'm not willing to sacrifice the power of Linux in the process. Luckly, Linux has been designed to have it both ways.
The complexity of the system should never be hidden from the SU. All of the complexities of the system are important, and someone who's a SU should be able to handle those complexities. Then there's everybody else, who should have access to a nice user interface which should take care of all of the complex stuff and leave them able to do the relatively high level stuff that they want to do.
[note: the following is *completely* hypothetical]
So I should be able to set up a computer in my bedroom, hooked to a terminal in the living room, which my mom uses to do word processing, and my uncle in australia also logs into my box from time to time to do *his* word processing. If he accidentaly munges something, I can, as SU, look at his account and straighten things out, without taking a trip from Louisville Kentucky to Sydney.
Then there's Phred, a friend and fellow hacker. When I set up his account, he said that he didn't want all of the GUI stuff. I said fine, and gave him bash, and he seems to be happy.
I, in my bedroom, have the power that the CLI gives me, to set up cron jobs to do backups, to write various scripts which make my Linux box more powerful and better suited to my needs. My mom and my uncle have the UI that they need to do their stuff, without getting into Linux up to their elbows.
I am not in any way advocating making root into something that's entirely point and click; that would destroy much of the power that's built into Linux, and the philosophy of Linux as a collection of small, specialized tools that can be used in combination. Still, I believe that it's myopic at best to expect everyone to want to do their computing that way.
umm .. it is you who are unable to understand that the GUI is not some holy grail of computing.
it is you do does not understand that there might be people who think differently from you
no one is pouting. If you actually listen, there are very good arguments for why the cli exists and why people like it. People hate NT because the provided administration tools are useable by idiots but worthless for professionals. Sorry.
support gun control: take guns from cops
Having just talked my mother through a file copy in 95, I really wish I had just told her to type copy a:\*.* c:\docs. Such is life.....
I must put a disclaimer that I am new at all of this, but i noticed that my ICQ has a "simple" and "advanced" mode that can be selected at will. Can an operating system for Linux be made with all of the current bells and whistles it currently has for techs, but a feature of a "simple mode" that can reduce it to the few automated tasks that the average user like myself would desire?
:)
Personally I am not crazy about the way microsoft does buisiness, and if Linux came out with a system that has a clear GUI I'd change over to it in a heartbeat. I really hope they develop something.
Also, I am curious can Linux work with Adobe products? I am an artist and I would want to know this before changing. Thank you
Yah, not open source, too bad. Still, it's miles ahead of any window manager in terms of useability
I have been thinking about usability lately.
I don't think that having many chooses make a system more unusable.
In fact I have evidence of the opposite.
Here is the story.
For my system I don't have a mouse but a track ball.
For those of you how don't have a track ball I
can tell you that.
1) It safe desk space.
2) It is softer for your hand to work with.
3) It don't let you aim you cursor as precise as a mouse.
due to condition 3.
I found that all the e themes included in my distro.
Had way to many small buttons, which made them hard to use
with a track ball.
But on themes.org I found a nice theme that make
my life with a track ball easier.
So, that I had a chose actually made the system usable.
I think the real problem is information overload.
But it can be solve using information hiding.
E's themes is a good example of this.
There is a lot of configurations but
you only have to care about choosing one theme.
I also considering writing what you could call a GUI warper.
I should works like this.
The applications expose there interface (maybe CORBA)
Then the warper use the interface specifications to render a interface.
The render should be a loadable module so you can change interface like
you change themes in enlightenment.
This means that the GUI can change free from the apps.
If you get a idea for a breakthrough user interface
you just write a render module.
Then all apps, uses your new user interface.
I think that if you can test a new user interface
across all your applications without a rewrite.
Then a highly usable interface will evolve more quickly.
A interface for disabled people or other special cases is just another module,
not a complete redesign of all your apps.
But right now all this is only ideas.
Knud
Or, in fact, why not try it! That is one way to really get the sense of how people learn to interact with computers. Try showing someone who is a Windows or Mac user how to accomplish various tasks using a Linux system. It can be as frustrating for you as it is for them!
I agree that there is a need for a simple, consistent Linux environment, an I presume that this is what Corel is attempting with their distribution. That is why they chose KDE over Gnome, because KDE is less configurable than Gnome, although more so than Windows, as well as being well-integrated and simple to use.
There is no reason to reduce choices or number of distributions, though. Right now, all the distributers and developers are innovating like crazy, coming up with improvements and features, which are being tested in the marketplace, so features that work best in particular situations will be available to integrate into new configurations. When a truly simple, consistent, intuitive system is available, then it will be ready for the masses.
There is one point that I disagree with, though. Burgess said: "The Windows interface was designed to be used by everyday people doing every day things. Yes, the internals are not very good but that is of no concern to the user nor should users be asked to care."
The fact that the internals of Windows are not very good has a big effect on the end user, because it crashes a lot. Users should and do care about that!
These things have been done already. 10 years ago X enviroments had nice root menu options for xman. As far as daemons go, there have been ease-of-use applets to cover those as well including configuring the daemon's options, whether or not it will start on bootup, what runlevel it will stop or start in and nice point and click startup and shutdown.
Okay, here's what you do today: take a RedHat distribution, *only* install one 'desktop', and the associated applications. Okay, so say I install GNOME with fvwm95-2 or qvwm, or E with only one theme or something, and get rid of some of the nice options and stuff. Then I only install GNOME apps, and I try to get rid of all the options to get to the 'Terminal' icon. I hide the boot messages, maybe with a splash screen or something, automatically make the system start up in X, perhaps with an option to start in some kind of 'maintenance mode' running the SVGA16 server or whatever counts as minimal on a platform. Make the user automatically be logged in as root, because who needs that login hassle? It's confusing... Eventually we'll get rid of all of those bothersome "UNIX features", or we can all go out and buy Macintoshes...
Anyone see my point here? Red Hat is trying to make applications and desktops easier to use for the average user, but they shouldn't try to prevent people from using an xterm to load netscape instead of a button, or switching their desktop from GNOME to KDE, or friggin' twm for that matter. If the user knows how to use it, they should be able to, because no matter what you say, one size does not fit all. For that matter, I would kill for a command prompt on a Macintosh. I found a third-party one, but I didn't like it that much. Also, I'd love to see real network logins with decent profiles and access controls on Windows or the Macintosh. Right now NT only really falls short on the huge profiles and no disk quotas.
Also, what if your system does halt on something while booting up? Isn't it better to have a real error message than a negative number or a page fault? Even if it starts up in text, since starting a graphics mode might be a problem?
Also, I don't think you should ever reject feedback from users, whether or not they are programmers. Secretaries might have specific needs, but we do too. In lynx, there's an option for a beginner mode, an intermediate mode, and an advanced mode. It starts out in beginner mode, and if you read through the help, you can change it to intermediate or advanced mode. So what's wrong with a little choice?
pb Reply or e-mail; don't vaguely moderate.
Almost all of this guy's points have been addressed. They are solved problems. I'd like him to install a system with a configuation like mine, use KDE and autorun. Then you have an interface that addresses his complaints, plus all your cds automatically mount and unmount (and do so without making you wait for extended periods of time, or giving you error messages that intimidate the user, as Windows does). As for Windows, it's UI is quite inconsistent. See the "UI hall of shame" (don't remember the URL) to see some examples.