Making Things Easy Is Hard
paul.dunne writes "John Gruber of Daring Fireball has written
a long and considered riposte to
Eric Raymond's recent lament concerning the poor quality of user interfaces in free software.
The core of his argument is that 'developing software with
a good UI requires both aptitude and a lot of hard work.' One point that particularly struck me: according to Gruber, 'Unix nerds who care about usability are switching
to Mac OS X in droves'!"
Making things hard is easy by Microsoft!
As a software developer and a person who moved from Linux to Mac OS X. I have a lot of respect for what apple has done. The Apple UI is relatively low in Eye Candy compared to Other OS's Including some Linux WMs, But they make a good interface which I actually am more productive in compared to others. As a software developer I know how hard it is to come up and program some of these interfaces because the way that a normal (non-Slashdot) user does something is different on how a programmer will do something, Plus it needs a LOT of extra error checking which often makes programming it dull. It is not like making eye candy which is kinda fun and looks cool or making the algorithm that does the work because you can marvel at your code. Interface programming seems to get boring and repetitive in style and there aren't many cool showoff algorithms that you can't get a PHD with.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
One point that particularly struck me: according to Gruber, 'Unix nerds who care about usability are switching to Mac OS X in droves'!"
This has certainly been my experience. My latest journal entry covers it quite nicely I think, but many of the geek folks I know including hard core UNIX users and scientists who have long been Windows users are shifting to OS X. After all, yes, UNIX is powerful and while performing certain tasks can be faster with the command line (indeed almost impossible without), for the most part, a good GUI can make things much more efficient. The nice thing about OS X is that your CLI is still there just waiting for you to invoke it allowing access to all that UNIXy goodness.
Visit Jonesblog and say hello.
"Unix nerds" who are switching to OSX are not Unix Nerds.. they're Unix Wannabe's that like aqua..
chicks dig console...
The road between democracy and tyranny is paved with secrecy in the name of security.
Um Please replace the IE development in my post to UI. Sorry I was trying to get First post.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
To quote the article:
Remember the old open source magic formula -- that one could make money giving away software by selling "services and support"? That hasn't happened -- in terms of producing well-designed end user software -- and it's no wonder why.
Just repeat after yourself: "There is no such thing as redhat, there is no such thing as Redhat."
True, Redhat *sells* boxes of software. But what you're getting for your money is the support that comes with it. Right?
This isn't to say desktop Linux isn't growing in use. It is, and will continue to. But it's growing at the bottom end of the market -- cheap $400 computers from Wal-Mart. That's a market where software usability is not a key feature.
Oh really? So tell me, is Walmart a store that techies currently shop? Cheap $400 computers *are* meant for the non-technical type that wants the cheapest computer they can possibly afford. Typically, people who use their computer more tend to want something a little better. Either that, or build it themselves.
UI development is the hard part. And it's not the last step, it's the first step. In my estimation, the difference between.
He might be talking about making a desktop for linux, but he's missing the big picture. Before there was Desktop Linux, there was the kernel itself. Function before style.
/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
Usable for me is being able to read the man page once, write a script to automate it, and never have to look at the damn thing again until someone comes up with a better widget that does what I need faster/cheaper/better.
Pointy flashy clicky things just distract from getting real work done.
Beep beep.
The type of easy that regular users can find everything in a snap or the kind of easy with big shiny icons that n00bs still have problems with?
First people have to know what they want in order to get it. We can't solve stupidity and/or ignorance can we?
----
Go canucks, habs, and sens!
"developing software with a good UI requires ... aptitude"
I find Synaptic's UI nicer myself, but what do I know?
Sound familiar? It's the same argument against any kind of Open Source, only this time it's UI design that's somehow impossible to do without a big corporation (or "cathedral" if you will). Someone better tell the KDE people.
I don't think that ESR ever said UI design was really easy to do or a last-minute add-on, just that it needs to be done, not overlooked.
Oh when will april fools be over... How about when SCO thanks Redhat.. Hey, what do you know
It's not just usability. Making things that go beyond raw utilitarian funcionality is just generally difficult. Look at cars. Making a basic econobox is pretty simple, but making a real driving machine is more difficult and usually costs more. Slapping together an Ikea bookshelf isn't too terribly difficult, but hand crafting an Arts and Crafts style bookcase requires considerably more effort and skill. Yet, somehow when things move into the software realm, our expectations change. Unfortunately, it's difficult to get BMW handling with a Kia budget. Even harder for free.
The Glass is Too Big: My Take on Things
...is the most difficult to discharge superbly.
--Robert Fripp
...Rob
The American Dream isn't an SUV and a house in the suburbs; it's Don't Tread On Me.
First, I admire Daring Fireball in all of it's pedantic glory. Maybe he is just trolling for April 1st.
OSS software is not always easy to use - there are plenty of OSS developers and users who understand this constant plight. This article doesn't seem to recognize that. Gruber always paints with a broad brush and it is hard not to be offended by what he is saying and implying in this article.
Good user interfaces result from long, hard work, by talented developers and designers.
Check this Gruber - Gnome, KDE, Easy Software (CUPS), Freedesktop, Mozilla, Ximian, Trolltech, Activestate, IBM, Sun, Redhat, SuSE, Novell, Mandrake, Debian, Open Office, Apple, and on and on, ALL have talented developers and designers on board. Some are paid, many are not. All of them write, package, repackage, extend, design, evolve, sell services around or just use OSS software. Even if the print setup on Alan Cox computer was too difficult for anyone, it was written by a talented developer and probably looked over by a talented designer somewhere later. It just didn't work this time around. So we move on. We re-examine it. I promise you we didn't need Alan Cox to tell us it needs improvement. Alan Cox is not OSS. Alan Cox problems do not reflect everyone's problems. Certainly not my co-worker who's CUPS install does autodiscover. It even connected to my amazing Apple Powerbook's shared printers running off... CUPS.
There are plenty of failures in OSS usablity. They are being fixed fast (release). The fast (release) is complimented by the fast (performance) of Linux. I use OS X everyday, don't tell me it is more responsive than Linux and it's OSS on equal hardware. You don't have enough proof to refute mine, I don't have enough proof to disprove yours. OSS is also more than just cheap software, it's cheap software that runs on cheap hardware (more on this below). And it will be good. I think it's good right now. Novell and IBM thinks it's so good right now they are rolling it out, company wide.
Talented programmers who work long full-time hours crafting software need to be paid. That means selling software. Remember the old open source magic formula - that one could make money giving away software by selling services and support? That hasn't happened - in terms of producing well-designed end user software - and it's no wonder why....
For example, look at how much Mac OS X has improved in the last three years alone. Even if desktop Linux is improving - and I do think it is - it's improving at a much slower pace than Mac OS X....
Mac OS X printing implementation was built on much of the same software as Alan Cox Fedora install. This is the panacea of the OSS business model - quality free (libre) disparate software, glued together by intelligent programmers. Further I don't understand Gruber's point of view - Apple is making money off OSS and the developers are getting paid. The support and services might be in the form of support software which may not be what the kind of support he was thinking of... but it's still services and support.
This isn't to say desktop Linux isn't growing in use. It is, and will continue to. But it's growing at the bottom end of the market - cheap $400 computers from Wal-Mart. That's a market where software usability is not a key feature.
I'm sorry but Gruber is wrong. It is a key feature in that market - according to Linux developers. Maybe not Apple developers and maybe not Microsoft developers. However, to many, many, many OSS developers, usability importance doesn't scale with price. That's a disgusting, exclusive statement by Gruber.
Posted here tooThis one is funny.
Eric S. Raymond -- the renowned Linux/Open Source evangelist/essayist -- couldn't figure out how to connect to a shared printer. So he wrote an essay describing the problem (the UI for printer configuration on his Linux system is horrible) and proposing a solution (open source developers should do a better job with UI design). Raymond wrote:
(Side note: parallel port? What year is it in the Raymond household?)
Raymond's description and criticism of the usability problems he encountered trying to achieve this are accurate and apt. The gist of it is that what seemed like the obvious way to go about the task was in fact completely wrong, and worse, there was no indication from the system that he wasn't on the right track.
This setup alone is sort of funny -- Linux Advocate Struggles to Configure Printer -- ha-ha. Even funnier considering past statements from Raymond regarding Linux-vs.-Windows usability; e.g. the forward for the book "Everyday Linux", wherein he wrote:
I mean, come on, it's funny that the guy who wrote that couldn't connect to a shared printer.
But it's when Raymond begins proposing "solutions" to the problem -- where "the problem" is the larger issue of open source software usability in general, not just the specific case of CUPS printer configuration -- that things get hilarious.
In his follow-up article, Raymond summarizes his proposal thusly:
Sounds good, on the surface. And indeed, most of the follow-up article is devoted to the congratulatory email Raymond received in response to part one:
I agree that this is an interesti
Me lost me cookie at the disco.
I run both Linux and OSX, but I'm mostly entirely on OSX now. I like having someone else worry about my security updates for me. I'm willing to pay for someone else to do maintance and assure that my OS is completely compatible with my hardware.
The fact that its really pretty doesn't hurt either.
maybe he meant troves. that way they'd be easier to categorize... i think the idea was stolen from freshmeat
I'd kill all of you for focus-follows-mouse in OSX.
The lack of focus-follows-mouse completely blows away any other "usability improvements" in OSX.
Hopefully, I won't accidentally type my root password in here because I forgot to click on the Terminal window before entering it.
I see a pretty important difference between usability (ease of use) and usability (usefulness) I agree that Mac OS X is pretty easy to use, and UI is pretty important, but usefullness is a different matter; something OS X could stand to work on if they want to take users from linux.
Raymond was right. The software is there, but the hints and the documentation are totally left out! The CUPS guys (and others) just need to tie the loose ends because --obviously he did finally get it to work-- there were simply no run-time links/ hints/ discovery to do the job.
Gruber's idea of UI driving the software design is totally another level (more like Thomas' idea of why FOSS UIs tend to suck). And although Raymond is shooting for Aunt Tillie (which he WON'T get without this level of design), he can at least get all his semi-technical brothers and sisters into the game and we can all think about A.T. for another iteration.
I just finished development on a little utility that runs on Mac OS X. Has a nice GUI interface, we think it's easy to use. The GUI and GUI-RELATED code has been 90% of the work.
What's GUI-RELATED you ask? Well, consider a simple file copy utility that runs from the command line. When you run it, you give it the arguments on the command line and off it goes. If you want to use the same arguments twice you make a shell script or an alias - the file copy utility DOES NOT WORRY about persistent arguments.
OK, now we make a GUI file copy utility. Oh, you'd like to use the same arguments again. OK, that's reasonable, let's make a place to store those. Oops, now we need a way to manage them (create, edit, delete - what about concurrent access?). Hey, wait, this is Mac OS - you know, the path to a volume can change when it gets unmounted and remounted. Are you doing the right thing to specify the VOLUME the user wanted and not just a dead path? Oh, what about when the path no longer exists - should we fail, create it silently, pop up a dialog saying it's missing and let the user create it...
John Gruber is dead on the money - you can't just wrap a GUI around a CLI and expect things to be easy to use. There's a whole big layer of foundation code under the GUI that needs to be created to make things work the right way.
and now i use mac os x*.
* and gentoo with trswm and as few gui programs as i can manage
I have to say I'm absolutely in love with my PowerBook G4. The UI is very minimal and simple, but it has all the options that I would want to use.
For the hard core CLI stuff (such as tcpdump, etc) I can always open up a terminal, and for the part of me that goes "ooooh" at shiny objects, I can make the terminal windows transparent.
I'm particularly impressed at the ease of configuration of network devices and connections in OS X vs. WinXP.
Any way, add me to the list of UNIX geeks that is going to OS X. I'm not replacing my OpenBSD boxen, but I am trying to replace my work-issued WinXP laptop and my wife is totally willing to switch out her Win98SE box for a Mac (which is great, because she was dead-set against Linux for her desktop OS).
Oh, did I mention that it's 10 times easier to create a presentation in Keynote than in PowerPoint, and Keynote looks better to boot! For example, I created a 36 slide presentation immediately after installing Keynote, with barely a hitch and never cracking open the user manual. It took me 1 hour yesterday to modify two build slides in PowerPoint.
Someone is WRONG on the Internet!
I know that I will be modded down but I have to say it.
Max OS X is like Enlightenment on steroids.
It is totally unusable, just has lots of fast eye candy.
To do anything remotely useful you need to know a milion secret key combos. Mac users are one damn secret handshake society.
Now mod me down and keep bathing in the warm glow of Steve's reality distortion field.
(I do have a Mac)
This article, and the one it refers to, commit some basic mistakes.
One is that by imitation one is stuck in underachievement. Not so, everyone learns by imitation, even the few ones who rise to geniality.
Other is that the GNU/Linux desktop is not maturing as fast as proprietary ones. This has not been my experience. Sure MS Windows has matured a lot since MS Windows 1, but that was a long time ago; most interface improvements came in the MS Windows 3.11 to 4.0 (AKA 95), and since them it has basically stagnated. Mac OS X was a huge improvement in both polish and underpinnings from Mac OS 9, but not in usability. On the other hand, Gnome 2.6 for instance is so much better than Gnome 1.4, and continues to improve.
Finally, he assumes there are no companies behing desktop GNU/Linux. Hasn't him ever heard of Novell, IBM, Sun, HP and their backing Gnome, contributing usability studies, guidelines and improvement to it, and taking part in the Gnome Foundation?
I guess KDE is not much behind if at all.
Leandro Guimarães Faria Corcete DUTRA
DA, DBA, SysAdmin, Data Modeller
GNU Project, Debian GNU/Lin
The reason why Linux, and many of the Open Source solutions that grew up around Linux are so damn difficult is the whole "not invented here" syndrome. Because this is Free Software, as in Free Speech, every developer thinks it's both within her right to develop willy nilly, and because the system's "currency" is "props," obviously my interface is better than anybody else's - everything else sucks.
This is why Sun's Java Desktop System (which I've been using this week) is so far the easiest Linux desktop I have seen so far. There's one driving motivation behind it - whatever Sun wants. There's little "but I prefer chromed widgets" from one developer. Nope. Sun says "make this easy to use," and it gets done.
I mean, who gives a damn about GNOME vs. KDE? What Linux needs are developers who follow a singular mission (or, rather, several singular missions, but not a mission for every developer!). I'm sure there were a lot of blacks in America who hated riding in the back of the bus, but until the Civil Rights Movement, there wasn't a cohesive strategy for every indivdual to work towards...
There exists no way of exchanging information without making judgments. --Bene Gesserit Axiom
Which dictionary are you using? Merriam-Webster sez:
1 : a group of animals driven or moving in a body
2 : a large number : CROWD -- usually used in plural especially with in
IBHT. IHL. IWHAND, TYVM.
Setting aside the silliness of fashion, elegant designs (lamps, home furnishings, clothes...) generally cost more than their K-mart alternatives. This is very true in architecture (which is probably the closest physical analogy to SW interfaces. There are builders tossing up 3600 sq ft barns for $140/sq ft. The damn houses have crummy flow, light switches in the wrong place, plumbing running down exterior walls so pipes freeze, messed up rooflines etc. It takes time, talent and forethought to design something well.
Since much of open source is developed to satisfy the intellectual/academic interests of the development team, they often forget that someone else may want to play with their toys. I am sure there are many exceptions to this and these are generalizations, but that's my 3 cents
When the people fear their government, there is tyranny; when the government fears the people, there is liberty.
Today, I saw three Mac OS X gurus unable to connect to a nwtwork printer. They knew the ip and the printer type, but they finally gave up and had to call IT for support.
Meanwhile, I directed my browser to CUPS and setup that printer on my Debian Powerbook, with no problems. Then I did it again in my Mac-on-Linux.
The problem isn't interface...its the inability of some people to understand how computers work. And pretty UI's don't fix that.
After sitting in class today and watching another student do various tasks on his mac laptop, I've once again been tempted to try one out. And I figure even if I end up not liking OSX and all that goodness, I can still install my sweet sweet debian on a PPC, so why not?
- I love animals. I try to eat at least one a day.
Ok, so we're talking about a group of people who are:
1) Unix Geeks
that
2) decided to roll back their "Discordian" t-shirt long enough to find their (gratis) copy of PC magazine wot mentions the unix workalike underpinnings of OS X. (we're talking -UNIX- geek here people)
3) don't like the available Linux gui options.
4) are willing to pay twice as much (at least) than they would for an x86 Unix workalike
5) have trouble with gui usability...
This person doesn't exist. Unix geek = someone who enlists in the vi/emacs Blood War. People who bitch about GUI usability = people who bitch about "right clicking".
I'm almost serious. Who are these people...?
-dameron
Why make things easy when it is just so much more fun to create something that the user has to read pages of configuration instructions then go to a support forum where they can get laughed at and degraded for asking such a simple n00b question?
Software isn't meant to be productive. It's meant to help people get a laugh at the expense of others.
That is the funniest thing I've read on Slashdot all day. Keep up the good work.
Of course running a webserver for the sole purpose of seeing porn instead of regular ads seems kind of wasteful.
I came into a large cash windfall last year and used it to buy an iMac. For a long time our house had two boxes: one OS X box and one Linux box. Last month the display adaptor on the Linux box failed. The replacement was another OS X box.
/. can't modify what you say, sorry to burst your bubble. If you screw up cause you're in a rush you're stuck with it.
I'm actually going at things from the other direction. For most of the time I was in college I was a GUI snob and preferred things like the NeXT and Mac OS GUI's over the power tool OS's (Sequent and IBM Unix). True, I have a Mac OS X box today that I use a lot, but I find myself looking longingly over at the Linux side of the world and I'm even prepping a couple of spare boxes that I can use just to toy with Linux.
I used to be a HyperCard wizzard, a FileMaker consultant, and an AppleScript guru, but lately the limitation of these tools is really chafing against me. I've found it necessary to learn C. Of course I've tried to learn Cocoa and GnuStep but it's not nearly as easy as what I'm able to whip up with the kindergarten graphical tools. But now I've started really understanding the elegance of pipes and the simple syntax of C and the GUI things are really getting on my nerves.
There are still many things that I hate with the experiments that I've played with Linux. I despise all of the confusion over the package managers and libraries (I just don't understand it). And I get frustrated by the way one handles memory management in C (though I do understand why one do it; it's just like filling out my taxes each year... frustratingly monotonous).
I know that the way this topic started off there will probably be a slew of flame wars starting from people who feel that the integrity of Linux and BSD has been insulted by saying that Mac OS X is easier. I'm not interested in those flame wars but if there are any lessons that can be learned from each camp, there could be a really good symbiosis that comes from Linux users wanting more simplicity and Mac users wanting more power.
Function before style.
Just a minute. Don't for an instant believe that user interface design is just about style - pretty colours and slick marketing - because it's not. It's just as much about function and utility as any other aspect of software design. It really does belong more in the engineering department than the art department or marketing.
I don't deny that the software foundations needed to be laid beforehand, but he's right on the money when he says that UI development is the hard part.
I'll admit my bias, because I am a professional user interface designer. But I tell you, I'm starting to long to get back to software development, where I have my roots. It's a purer and simpler world.
Accountability on the heads of the powerful.
Power in the hands of the accountable.
duh. He was saying to mentally replace IE with UI in his post.
I am sure there was some good things to be said in this article, but I get kind of pissed off when I read crap like this:
(Side note: parallel port? What year is it in the Raymond household?)
You know, we keep complaining about "attitude" taken by some of our open source comrades, and this is precisely the kind of crap we don't need being written. I still have a cd-rom drive that connects to a special connector placed onto an old ISA sound blaster that I also still have. It isn't actually connected, but the wonder of it is that LINUX STILL SUPPORTS IT.
People who come off with this "only use the latest" attitude really annoy me. A LaserJet 6MP is a very respectable printer. Parallel ports are still fast and reliable. Not everybody feels the need to upgrade to USB 2.0 printers just because that is "trendy". People like me, who take good care of their equipment, tend to have legacy items that ARE STILL PERFECTLY GOOD lying around. And furthermore WE LIKE LINUX **BECAUSE** of its EXCELLENT support of older hardware (although parallel port printers aren't exactly old).
Debate is a good thing at any venue, but this sort of Red Herring / Ad Hominem attack is *NOT* constructive and makes us look like a bunch of infighting children.
Education is a better safeguard of liberty than a standing army.
Edward Everett (1794 - 1865)
That's okay, I just read it as "Interface Engineering".
-- Alastair
To add samba printer do not use network browsing which is terribly broken rolling rainbow ball hell.
Press option and click on Add printer,
Only then the Advanced option will show up in the list.
Select it, type in printer's URL, and hope that the printer drivers have been ported from Linux.
Remember the classic mantra of OSS: "When you've got an itch," scratch it."
Good UI design/implementation is difficult, laborious and time consuming. It's not fun, it's drudgery. That's why people generally won't do it unless they're getting paid to do it. Same with documentation.
It's a good living but a lousy hobby.
Making a good UI may require skill, but if someone with skill makes a UI library then others can make use of the skill in the library.
The "I'm l33t because I can type command line commands" attitude keeps the Linux kiddies from ever getting a GUI right. The attitude that a GUI is a "front end" will never work well. Everybody competent knows this. But the Linux kiddies don't know any better.
Red Hat is making some progress. But they're doing it by taking Linux away from the kiddies and making it their own. You can't even copy a Red Hat distro for free any more. That's not free software.
Lets look at this from a sane point of view.
Q: How many arch's can you run OSX on?
A: One (PPC)
Q: How many File Systems do you have to choose from with OSX?
A: One, HFS+ (or two if you count HFS, both of which are terrible)
Q: How many desktop UI's do you have available to you?
A: One. Aqua
Q: How "customizable" is your interface (aqua).
A: pretty limited.
Q: How portable is the cocoa framework?
A: oh yeah, its not at all..
Q: How many vendor's do you have to choose from if the one you're with takes a direction that you don't like or can't work with?
A: None.
After you factor in all of these and add other things like major incompatibilities with glibc and bsd based systems you might as well argue that Windows is an excellent system to migrate to in the fact that it has all the same freedoms (or lack thereof). "Free as in Freedom" people.
Now if only we all lived in a communistic society, all the advantages of OSX, Aqua and Cocoa would be relevant..
Mod me as flamebait if you like, but know that you're only kidding yourself thinking that OSX is the answer to UI problems inherent in open source based os's and projects.
As mentioned, aptitude, innovation and hard-work is what we need.. not another wheel..
The road between democracy and tyranny is paved with secrecy in the name of security.
I think people tend to be unfair to open source software in terms of usability. Whether we like it or not, we are trying to snag windows users so we tend to cater towards that goal. Well, that makes us focus on usability of windows, and other Microsoft products. Yes, MS products are fairly user friendly and easy to use. Well, LINUX software may not be up to that standard yet in terms of friendly interfaces but there are PLENTY of windows programs NOT from microsoft that have HORID interfaces. Ever use Lotus Notes? How about cd burning in windows? What I'm getting at is this, While the LINUX desktop (KDE/Gnome) doesn't have the system level GUI's to match what Windows offers, when talking about JUST applications, I believe Gnome / KDE are MUCH easier to use than MOST windows programs (excluding MS products). Epiphany and Firefox are WAY nicer to browse with than IE. Gnumeric is a wonderful spreadsheet program. Evolution is Great (albeit a bit slow). Totem will play just about any media format (without taking over parts of your system which a media player has no business poking around in)
A critical mass of users has to adopt the user interface. Mac OS X has certain factors in its favor. "Worse is Better" put it best "The good news is that in 1995 we will have a good operating system and programming language; the bad news is that they will be Unix and C++." and in 2005 we will have a good user interface and it will be OS X.
Check out Virtual Desktop, brother.
http://www.codetek.com/ctvd/
Or are you just too much of a zealot to read his post?
The problem isn't interface...its the inability of some people to understand how computers work. And pretty UI's don't fix that
He doesn't blame OS X in any way. Stop defending against a charge that was never made.
My stupid fault. In fact, that makes me feel better as I've always had more respect for AC anyways.
Is UI development easy? Usually Not.
Is UI development important? Absolutely.
BUT... UI work is usually neither the bulk of the application nor the "most important" part.
To abuse the old metaphor:
The gas pedal on your car is important. It needs to function well and be robust, but it is NOT more important than the "back end" stuff like, oh... the fuel injection system. Both are necessary, but the fuel system is more critical.
I respect UI people (I am pretty lousy at it), and try to keep them in mind when developing back-end code. But if I have worked with the UI folks and know WHAT their interface will do, I can handle the heavy lifting (business rule processing) on the back end.
If the UI developer is doing "an entire order of magnitude more work", as the article said, then either the non-ui coder sucks, or the project has been badly mismanaged.
"Faith: Belief without evidence in what is told by one who speaks without knowledge, of things without parallel." - A.B.
Linux advocates always talk about the need for quality and usability and a usable GUI but fall much much much shorter than commercial software products.
A usable GUI is worth much more than an incredibly powerful set of internal features in a software product.
Users use software to do things and not to read man pages, setup config files, compile source code packages...
I've been crapping on OSS UI's for years.
I guess ESR had to steal from someone.
It only has to be done once.
You take an expert in the task - like CUPS printing. He/she sweats blood for one person year to make it easy to use. The job is now done.
Alternative : 10 million people spend 6 hours each to learn how to use it. Result : 20,000 person years wasted.
All this from a web site with what must be a 6 point font and poor contrast (white on grey).
Let's have a look at this argument then:
"The UI really isn't up to standard. If you worked more on it Linux would be great."
"Developing UI is hard. Let's not bother."
Nice riposte there. The ultimate excuse for not achieving the single most important thing in creating a total Linux revolution. The reason Bill Gates is in every home on every desktop. Here it is:
"It's too hard."
Bill Gates has won.
I am government man, come from the government. The government has sent me. -- G.I.R.
"The good news is that in 1995 we will have a good operating system and programming language; the bad news is that they will be Unix and C++." This sort of ground has been covered before, and the result will probably be similar.
Yes I complain about cups to, there seems be no way to clean the jets on my hp printer unless I boot into windows and run the driver. The real problem isn't in cups but is the fact that there is a whole class of operating system not supported by venders. It seems hp doesn't really support Linux as I couldn't even find a tarball, let alone a package. I can't complain to them because I got for free but hp will not be on my list of products to buy when I do have the money. I just hope the tide is turning and drivers will start appearing for new products.
Star Trek, there maybe hope.
Bashing Eric Raymond because he advocates usability for AT and at the same time bashes Windows developers for catering to dumb users is detrimental to everyone : to GNU/Linux developers trying to improve usability, and to 'dumb users''s pride. Raymond is full of contradictions, the very contradictions of the open source world : let's advocate for the people, even if we just don't think that they deserve it, because they're just dorks.
Indeed, the CUPS episode is ironical, because it is blatant evidence that Linux usability is still to be worked, and worked hard.
And, last but not least, the migration of nerdy nerds to the MacOS world, which explains in some way the growing tensions between those two communities (and Darwin doesn't help that much, no)(on a second side note, it is interesting to see that GNU/Linux defenders don't seem that involved anymore in the very principles of free software when they see a nice GUI... hence the opportunity of sticking to OSS and bashing RMS for being a zealot...).
But come on, guy, why did you make yourself so weak on some other points ? Don't you know that the geeky population will bash you because you overcame the limits of reason ?
Free software doesn't cater to a market, for the moment. It caters to individuals. There is no such thing as Wal-Mart low-end PCs bought for using GNU/Linux. Why ? Because retailers don't ship Linux (not that much, at least... yes, I read /., too). I bought a high-end Acer laptop, and installed GNU/Linux on it. Which computer you buy has nothing to do with the fact that you want to install GNU/Linux on it.
As you stated with your link to mpt's article, free software usability tends to suck. That doesn't mean it sucks. I could even say that the overall impression is that free software usability sucks, because every software is made by programers that don't earn money with it (or at least, 90% of them). Just go on download.com, and rebuild your Windows desktop with freeware, you are going to understand. Nonetheless, some software are designed with great usability. Rox-Filer is a great fm, XFCE makes up perfectly for the rest of the desktop. GMplayer rocks, so as Rhythmbox (I know, iTunes like), so as sOffice (very comparable with Mircosoft Office), so as gpdf, so as k3b, so as pigeon, so as so as... There are a few softwares that rock, and a bunch of them that suck. Diluating wine in water makes the taste of the former disappear ; but it's still there if you are skilled enough to filter it.
What is really frustrating is that every criticism towards the feres software community ends up in a uncontrolled rant, which is then automatically self-invalidated. Too bad... There were good points in that article, though, more than in Eric Raymond's for sure...
Regards, jdif
Let's overcome our weakness.
Hey, imagine this, troll:
A _NEW OPERATING SYSTEM_ takes TIME to LEARN!
Most everyone who switches to OS X and actually takes the time to familiarize themselves with the way things work find that their productivity increases. Don't confused "eye candy" with "consistency", as a lot of people do. Just because everything looks the same doesn't mean it's gratuitous.
How long did it take you to learn all the flags to ls, cp, ps, netstat, ifconfig, df, du, man, vi, emacs and be able to type them off the top of your head at nearly 100wpm? Let alone the intricacies of being able to bang out a 100-line bash, tcsh, perl or python script at a moment's notice. It takes YEARS, my friend. And I'm not even talking about serious development - I'm talking about being able to organize your mp3s, or something equally mundane.
Hmm, took me the better part of 5 years before I was totally comfortable and at full productivity at the command line. Now, 10 years later, I'm at home in OS X, where the GUI is there to help me get certain things done fast, and the terminal is there to help me get other certain things done fast.
The beauty of OS X is that a 10-year UNIX veteran feels just at home in it as does a 10-year old computer neophyte.
If you can't grasp this simple concept, I suggest you go ditch the Mac and go learn UNIX-like operating systems until you _really_ get it. Because right now you obviously don't.
The dangers of knowledge trigger emotional distress in human beings.
The problem with the software is that the people who work on it think things like:
"parallel port? What year is it in the Raymond household?"
If you want your OS to succeed, then someone is going to work on usability for all facets of it, glamorous or not.
I've been using osx recently and i have to say i love it. I can have the elegance of aqua right alongside more traditional oss apps. If only MythTV worked in osx, it would be perfect. The OSS community could do to follow the apple UI guidelines (with obvious changes[1]).
[1] for example, there is no standard for a Save, Don't Save, Cancel dialog anywhere but osx, so use a pre traditional Y/N/C dialox in gtk.
'Unix nerds who care about usability are switching to Mac OS X in droves'
This is absolutely true. If you don't believe it, then you're just needlessly anti-Apple. Myself and several of my friends, us having used Solaris (CDE WOOT) or similar UNIX variants for many years, are now switching to OSX.
What's not to love about an OS where I can have a great web browser, -pretty- window manager, tons of community software, AND comes with vi by default?
# wrote sig.txt, 23 lines, 31337 chars
'Unix nerds who care about usability are switching to Mac OS X in droves'!
Yes, Apple has managed to create that image for themselves. Unfortunately, I didn't find it to be true: I didn't find Mac OS X usability to be singificantly better than Gnome, KDE, or Windows. Nor, for that matter, have I found that non-computer experts have an easier time using Mac OS X than using a recent Gnome or KDE installation.
And what UNIX nerds will also discover is that package management and system management on Mac OS X can be a lot more work than on Linux (Netinfo, Fink, inconsistent installers, integrating OS X into a networked environment, etc.), and that a lot of UNIX software requires significant effort to port.
In terms of numbers, I haven't seen any evidence for any significant move towards Mac OS X compared to Linux.
> One point that particularly struck me: according
> to Gruber, 'Unix nerds who care about usability
> are switching to Mac OS X in droves'!
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
I see a lot of comments glowing with praise for the legendary "productivity boost" you get from using a Macintosh. But how much of this is just hype? I'm not disputing that in several aspects MacOS is well in the lead; file browsing, interface consistency, intelligent dialogs, auto discovery, and so on. But how much of that really adds to your productivity? My belief is, not a whole lot.
Hear me out. My typical use of the computer involves e-mail and word processing. I don't spend a whole lot of time reorganising my files. If the typical day involves 2 hours writing documents, 2 hours reading/writing e-mails, 15 minutes reorganising my files, and 4 hours doing non-computer things like meetings, then even if the Finder made me twice as productive when reorganising my files that's only 7 minutes. I waste more time than that saying hello to everybody each morning.
I can anticipate the first round of angry denials. "But it's not just the Finder; the Aqua interface and Human Interface Guidelines makes you N% more productive for [intangible reason]". Ok, perhaps that's true, but the majority of my time writing documents and mails is spent thinking. I don't struggle with the interface. I click "New Message" then I spend 10 minutes writing then I click "Send". I click "New Document" then I spend 2 hours writing then I click "Save".
The second round of angry denials will probably be "But MacOS makes it easier to add hardware because once I installed [Foo Device] on Linux and it took me 16 days and cost me $1 kajillion dollars in lost productivity". Well I rarely change my hardware, so while I can agree that Microsoft and Apple make it easier to install new hardware than in Linux, it's not as if that really affects me either.
My point is that you spend most of your time inside applications; not the Finder and not the hardware installation wizards. So it amazes me that of the people I know who switched from Windows or Linux to MacOSX they are all using Mozilla or Firefox, OpenOffice or NeoJ, and the free e-mail client with MacOSX which (IMO) is slightly worse than Evolution (eg. it only just got threading). How much productivity did these people gain by changing the OS but keeping the same applications? If you listened to them, you'd think they were suddenly Ultra Productive Super Beings, able to produce documents and e-mails faster than a speeding bullet, but from what I can see they are still spending most of their time inside a word processor or an e-mail client.
So how much more productitive are you with MacOSX? Be honest. Instead of replying immediately with "U R DUMHED, MACOSX IS HEAPS FASTER FOR EVERYTHING", step back and reflect on actual improvements. Are you saving minutes per week? Hours? Nothing at all? In my case it was a few minutes per week and I wasn't willing to lock myself into a proprietary upgrade treadmill to save a few minutes per week.
I think you've just proved the point of the article!
:)
It's possible to get so bogged down in the philosophy that the higher level goal is missed. Sure having multiple vendors is nice, but all the options in the world don't matter if none of them are the one I want to use.
If there was only PC vendor who sold machines that could run run Linux and all the rest ran Windows 3.1, which would you buy?
Cocoa isn't portable directly, but why do you think that is? It uses things like Quartz that don't have an obvious counterpart on other platforms.. If you really want cross-platform, then use something like Qt or Java. GNUstep implements OpenStep (which is what Cocoa is based on).
major incompatibilities with glibc and bsd based systems
Huh?
As mentioned, aptitude, innovation and hard-work is what we need.. not another wheel..
The difference between open source efforts and Mac OS X isn't hard work, it's philosophy. Apple treats a computer as a whole and complete thing in and of itself. That's how the user thinks of it.
Best Regards,
- Scott
Scott Stevenson
Tree House Ideas
I have OSX up and running on a box and I really try and like it... I try and figure out ways to effiently do anything... I try to understand it's astoundingly atypical and anti-intuitive graphics, layout, and organisation but I just can't...
I guess it's just me - lots of other people seem happy with it (and some aspects like it's packages are refreshingly good) but try as I might, I just can't wait to escape to Slackware or XP. *Ducks*
Q.
Insert Signature Here
How do we go about making software that balances quality with ease of use. The two aren't mutually exclusive and both can be achieved in concert, but it takes a very long time. Decades are needed to really figure out through trial and error how software should work to be truly easy. People bitching aren't really helping. How about write some and make a difference. Kind of Ironic.
It's a matter of understanding the user. Instead of having studies on which percentage of users approaches buttons from the left or right, how about an error message that actually indicates what the user did wrong. Most programs I encounter love generic messages. This is of course understandable, it's hard to code a message for every stupid thing a user might do but that is exactly what is needed. A user has more questions then expectations. They _WANT_ to know what's going on. Where did I save? How do I open that file again? Why did this click not work? What happens if I crash, how much work is saved? Instead of assuming that you can make an interface so easy that they will never go wrong, you need to understand what concerns the user has. The error messages should explain what the user did wrong in detail. Date was too far in the future, too far in the past, you didn't select a user, you selected too many users. I remember working on a tiny Java appointment book application. There was more error checking and messaging code then the actual logic code. Granted, someone might say it was a very limited application, but every single user who used it loved it! Simply because I put them in control, and they knew exactly what they did wrong when they pressed a button. There was no feeling of being lost and not being sure of what the magical black box in front of you is doing. No need for technical explanations just say, "You did not select a date within the corrent range (RANGE)" or "Please choose at least one item from the list." Informative messages that understand the user's questions and answer them.
I think one of the main problems with linux UI's is that a lot of them try to immitate windows, because that's what people are used to. Sure, that sounds good at first, but then you realize that you're using linux. Windows interfaces work on windows. Linux interfaces work on linux.
So then it comes down to what makes a good linux interface? Closing the source to your software and selling it doesn't make a good linux interface, like the guy in this seemingly anti-source article wrote. At first I was all into what he wrote, but when he used that as a backup to his claims I was somewhat disgusted.
Making a good UI isn't the easiest thing in the world - I'll give the guy credit for claiming that, if it were, you'd see a lot more of them.
The particular cups UI in question I'm not sure I've ever used (I've only used the web interface.) It seems that it doesn't describe the options enough, more specifically the IPP/LPD thing, which I would guess LPD was for backwards compatibility and chose cups, as I'm using cups. Plus, it's the first option.
Having more descriptions sounds like a good idea - but that's assuming the user knows what they want, and the description describes it.
Hiding options that are only used in special cases (perhaps LPD option) seems nice, until you have a user who wants to use that interface only to find out it's hidden.
Graying things out is confusing as well, as I've never seen an automatic detection mechanism that didn't have flaws, not only that but that would also add tons of overhead and confuse a user even more if it were to show false positive/negatives. They'd probably think last that the mechanism was at fault and instead try messing with every other option for who knows how long.
Windows tends to split the options up by asking overly general questions in advance that eliminate certain possibilities. Perhaps something like, does this need to be backwards compatible with older systems? And then that would elimate the LPD option.
While that makes it harder to navigate the options all at once, it tends to make things easier for those who don't really know what they want, and anyone who just clicks through what they don't know would probably just end up using the defaults, which would later on eliminate options and hopefully by the end have everying working correctly. Of course it's possible they'd get it all wrong, that's why people still call me about problems with windows.
No UI is perfect. Hiding options leaves some people out. Too many options confuses some. Asking overly general questions to elimate options is hiding and confusing at the same time. You answer one thing wrong and the correct option is later hidden.
What's the real solution? I really don't know, but closing the source to the software certainly doesn't seem to be it. I'd say the first step is to stop trying to imitate other OS's and to create a unique UI's with more user feedback.
I know I usually don't give up so easily on a problem and almost always get it fixed one way or another. I also tend not to use UIs. I do think some developers try to make good UI's but I think when it comes down to it, despite all said and and done, the unix way of doing things tends to prevail.
If someone is unwilling to fix it themselves, I usually just say "stop using linux." It's either that or I hold their hand through it all, or I do it myself. In which case, I've started charging.
Aunt Tillie will be calling me either way to fix her computer. Windows or Linux.
If you don't want someone to copy something, don't give it to anyone.
I think the comment that UNIX folk are switching to Mac OS is partially correct... personally, I think that OS X finally gives a "beautiful face" to *NIX that it has needed for a very long time. I really want to code for MacOS now, and I definitely don't have the same thing to say about Windows.
By the way, if you're a developer like me who wants to write GUIs in a cross-platform manner (Windows, Linux, *NIX including Mac OS X) then check out wxWidgets. The license is the most lenient available, AFAIK, so it allows both commercial and free software development for a range of platforms. I haven't tried this yet myself but wx can make native-looking GUIs on all platforms. Pretty slick.What has always rocked about *nix is that when you become a seasoned user, the text config files and powerful command line are far more flexible than any GUI. Yes, Linux needs GUI work like Redhat and SUSE have been forwarding, but I really hope it can be kept to a layer on top of the existing framework. Please, no registry and piles of control panels to get lost in!
The biggest difference about server-side programming and UI programming is dealing with the amount input variables and state. Since a typical UI has many things going on (* key presses, mouse movements/clicks/drags, paints, etc... *), it is very easy to loose track of something, or not keep track of something at all for the sake of being effecient. Server-side programming tends to be a bit more linear and state is more or less what you need during a session i.e. you accept a connection send / recieve data close the socket lather rinse and repeat. I for enjoy UI programming simply because it is challenging for a variety of reasons, and I think my programming skills and temperment overall improve.
<shameless-self-promo>
</shameless-self-promo>Software for most people is the look, what they see is what they want to get and if it isn't what they think it is it causes frustration, it work just like other things 70% how you look 20% how you sound 10% what you actually say.
I love all the work the open source community has done - and I am huge supporter. HOWEVER, I am so goddamned sick of the attitudes some freesoftware advocates have concerning non technical users and usability in general. One poster suggested that just because an application's UI sucks doesnt mean the software sucks. I'm sorry but that is the type of thinking that makes me want to shoot someone. Bad usablity IS bad software. PERIOD. If you want your software to impress your buddies at source forge and get a signed propeller beanie from Linus - then by all means, continue to create difficult and hard to use applications. However, unlike most developers, users don't want to think about the application - they want to complete the task.
Programmers make the worst test subjects for testing usability. Programmers drive the UI of OSS/Freesoftware.
As much as I hate to say this - most programmers, and typically NOT the good ones, harbor some resentment towards unsophisticated users by virtue of the fact that they are not techies. The best programmers are those that think in terms of tasks/usability before they even open an IDE.
I hope OSX can inspire Gnome/KDE folks to make better, and more UI cohesive, applications.
-_-
This is a endless discussion. And usually, the conclusion is not there is a best GUI. There is only an average GUI which fit better more people than others. It's not to say others are worst. They are different. If we would think exactly the same we, we would be very boring, but there will be an ultimate GUI.
But, real life is not so simple. Ask some left-handed people...
Achille Talon
Hop!
At home, it's the G5. At work, it's the G4. In between, it's the PowerBook.
People can make fun of me all they want, but I really think the nicer look and feel in MacOS X makes me a lot happier and more productive. When you stare at a screen all day, it really should be the best-looking screen money can buy.
And, of course, it's just super nice to be compatible with the rest of the business world, with Office, without feeling you've totally sold out to MS. In terms of visual attractiveness, there's just no contest between MacOS X Office and the rather drab Office XP.
It's too bad discriminating Unix-lovers isn't a bigger market. My Apple stock investment, which I made because I thought a lot of people would join me in the Mac world, pushing up demand, has actually been saved by the iPod.
D
But now that DOS is gone, she no longer uses the computer. Her applications no longer run under Windows XP.
They were "old and outdated", so my father found substitute "modern" GUI applications for her. She doesn't know how to operate them, has looked at them, is upset that her applications are gone, and figures she has better things to do than mess around with this new thing.
To my mother, computer upgrades are computer downgrades. Her old applications no longer run, and if they do run, she can't get at them how she used to.
Do you self-proclaimed "UI interface expert professionals" have any idea how thoroughly you have failed? You don't. And if you did, you wouldn't admit it. Because your obscene paychecks and consulting fees are tied up in your propagating the GUI usability myth.
She looks at the Windows XP desktop and is overwhelmed. OS X would be no different. It retains most of the problems of XP, hides a few others, and then goes on to implement confusing "metaphors" for use.
She doesn't want a "metaphor", you dolts.
She wants to press the keyboard button with the label that matches the label on the screen standing next to the text that describes the command she wants to execute.
This is what my mother sees when she sits down at an XP desktop:
There are little pictures on the desktop.
There are blinking messages, lights, and little un-interpretable pictures in the bottom right of the screen which seem to be demanding something.
There is the word "start" in an italicized, difficult to read font down in the bottom left corner. It never occurred to her to "click" on the word. Why would she click on a word? What would clicking on a word do?
We tell her to click on the word anyhow. And what she sees makes her drop her hands to her lap, shrug, and stare blankly. Little pictures, little words, little arrows - so many of them. Aha! "Programs", "I want to run a program."
She runs the program. On the top is a bar of little words. Below that is a row of many little pictures. Below that is a square area with the name of the application.
At best the application will launch a "wizard" automatically. At worst, she will be left to stare at the row of words and row of little pictures, and have absolutely no idea what to do next. Eventually she may start clicking on words like she did before. But that is only after she gives up in desperation, seeing that the application does not tell her what is available for her to do. Instead it makes her dig and figure out what it will do, if it will do anything at all.
She just wants to type "bible" at the "c:\>" prompt. She just wants an application with keyboard letters next to straightforward commands listed at the top of the screen. "F2 - Lookup passage". "F5 - Print passage". "F8 - Quit".
All we had to do was tell her, "Type 'bible' and press the 'Enter' key. In the bible program, press the key that the program tells you will do the command you want."
You can take your "metaphors" and shove them up your ass you "UI usability design professional experts". We HAD usability. I have a keyboard in front of me with letters on it. Tell me on the screen what letters I should match with the letters on my keyboard to execute the command I want. List these at the top of the screen at all times.
Keep it simple, STUPID.
The UI code is usually very long, cumbersome, and complex. In most of the projects that I've been a part of, most of the software's bugs were in the UI section. The software had to process many important things, but the STUPID UI kept it from doing its job.
But even worse is this: "Ease of use" really depends on what the user wants to do with the system. The problem is making a UI that is easy to use, but not so "easy" to use that it is demeaning to the user. Microsoft UIs are perfect examples of what I mean. Their software is set up for babies to use, with talking paperclips and whatnot, because it has to be "easy" to use. And in a constant effort to improve ease of use, they may make it easier for 1st time novice users, while making things longer, more cumbersome, and hence more difficult to use for normal users.
So how do you know if something is easy to use? When the customer uses it and you get feedback? Well, the problem is that 101% of the time, the customer thinks he knows what he wants, but he doesn't know what he wants. And herein lies the problem. You actually need experts in the field, not just those who are experts in modeling and programming the system, but also those who are experts in the psychology behind the system. In other words, the history of this type of system, why things were developed the way they were in this field, how users use the device, what goes through the user's head--what he expects to be the logical way to operate the device, rather than what actually is the logical way. And then you run into the problem that to each person, the logical way might be different, so applications end up having 100 different ways to do the same thing. IN OTHER WORDS, YOU NEED TO FIGURE OUT FOR THE USER WHAT HE WANTS.
But look at a car. If you know how to drive, you can operate any car in the world. Look at machinery, like lathes. If you are a machinist, chances are that you'll quickly figure out how to operate any lathe. If you've ever used a touchtone telephone, you'll figure out how to operate just about any well designed cellular phone within two minutes. Why is that? Because they follow certain principles? That may be part of it. The bigger part is that the designers of these systems understand not just what they do or how they operate; they understand the psychology behind these systems.
Everybody today is expected to know how to operate a computer. But when there are classes (expensive classes) on how to operate Microsoft Word, that's a big, big, big problem, and it is very deep. Deeper than any words I can formulate can explain. No talking paperclip, no amount of eye candy, no pretty (pretty ugly) menus that become a floating window when you accidently click the mouse in the wrong way, no idiotic icons that nobody can understand, will ever solve the problem. And the BIGGEST problem is this: Since computer applications can NEVER become like a car, they can never operate exactly the same way so that once you know one, you know them all. In other words, all cars on Earth fulfill the same purpose--to get you from point A to point B. But each computer program is designed to fulfill a different purpose, and sometimes, the purposes of two applications can be so different that their UIs will not have ANY similarity whatsoever. So how do you make it intuitive? How do you prevent it from becoming stupid but still difficult to use? And what if certain things cannot, by their nature, become "easy"?
Yes, UIs are extremely difficult to get right. Even Apple's UI, which I strongly feel is the best in the world right now, isn't quite right yet. I believe that with time, this situation will change. Obviously, user interfaces will continue to evolve. But more importantly, as more people are exposed to computers, they will feel more comfortable to experiment and learn. I remember in high school (back in the '9
But for most of the other things, I personally prefer CLI because it is much faster. This is about speed after all. I cannot imagine what I would do without smbmount, mplayer, perl!!!,ssh etc.
In conclusion I am one of the guys who cannot see why geeks migrate to OSX because of better GUI.
(Hence, the original poster also has a point.)
After reading the whole article, I wonder if Gruber has in fact used any software at all. I also wonder if he knows about anything that's happening with Linux in the news.
ESR's rant made sense. It did have facts, and it was centered around a case study. However, Gruber seems to like abstracting so much that he simply does not mention any software whatsoever!
He simply states that Apple and Microsoft have talent and create good user interfaces and that Linux developers don't. I wonder if he's ever seen a "Aunt Tillie"-esque person in front of a computer. I wonder if he realizes these people exist. I wonder if he's ever used the latest versions of KDE or GNOME. I wonder if he knows what they are....
I suppose my opinion on the essay can be best summed up in Gruber's dismissal of ESR's claims that user interfaces can be improved. ESR specifically details exact changes which would make the CUPS printer installation better. Gruber retorts that user interface design isn't possible without a guru. My point? He takes more time writing an essay on the futility of UI design than it would take to implement most of ESR's UI-improving changes.
Sure, UI design is difficult. But after somebody gave specific UI suggestions, it seems ironic that Gruber would turn around and say that the FOSS community is unable to create good UIs.
Personally, I'm sick of the Linux zealots who think that the future of Linux depends on mass acceptance on the desktop. It doesn't. As long as there are people who like to tinker (and not necessarily "get stuff done") there will be a place for OSS and Linux. Some users/developers may move to Mac OS X or Windows when they decide they want to "get stuff done." and that is fine. There are always the younger geeks ready to pick up where the older ones left off.
All this talk about what OSS should be aiming for is just ridiculous. As if the community as a whole was something coherent and well defined that you can manage or direct. It is chaotic. That is what makes it fun. Linux might make it big on the desktop someday. And that would be cool, i suppose. But if that doesn't happen, no big loss. It works for me regardless.
-matthew
"THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
I created a 36 slide presentation immediately after installing Keynote, with barely a hitch and never cracking open the user manual. It took me 1 hour yesterday to modify two build slides in PowerPoint
:)
Yeah, Keynote's something else. I've never really used PowerPoint, and when I bought Keynote two weeks ago, I bought a book along with it assuming I'd need something to get me started.
It took about an hour of messing around to learn how to do just about anything. I didn't crack the third party book, manual or even the quick reference card. And somehow I didn't need a wizard!
This may not seem very impressive to some because Keynote is "just" presentation software. But when you see the results, you see why the low learning curve is so impressive.
An excellent piece of software.
- Scott
Scott Stevenson
Tree House Ideas
I guess this explains why the Slashdot UI is such a piece of shit.
If he adds a GUI, it's because either he wants to tinker with this GUI toolkit, or he has a specific usage pattern and a GUI suits it well.
He documents it as much as it's minimally needed. He doesn't provide links on how to update your drivers, or how to build an ---insert yours but not his favorite package management tool--- for this application.
At the end when he's done, he releases it with the mindset "Hey I've done something nice, and I'd like to share it with you all AS IT IS."
There's no surprise here if his needs, usage, or documentation don't exactly suit yours. Most nerds tend to be alike, and we can mostly deal with each others' preferences/style/etc., but Aunt Tillie definitely cannot.
And unfortunately, as the article states, it is not trivial to glue an informative GUI to this finished product. The original developer didn't have that interest to begin with.
There are people out there who publish on their homepages their experiences with getting wireless ethernet to work on linux, and some others help other newbies by answering their questions on usenet. However, only few people commit to keeping their webpages up to date with howto's on new cards and drivers.
There are a lot of good people out there who'd like to solve other people's problems. Are there enough to overhaul desktop linux and make it usable by the masses ? I wouldn't know.
The key to doing usable GUIs is to ... design them before doing anything else. This can be as simple as sketching out the screens on pencil and paper, or as complex as gimp'ed-up images of exactly what will be on every screen.
While this sounds simple (and it is), it requires the programmer to think like a user before writing any code. This is important because most programmers think that elegant data structures and APIs is the reason why programs are written, and then the GUI is built to interface with those APIs.
That tends not to work because the programmer has already formulated in his/her mind how the code should work, and then the GUI becomes a reflection of that thought process. Unfortunately, most people don't think of the problem domain in the same way that the programmer does, and the GUI doesn't make much sense.
By designing the GUI first, it not only forces you to think like a user, but it also forces you to mold your code to conform to the GUI, and not vice-versa. And since it's the GUI that most people think of as 'the program', that's the way it should be.
Seems to me that the real problem that ESR was having was not that the UI for CUPS was bad, or that the help was out of date. The problem with the GUI was that all it did was provide a series of fancy screens for changing a text file or two instead of actually helping the user configure the system. GNU configure could probably do everything that was needed to actually assist in the configuration (not that I know how to set up the script). ./configure, make, and make install. Its not GUI but it is easy to use.
The requirement specification for a configuration tool should be more than just, "We need to have a couple dialog boxes for these parameters, then we're done." Instead it should be framed around questions and how to get the answers like, "Am I on a network? Which driver should/can I use?" This doesn't say anything about whether the user is a geek or Aunt Tillie. Aunt Tillie may need an explanation of what a driver is, while the geek may want to know where to find the source code for one.
We also should remember that UI != GUI. The CUPS configure program was less user friendly than the bare configuration files that finally lead him to his answer. Seems to me that the config files, with up to date comments, can easily provide all the User Interface one needs. If people really need to have dialog boxes, why not just have a tcl/tk script that presents each parameter line with its accompanying comments?
We should take away from both article's the importance of doing UI right, but you can only do that if you figure out why you are creating the program in the first place. As ESR points out, a GUI screen is not necessarily easier to use than a text file. The User interface for compiling and installing default set-up OSS on my OS X system generally consists of typing
I think the mistake some of the other comments make is to confound GUI and UI. An easy to use interface is what we want for both the geeks and the non-geeks. Sometimes that means GUI, and sometimes not. It always means thinking about the requirements of the software, and those requirements will always include installation and configuration.
-John Van Voorhis
I've read long and wide about hackers that love to code, that would give up their life or (involuntarily) sex for coding. Then I find such GUI nightmares as X-CD-Roaster. Things so clearly slapped onto a CLI interface you wonder why they bothered.
So my humble non coding advice is: if you think your code has to be clean and elegant, think the same of your UI. If you must have "code that just works", then do an UI that "just works". Be it CLI or GUI, Do your best..
To end this rant: If you do a GUI, please do study a bit about usability first. I know, it's cool to add another sub tab to make room for hte extra "frobnicate this file" option. Refrain from it. Paraphrasing Havoc Pennington "If your app eats your e-mail, you don't include a pref option just in case someone wants it to stop. You fix it".
"I think it would be a good idea!"
Gandhi, about Internet Security
Comment removed based on user account deletion
I am a developer, but what that really means is I spend a lot of time each day basically typing and browsing as well - just in a different kind of editor.
I do think there is a pretty significant OS X performance boost over Windows for such work (I've used XP and 2k and NT pretty heavily). It's not from the mythical "UI Consistency" which I don't believe helps much and doesn't really exist anyway in an app of any complexity.
Part of it is managing files, but that's not even much different.
I think the phrase I would use to describe it is the computer and windowing behavior is just more unobtrusive on a Mac. Expose is a much nicer means of finding windows you want than anything on Windows. The taskbar is a loose-loose situation on Windows for finding stuff - either you have that horrible folding turned on so that it takes you a thousands years to reach you a window you want, or you have Icon Overload. Lots of people mock the dock but I think it's nice to be able to say "show me all the windows for this app" so easily without the folding icon performance hit. It also makes for a better way to start up common things than the windows menu.
Also, there is window behavior. Perhaps this never, ever happens to anyone else, but daily I get modal Windows coming up behind things (outlook is particularly evil abut this) and making me take time to figure out what window is stopping input from all the others (the OS X sheets are a way better way to do modal).
Because I'm at work I have a number of network shares as well, and this always bogs down Windows explorer at work.
I think I would categorize the savings at perhaps 30 minutes over a day of work, but somehow with much less frustration at the computer "surprising" me when I did not wish to be surprised. That helps make the time I do have more productive in a quality sense, which is harder to measure.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
People don't buy Macs because of Darwin or khtml, they buy it because of Aqua, Quartz, Microsoft Office and Photoshop.
KHTML is a particularly interesting example, because it's the receipient of a large amount of donated code from Apple.
They used it for Safari, but they gave back many of the improvements they made.
- Scott
Scott Stevenson
Tree House Ideas
All programmers should read "The Inmates are Running the Asylum" by Alan Cooper. It will teach you an excellant method for task based design and putting the user first.
Pretty much every time I have a problem with Linux UI/configuration/drivers/whatever Windows usually pomptly presents me with something worse. So I am not convinced OSS is worse.
I also agree with the article that ESR has picked problem that naive end users are not going to face and local printers are easy to configure (usually auto detected and isntalled). I also think most things that naive users tend to do have good UIs: it is not that Linux is hard for ordinary users so much as it is hard to do certain things as efficiently as they would like.
I agree. Simonigger should really stop now.
Personally I am completely lost in a Mac unless I have a bash shell. The directory structure seems a lot different from other Unix type systems, and I have to learn how to navigate the (horrible IMHO) GUI to do any number of sysadmin type tasks. It took a signficant of sweat on my part just to get an OSX to play nicely with our NIS server whereas Linux just worked. I actually prefer the Windows (shudder) GUI to a Mac, but it's probably just my Mac ignorance.
Perhaps for a laptop, but I'd never get a Mac desktop.
I consider myself a UNIX geek. I also have a Power Mac running Apples latest and greatest. Ease of use had nothing to do with my decision to purchase this Mac. I really do not accept any claim that ease of use is why one chooses a platform over another, quite simply becuase if that were the truth Apple would likely have remained King of the Hill from the beginning. But, Microsoft, with DOS in short order overcame "ease of use".
Why I chose the Power Mac.
It's UNIX. The cheapest UNIX desktop you can purchase. (I'm not referring to home grown Linux boxes here.) Look at a AIX workstation from IBM, price Sun's latest desktop offerings. Then, look at Apple's. But, most importantly MacOS X has much more corporate support so that means it has games, applications that Linux doesn't have. It's sweet to have Gimp running beside PhotoShop, or Mozilla running beside Internet Explorer, Star Office running next to Microsoft's Office for Macintosh. Should I mention, all of these being NATIVE as well? To me, that's a big plus.
I argue, that overnight, Apple went from having the least amount of software available to it's Mac platform, to having more software than any other platform in existance. Not only can you run 99% of all the Open Source software, you can run many of the commercial applications too. I find that awesome.
They also seemed to have defied the natural order of compensation. They have managed to make UNIX very easy to use for the average user, while maintaining an in-depth use for geeks of all levels. To me, that's like a world class bodybuilder who is also a world class chess champion and Noble nominee. Not saying that's impossible, just saying it's odd and odd for reasons stemming from experience. Like the drop-dead gorgeous babe with the hottest body, also being a semester away from a Ph.D in astro-physics or some such field.
I'm a UNIX geek. I'm also a IT professional. I have no ground to complain about ease of use, by doing so I imply my weakness and lack of skill and or knowledge!
Mac OS X became what it is, Awesome, (Yes I am one of the die hard
Linux fans converted by my new powerbook) only after it assimilated
umpteen amount of free software. Infact the Mac OS X is bundled with more than
50% open source code. Even the intuitive GUI that Guber raves so much about
is OpenStep clone.
Its not whether its open source or closed source that makes a good software. I know
die-hard windows fans who cannot find the right shortcut to do what they want to do
many times. Its the attitude of the developers.
But Mac OS X seems to have th right mix of super powerful beast inside
but super intuitive GUI outside and this happened with the right blend of engineers,
UI designers and their attitudes.
DO NOT PANIC
they might not like the new finder, but the old finder sucked a lot more. they just can't admit it because they put so much effort into working around it.
oh, it was fast. sure. ok. it was also junk. new finder has its share of problems, but at least it's usable and advertises its capabilities.
[|]
>Since much of open source is developed to >satisfy the intellectual/academic interests of >the development team, they often forget that >someone else may want to play with their toys Ditto. this man hit it on the head. most folks just want to use thier computer and the apps they need. If you want an example of a perfect os as far as usability look no further than the Amiga OS 2.0 and up. Forom what i've read about the mac osx it sounds like it works like an amiga. When you hear someone say something like "It's easy and intuitive to use yet the CLI is also there when you need it" is talking about an amiga like operating system. Anyone can use it yet the power is there when you need it. The linux/unix community has it ass backwards, not surprising since it came from academia. but progress has and is slowly bieng made and we can all be thankful for that
I've ever seen one of my post get the:
Extra 'Troll' Modifier
listed. I guess I pissed off someone. But hey, I guess:
40% Troll
40% Insightful
20% Interesting
means "troll" right...
-dameron
WTF are you smoking?
two points:
1) I disagree that properly designed software is designed front-end, or UI-first. Such software, in my experience, ends up hard to extend, hard to use in unplanned contexts, and unflexible...
That doesn't mean UI can't contribute to the design, even at the beginning... But you design by datastructures lately, and orient from there, in many modern programming environments(when you aren't flat-out using objects, data structures work quite well). If the UI can store/manipulate the data he needs, in the format he needs, he will usually be quite happy(and won't forget to make his software localizable, currency-converting, language-translating, etc...)
2) Wizards:
Technical users' aversion to wizards is usually misunderstood and I'm not sure the article is an exception. just yet...
Technical users mind wizards because:
1) they let people who misunderstand how the system works keep using the system without updating their grokking of the problem or its solution
2) they require work, work that could be spent at improving the UI as a whole, not just for non-technical users(why would we like the developers(aka us) improving the software for everyone BUT us, when we usually have current grievances with the software is beyond me(and there is no such thing as perfect software, especially not in the eyes of a techie purist)
3) A "basic-level" ui with advanced buttons/sections usually is a better solution, with a good design to back it up, as the same UI can scale to growing understanding of the situation by the user, they can also, with a little work, cover several use cases. Wizards are usually static, linked to a single use-case and limited to a single way of looking at a problem.
4) That limited to a single way of looking at a problem can be irritating to some people. Those people tend to follow TIMTOWTODI and other "geek" thought processes, which don't follow the norm. It can appear condescending, limitative, or just plain annoying to someone that's too concentrated on his/her view of the problem to see the one from the wizard. That such people tend to be heavy/repetitive users of software, and not casual users compounds the problem.
As a footnote, Mac software UI design has gotten prettier in the last years... But in terms of consistency, the Mac User Interface Guidelines, as a global, almost-universally followed, enforced standard for UI has not yet been outdone... That the Mac can apply this to software that they can choose to open can only benefit everyone once they do.
That such a thing hasn't been extended universally to all computing concepts explains why we have such articles popping up from time to time...
Elegance means caring about what you create, caring not only that it works but that it works well, caring that other people may work on it, caring that it may be used in different conditions than you foresaw.
Elegance often means choosing simplicity, and restricting choice; choice isn't always a good thing. Better to have one overwhelmingly good way to do something, whether it's a UI method, an API, a language construct, a business process, or a class method, than umpteen bad ones.
Elegance may mean taking time; time to think things through before you start coding, or time afterwards refactoring out ugliness. But that time is well-spent, an investment that's often repaid.
Elegance usually means consistency: uniformity makes things easy to understand and predict, whereas inconsistency draws your attention to trivia, whether in concepts, code formatting and naming, UI layout, API design, system organisation, or whatever. (Time spent getting bogged down in arbitrary differences is wasted time, even if those differences are shiny or buzzword-laden.) But it can also bring power and flexibility.
Some examples of elegance are clear: Unix pipelines, UI tabs, the iPod. But most aren't so easy to spot. It takes some care to recognise it when you first see it, and more to create it, but it's well worth the effort.
PS. As Blaise Pascal said, "I have only made this letter rather long because I have not had the time to make it shorter."
Ceterum censeo subscriptionem esse delendam.
dude, there are at least four ways on the GUI to go up one directory in mac os X. Click the path-pulldown. Command up-arrow, the back button, or in column mode the scroll-bar or left-arrow.
Your a fool.
As far as desktops go, I'm happy to stick with Linux (at home) or Windows (at work). Linux works well enough for me on desktop PCs to be extremely useable, and has some specific advantages over Windows as far as I'm concerned. Even my parents, both in their 60s, run Linux/Firefox/Thunderbird/OpenOffice just fine and probably STILL don't know what a virus is...
... Sure, you can use a PC Card modem, but who wants to do that when you've already paid for a modem in your laptop???
However, laptops are a different story. Of all the people I know who've tried to run Linux on a laptop, none have managed to get more than 90-95% of the whole system working. Modems don't work, or screen drivers don't work, or hibernating to disc doesn't work, or networking doesn't come up after hibernation, or
I'm gonna switch to a Mac laptop when my current one reaches its end of life in the next few months. Being able to run Unix on a laptop, with vendor support for all those bits of hardware, is worth considerably more to me than the cost difference between Windows and Mac laptops.
Sure, there's a few Windows apps that I can't live without, including such abominations as MS Project, but I'm willing to bet that either Virtual PC on a Mac will let me run those apps or I'll find suitable replacements. In any case, the inconvenience will be more than covered by not having to run Windows.
it really is easier when you can lay out a gui then just make it work.
wouldnt be bad except it requires for thought on the part of someone to make sure the back end that does what it does eventually mixes with pretty.
widget macros would be cool. *april *boom**.
Since no one ever mods beyond the first hundred articles, I'm talking to myself here, but...
Of course OSS guys are bad at GUIs. They should be. GUIs are the last refuge of the incompetent.
Printing should not need GUI configuration. Why on earth should it? The devices are mostly connected by USB or network these days, and even the parallel port ones can mostly be easily probed. The print dialogs in the apps take care of pretty much everything else. The printing user should be able to just turn on the computer and use the printer. But no...
Check out the printer interface on the Mac sometime. No, no: not OS X. The 128K Mac. It's basically what I just said. The printers were either smart enough that they could handle whatever the Mac threw at them, or they didn't work at all. As a result, the Mac was a dream for printing---until PC commodity HW got so high-volume = cheap it couldn't be ignored. But even now, the big miracle isn't the clever GUI design for Mac print config: it's the fact that there's so little config, not much GUI is needed.
Heck, look at what the X Window System is doing. Graphical configuration? No. The core X developers are trying as hard as they can to DDC monitors, PCI-id vid cards, and autoprobe mice. Good GUIs are hard, and no one wants to configure this stuff. Just make the SW do the right thing without pressing buttons. Note that Knoppix/X pretty much manages this. On random cruddy commodity PC HW.
Move to a Mac if you like. I have better things to do with my life than navigate menu trees. I have code to write, and games to play, and e-mail to send. I have a life. I don't want a GUI.
Dude get with the plan. panther has the application menu on the sidebar, the dock for any quick access, not to mention recent items which you can put on the dock too. Most folks just amke a folder with aliases to all their favorite apps and drop that in the dock. as for tabbing between finder windows, that's what expose does you moron.
I am migrating from Red Hat (7 years) to Debian (20 days) and I understand Eric Raymond's pain at figuring out CUPS.
My experience is that solving configuration problems is easy for programs with a complete but brief man page.
A good man page gives you the syntax, names of configuration files and pointers to associated program man pages.
I have been trying to think of solutions to the general documentation and configuration problem with Linux in these two ways:
A: Make a configuration framework that is customized by a local search and indexing engine: Use a startup framework like the RUTE user guide and annotate the text with local machine links created by a little indexing engine.User guides could be written around different perspectives (like Red Hat or Debian), and in different languages. The indexing engine would populate the guide based on what software was installed on the specific local machine.
B: A simpler approach is to come up with a way to write "shadow" man pages, independently contributed alternate man pages that correct and extend what the original authors created to accompany their original program.
A: One, HFS+ (or two if you count HFS, both of which are terrible)
Can also format what Apple calls the "Unix File System".
Strange women lying in ponds distributing swords is no basis for a system of government.
I use OS X. I've always used a Mac because it is the best computing experience, but I BELIEVE in Linux. Linux has the potential to be cumulatively better than any computer operating system because it has potential input from far more skilled people.
The coding has been great, the apps are progressing with amazing pace and people are really using the software for real world problems.
The big problem to this point, as the two articles point out, is that there have been no skilled UI designers or branding managers involved in the development process. The reason is simple - these people get paid good dollars doing private work. They're also particular personality types - generalists who are also perfectionists, big egos with big personal goals. I will humbly say that I'm part of this group and offer the following as some perspective to the community.
I've wanted to be involved in Linux but it's closed to creative idea types. The incentive that drives these kind of people when money isn't involved is the ability to see ideas come to life and until recently, only hard core programmers could have this opportunity. The comparison to Apple is almost perfect. Steve Jobs runs the company. He is the vision and he makes sure everything fits in right down to the amount of shine on the OK buttons. He's not a dictator though, in fact he relishes the input from his team so that he "can make the best user experience there is." Steve Jobs isn't saying this because of some marketing spiel, he truly believes it.
The culture of Linux is fundamentally opposed to allowing one visionary take any kind of control (with the exception of Linus perhaps). There will never be a competing level of usability in Linux as a whole until the environment that can support the likes of Steve Jobs exists.
I think the one shining light of late, as many people are noticing, is the Mozilla project. Somehow there was a leap of faith and the project asked Steven Garrity to take hold of the branding. Already, we've seen some huge improvements because he thinks like a visionary. For me, the proof is obvious through his writings and what has already been accomplished. This is the first project that I've felt I could offer something to and I think that's an important milestone that must be noted by the community.
You have to attract more of these people. There has to be a level of respect and opportunity for idea people from within the programmer community. While many will say that it's up to programmers to determine the destiny of Linux, that will mean that Linux will never compete in the sphere that real branded companies exist in. The types of people with vision are not overlords, or politicians, or slavemasters. They're people who can focus energy in a common cause and accelerate acceptance and usability. In time Linux will have to accept some kind of central direction, or even more limited distros so that there is the opportunity for certain personalities to step forward. I hope this happens sooner than later because I've been waiting a long time for the promise of an inexpensive, open and powerful computer. Apple always strives for those goals, but only Linux can ultimately attain them.
Secondly: I also think that linux is too difficult. I would love to throw Windows away but I can't now. I just want to right-click when I zip/unzip file. Linux doesn't have that. So I'm going to stick to Windows. YES it's that basic.
Keynote is an absolute jewel. Just a short anecdote... I gave a talk at my university about Debian Linux aimed at people who want to see how far the Linux desktop has come (I'm running unstable, so easy there...) and what they can expect from Linux. It also dealt with a lot of the ideas behind Free Software, some of the big thinkers (ESR, Stallman, Perens, though not all in the same breath), and it covered with the great advantages of Debian's package management, etc.
Well, I had to give this talk at our student center, and so I obviously wasn't going to lug my desktop PC along, even though it is an SFF. I own a used Powerbook G4, which I've been lovin' because of my ability (through Fink) to get the latest Linux necessities but still have access to the wealth of proprietary software I enjoy using (Photoshop, InDesign, Dreamweaver, etc.)
I was planning on using OpenOffice to make the presentation, but at that point OOo wasn't running too easily on OS X, and it occasionally crashed on me. I didn't feel like showing off a piece of OSS that crashed constantly as a way of convincing newbs. So I went to the local educational discount store and picked up a copy of Keynote, expecting Powerpoint aquafied.
WOA, was I wrong. This program, with only a few minor exceptions, should be the UI design BIBLE practically. Within an hour of playing I had everything I needed to make a really slick presentation. When you move elements around they click into place, and INTELLIGENT alignment bars appear to help you align other elements with existing ones. The templates are smart rather than inhibitive, and they are actually beautiful designed. The fonts are crisp and clear and perfectly antialiased, the transitions are smooth and (sometimes) 3D accelerated, the support for Quicktime movie files and MP3s is superb. Not only that, but after my talk, I was able to export the presentation to a Quicktime file and burn it to a CD, all without a hitch.
This was all so slick that it got me into trouble. Someone at the lecture asked, "Was this presentation made with OpenOffice, because it's really cool..." and I had to tell him that I used Apple Keynote, with a collective sigh from the room.
I said, "Don't worry, OO is getting there." Yea, right. I was lying just to make everyone feel better. OO will never get there. Keynote is like an entirely different way of thinking. I wouldn't even call them the same kind of tool in this case. Word processors are word processors, but there are presentation programs and then there is Keynote.
---
THERE'S STILL HOPE...
---
That's not to say Linux is doomed on the desktop. I'm a Linux desktop user. But developers definitely need to take lessons from some of these proprietary gems. Just a short list of applications whose UI principles I'd like to see utilized in the Linux desktop world:
o MS Office v. X - has many differences in UI design versus MS Office for Windows, particularly the formatting pane.
o Macromedia Dreamweaver - still the most efficient way to build websites within a graphical environment, and it's because the GUI is smartly designed.
o Watson - if you run OS X, check it out. Swiss-army-knife search tool, and to be fair check out the Windows "sorta-equivalent", Copernic.
o Tune Up Utilities 2003 for Windows - has a wonderful "integrator" program with a great UI, should be imitated for any collection of tools like a control panel.
o Winamp - huh what? Yes. A media player that doesn't imitate iTunes (like Rhytmbox), but also includes "media library" functionality and mp3/aac/ogg ripping, and is Winamp skinnable. So either improvements to xmms or something altogether new. I, for one, hate iTunes and its design.
o DVD Shrink - This is a good example of one of those "one-function" programs that just lets you see all the options and click "go" and everything works. acidrip and dvd::rip both have this sort of "single use tool" aspect to them, but their GUIs are still just wrappers to cli tools, such
Q: How many arch's can you run OSX on?
A: One (PPC), two if you count the x86 version of Darwin, as many as you want if you feel like porting XNU (it is open source afterall, and very portable (far more so than monolithic linux in fact, since you only need to port the microkernel, and everything else is hardware independent))
Q: How many File Systems do you have to choose from with OSX?
A: HFX, HFS+, UFS, UDF, FAT32, and various other common filesystems work out of the box, and you can (and people do) write your own plugins for other FSes like ext2 and NTFS.
Q: How many desktop UI's do you have available to you?
A: Aqua, X11, and any theme or window manager you feel like running on top of either of those.
Q: How "customizable" is your interface (aqua).
A: Very, you can change the visual elements of your applications without recompiling or any special tools thanks to apple's application packaging system, and with themes and one of the common tools for managing them you can change the appearance of your whole system quite dramatically.
Q: How portable is the cocoa framework?
A: It is based on an OpenStep, a open specification that has been around for quite a while, as has GNUStep, a open source implementation of that spec. In addition, Apple has in the past prototyped it's own "yellowbox" version of Cocoa running on top of Windows.
Q: How many vendor's do you have to choose from if the one you're with takes a direction that you don't like or can't work with?
A: All of them except microsoft really. If you get pissy about buying Apple's OS updates, you can always install linux or BSD or something on your macs.
"The worst tyrannies were the ones where a governance required its own logic on every embedded node." - Vernor Vinge
I call bullshit. Rob Malfa could easily edit the PostGres datbase entry for this entry.
Exactly right. Why change something when it works?
Example: The U.S. military.
How many of you pimply-faced 16 year olds ever heard of the Kermit file transfer protocol? It was invented in '81 as a highly reliable way to send data without error. The U.S. military still uses this protocol to send data over *110 BPS* (yes, that's right, 110 bits per second) connections in highly critical applications because it is absolutely bulletproof.
They could just as easily trash all that stuff and use some new-fangled suitcase-sized satellite terminal to transfer the same data at several MBPS. But what happens when there's a glitch in the system, or the system goes down? Congrats, the Patriot missiles don't fire, and a nuke just landed on your mom's house because our government went for eye candy rather than predictability reliability.
There are countless other examples of this in the military. How about the B-52 bomber? It's been in constant use since the *50s* (with numerous upgrades of course). Ever once in a while I hear some ignorant person wonder why we don't scrap the B-52. The answer is that it does a job that no other bomber can do, and does it well, and most importantly, it does it *reliably*. It's a *proven* technology. There's no *benefit* to trying to build a new bomber to take its place. It has been constantly refined over the years, and its limitations and abilities are well-known.
You can easily see how this applies to the subject at hand. RS-232, parallel ports, etc are all proven technologies that have lasted for decades and performed their jobs reliably and predictably. Exactly what's the rush to swap over to some brand spankin new technology just because it's new?
Sure, USB 2.0 is a nice standard. Great. But don't expect everyone to ditch what they've got just because something new shows up on the block.
These must be the same people who spend thousands of dollars doing "case mods" and installing neon lights and other useless things. The same people who, in another life, would spend half their life in the mall buying new clothes because their old clothes are "SO five minutes ago".
However, laptops are a different story. Of all the people I know who've tried to run Linux on a laptop, none have managed to get more than 90-95% of the whole system working
Try 99.99% - the only thing not working is the modem, which I don't need since I have an RJ45 wall socket in every room where it's needed.
Since I don't need or want to use the modem it counts for less than 0.01%
You make the mistake of thinking you can educate the fundamental stupidity out of people. You can't.
...he's on the mark regarding many issues facing Linux today.
The major factor in why commercial products tend to have better (not always) UI's is that the UI is there only differentiator. I mean, how many different ways are there to burn a CD? Create a 3D mesh? Handle e-mail? Configure a networked printer?
Now, with the varied and sometimes overwhelming number of hardware configurations out there the base functionality code makes up a greater percentage of an actual 'finished closed source' product that he gives credit for; however, as he was saying the UI is absolutely critical.
How many people have been turned away from the FANTASTIC application that is Emacs simply by starting it up and looking at it (then running away quickly to fire up KEdit to maintain their blissful ignorance)?
UI design and implementation IS the hardest and (usually) most boring portion of project development. Good UI developers are indeed worth their weight in gold, just as good technical writers are. Unfortunately, gold costs money...
Loading...
I tried getting my network printer up and running with a friend's MacOS X box and it was nowhere near as easy as some Slashdotters make it seem. I had to know the location of the printer on my LAN (MacOS X did not search my LAN for acceptable printers, nor did it discover that this Brother HL1270N is the only printer on the LAN--two items ESR says would improve the GNOME druid he tried in Fedora Core 1) and I also had to know the make and model of the printer. Nothing was auto-discovered, nothing was automatically configured for me.
Conversely, adding the same printer to my GNU/Linux box was about as easy. No automatic configuration there either, but the GNOME druid guided me through the prompts ESR complained about. Yes, much of what ESR had to say was apropos--this process could be made far better along the lines he discussed, but I did not find MacOS X to be anywhere nearly as easy as even this topic's lead-in would suggest.
Adding my Epson inkjet color printer was a different situation. This job was easy when I connected the printer to the GNU/Linux box via the parallel port. My Fedora Core 1 box saw it, configured it on start up (I believe Kudzu did this and it appears to work), and I was left with a printer I could use right out of the box. So I don't completely understand where the "(Side note: parallel port? What year is it in the Raymond household?)" quip came from--some of the printers on LinuxPrinting.org state that autodetection works with the parallel port, not USB.
It was my experiences with printing under Fedora Core 1 that led me to recommend this distribution to friends (even making duplicate copies of my install discs to give them). So I'm left thinking that we're fortunate to have free software so the community can improve the software that needs improvement and we don't have to wait for someone or some organization to do it for us. I'd happily pay for improved free software if I couldn't do the job myself.
Digital Citizen
I don't know what the major differences might be inside the kernels, but I can tell you that the decision to use BSD was a direct result of licensing. If They used Linux, they would have needed to release any changes they made under the GPL. Under the BSD license they can keep those proprietary. They are, of course, still Apple. It may have been a wise decision to use a UNIX like kernel, though, in order to take advantage of OSS. That's my bet.
I won't join Slashcott. OTOH, If Beta goes live, I just won't be back until it's fixed. Sorry Dice.
Just make sure you get a Powerbook instead of an iBook, or wait till the G5s come out, because Virtual PC is fsckin slow (Virtual PC running Windows XP on a 800MHz iBook G4)
And you are going to be damn happy. I just bought a powerbook 12". I had been using an Dell Inspiron 5000 for four years along with various Linux workstations. OS X is absolutely unbelievable.
I love my powerbook. And now, when I look at how much it really cost me to make my workstation, I am chagrined to find I am almost at the cost of equivalent PowerMacs.
Oh, and my powerbook was the same as an equivalently featured Dell. The Apple hardware isn't as expensive as it used to be. You might be surprised to find your laptop not costing as much as you would expect.
"Doubt your doubts and believe your beliefs." -- Switchfoot, Ode to Chin
I think that what interfaces truly need are simple rules that can be quickly learned, from which one can intuit the more complex details. I'll explain.
We know that when you get into a car, your real-time info is always in the same place, below the windshield, usually behind the steering mechanism (I know there are exceptions). Window controls are usually below the window. Parking brake is in the center console or at your feet. There are simple rules that allow a person to figure out how to drive almost any car.
Computers, on the other hand, have detailed rules that do not allow you to figure out the simple stuff. Mouse pointers usually look the same. Drop-down menus usually work in a similar manner. But only a few parts are always in the same location (window control widgets, start button, taskbar). Even those are often found in different locations.
We need simple rules that allow us to figure out the complex stuff. A simple example might be that we put things that can happen in the future at the top of the screen (like commonly used programs, start button, "My Computer" browser), and current or past stuff at the bottom (logs/graphs/gkrellm, running programs, time, weather). This way one could easily figure out where an action would be.
This probably needs some research first, because the rules should be intuitive, simple, and cross-cultural. But *we* need to define those rules instead of letting Microsoft change them every 3 years.
PS if anyone is interested in doing this research, send me a message - I'm looking for an interesting HCI project to work on!
He's got the "UI is spooky" meme stuck in his cranium. It's distorting his view. This view holds that while coding device drivers or application logic is easy because its math, UI is spooky because it's human, and that requires a cognitive psychology doctorate and an MFA to do right. This is, of course, bullshit, so it's not surprising that he is mislead into drawing erroneous conclusions and basing his critical reply to
ESR on those errors.
In fact, UI is not hard anymore (since we don't have to use the Xt object model, the most overengineered piece of object-oriented crap that ever came out of an ivory tower). Instead we have simple UIs and simple object -event models like KDE's components and QT's slots to hide the complexity (most of the time), and vastly more examples of consistent and market-persistent UI designs since back in the day, making UI design and implementation so dead simple the bulk of the time that any barely or even not quite competent coder is without excuse.
No, ESR hit the nail on the head this time. (Even a broken clock is right twice a day?) The upshot is that CUPS is one of the least well-integrated systems on the modern Linux workstation desktop, and it's a real burden on the viability of further popularizing the platform. But fixing it would not be hard. What is hard, and what ESR is addressing, is the more important problem of fixing the underlying cause, which is endemic: Development-centricity so all-consuming that the most gracious and diligent contributors to the public good will overlook the most elementary aspects of the public use of their software.
-I like my women like I like my tea: green-
This guy is confusing usability and learnability. Don't get me wrong--learnability is not a bad goal. The difference is as clear as that between vi and Notepad. There's no question which is more usable, or which Aunt Tillie should use.
demi
I probably shouldn't post this late in the thread, but dammnit, sometimes you gotta.
The article is pretty perceptive about some things, specifically, seeing the underlying attitude in Raymond's article which was itself the cause of Raymonds problem.
Here's the thing though: he points out that usability and UT design are arts, and require gifted, talented people to perform. I have this to say.
THE SAME FOR WRITING SOFTWARE YOU, POMPOUS ASS.
Have you read the Mythical Man Month? You just can't throw developers at a project to make it better. The author here seems to think that this is how OSS operates - lots of developers ameleorating their overall mediocrit. And yet Open Source is still churning out high quality software at a rate to make MS blush, and only a food would think that the quality of the Linux kernel was entirely about the number of developers working on it. So, clearly, we must have strong leadership and good talent working for us. Why hasn't the same thing happened for usability?
It will. The fact that Slashdot posts articles about usability shows how the community is turning the furor of a thousand keyboards in the direction of usability. Once again, someone misunderstands "Open Source", and begins to say what it can and cannot do. I say wait and see.
I've been a web developer for several years. So, I am familiar with the problem. I think of myself as an accomplished programmer, fairly good at solving business problems in clear, concise, and effective ways.
I have also done my share of page design, although I don't think I'm very good at it and no one has ever disagreed with me on that point. However, I've been able to have good web designers on my teams who put together the interfaces that will work with the software I write to solve the business problems. This makes sense.
Which brings me to my point. Why is it that no common GUI toolkit that I am familiar with makes it possible for a designer to create the interface without programming knowledge and the programmer to put actions behind it without design knowledge the way that web frameworks do? I'm not even familiar with a non-web UI framework that uses markup of any kind. Most use a fairly complex API that requires someone to have a lot of programming knowledge, some experience with design patterns, and plenty of experience programming GUIs with similar APIs before they get it right. Such a thing is incredibly unfriendly to designers. The only exceptions that I am familiar with are proprietary "visual" toolsets like Visual Studio where the API is no less complex, but the tool allows for WYSIWYG.
What I would like to see is a GUI toolkit for the open source market that allows XML markup to be used to describe the interface just like a web page, and then has hooks for code. This would allow us to convert web designers to GUI designers and get a lot of input and help from the design community.
BTW, a lot of great designers already do contribute to open source... by designing web sites. If there were an opportunity for them to contribute to GUIs I bet they would.
Elves use the GUI
Dwarves use the CLI
(Hobbits use PDAs, but that is besides the point)
Comment removed based on user account deletion
Seriously, if you're coding PHP why do you need anything more advanced than syntax highlighting?
I admit, the closed-source UIs are very pretty, but they're easily outweighed by things like NFS, greater stability, etc.
Furthermore, I find that all of the bells and whistles of windows just serve to distract me from what I'm doing. When it comes to the really hard-core work, I usually go with just a straight fluxbox session.
Now, I'm not just trying to bust your chops here. I used to swear by visual studio...I used nothing but VS for all of my C++ dev for five years. I finally just threw myself into linux because I knew it would be better...it was rough at first, make no mistake.
However, once I didn't have autocompletion of my methods, and pretty charts that show all of my members, I found myself actually REMEMBERING everything instead of just relying on the program to do it for me, which actually has made me more efficient in the long run.
Installing linux was really difficult, too, especially since I picked one of the more hard-core distros (Gentoo)...but now I really know my OS inside and out. It took forever to get the damn thing working, but I'll still be upgrading this install long after I've had to wipe my windoze partition for the next XP clone.
But there is another kind of evil that we must fear most... and that is the indifference of good men.
The list of fantastic open source GUI software is short. This is not a function of chance.
What Open Source projects would you say should belong on this list?
If you don't want to repeat the past, stop living in it.
Also, there is window behavior. Perhaps this never, ever happens to anyone else, but daily I get modal Windows coming up behind things (outlook is particularly evil abut this) and making me take time to figure out what window is stopping input from all the others (the OS X sheets are a way better way to do modal).
This is a good demonstration of the tunnel vision a lot of OSX users have. Not a single mention of iChat "chat request" windows popping up and staying *above* all other windows until you specifically deal with them.
There's a related thing in Gnome that does something similar. I hate how new windows get focus even though my mouse isn't in them.. it's frustrating and I haven't found a way to turn it off.
People seem to think the above was my original work when in fact it is a re-post of the article -- that was totally not my intention. I thought, wrongly, that it didn't need disclaiming. Sorry John. It just goes to show that people really don't RTFA ;)
Me lost me cookie at the disco.
It's true that Linux developers have their beanies on too tight and don't recognize UI design as the High Art it is. But that's a symptom, not the disease.
The disease: Linux is open.
I don't mean free, nor do I mean open source. I mean: there's no one in control. This is a great motivating feature of Linux, that's for sure. But it's a DISASTER for GUIs.
I have a friend who puts it this way: GUIs need a hegemon. A very smart person in charge who tells you how it MUST be done. Very true. The single most important feature of a UI is consistency. Consistency in look and feel. Consistency in interoperation among applications. Consistency in how widgets operate. Linux is anti-consistency.
Lessee, let's just count the incompatable widget sets. You got athena, you got qt, you got motif, you got emacs' weird way of doing things. And GNUStep. And gtk. And Swing. We're not just talking different looks. The scroll bars work differently. Cut and paste works differently (heck, there's not even a consistent inter-application cut and paste mechanism; some still use grotesque things like mark-and-yank). Drag and drop doesn't work correctly among any differing widget sets. There's no consistent font access, no consistent open or save panels, no consistent print panels, no consistent dialog boxes, no consistent icons, no consistent way to access menu items via the keybboard.
And don't even get me started on the five billion window managers. And there are people who actually think this is a GOOD thing! And even when the open source community tries to create a uniform mechanism, they blow it. So now we have GNOME *and* KDE. Smart. Really smart.
What makes MacOS X so good is consistency. Every application works with every other application. Drag and drop. Services. Cut and paste. Application ownership of files. And every application operates in the same way. Fonts, colors, panels, widgets, dialog boxes. They're all the same. You don't have to memorize five hundred different ways of frobbing a scroll bar. Apple has put a lot of work into this, establishing standards and creating tools to make it as easy as possible to get your app working with those standards. Apple's even taken pains to make odd-men-out (MacOS 9 apps, Java AWT/Swing apps) work as similarly as is possible to the Aqua interface.
The reason Apple has done this is because they have a few people In Charge who dictate how things will be. Sometimes the dictums suck (Dock, New Finder) and sometimes Apple violates its own standards (brushed metal for everything, ugh). But they're standards nonetheless and that kind of control is powerful.
Until Linux gets someone big enough to *demand* that interfaces be a certain way, it'll always be the redheaded stepchild on GUI street.
I have an IBM Thinkpad 300MHz Pentium (no, not Pentium II). It has recieved various power surges, falls, mishandlings, etc. at the place I work at. As tech support, we were going to throw it out, but since I am a bit of a glutton for punishment, I decided to try and fix it.
Besides the broken USB port, and the fact that the battery won't charge (wouldn't in Windows either). Windows didn't run that well on it, but it's been happily running various linux distros for a year now. I tell ya, if you can get linux running on a hardware minefield like that and have it be rock-solid stable, then I'd say Linux works pretty well. Granted, it wasn't easy to do with many distros. On the plus side, however, I really learned how to use Linux that way. Talk about a crash course.
And yes I know a laptop without a working battery isn't much, but hey, it gave me a platform to switch to Linux.
Systems have two properties - essential and accidental. Essential properties are those that are an inherent part of the problem being addressed. For example, in checking a document for spelling an essential problem to solve is 'how do I figure out what words are close enough in spelling to a mispelled word so that they constitute possible corrections?' An accidental property is 'what happens if the System folder isn't on the C drive and the app cannot find the english dictionary?;
Open source programmers tend to focus on the essential problems in the system. For example, there might be a command line option to determine which algorithm to use to compute the 'distance' between two words (to help identify possible corrections). Most developers, in fact, tend to avoid accidental problems that complicate the system but add little value to the solution. And GUIs are essentially nothing but accidental problems to most developers.
This approach is great for servers and infra-structure type applications. I need software that works correctly and solves my problem, and as an administrator I'm a sophisticated user that will take the time to look up the command syntax, etc. I can use fairly simple techniques, like scripts, to automate tasks. I can tune the operation of my service to meet my work-load because the developer invested all their energy in giving me a bazillion options for everything under the sun.
This doesn't work so well with desktop applications. You might have a command line spell checker which is the essence of what a spell check should be, but if I have to stop and read a document to learn how to invoke it and integrate it with my word-processor - I won't use it. Word processing, spread-sheets, tweeking my honeymoon pictures - I want a nice, easy to use, GUI tool. (I get faster, better results using red-eye reduction in iPhoto than opening up the picture in photoshop).
It isn't that Linux developers don't care about GUIs, in fact I'm very impressed with the usability in GNOME and KDE, especially given that it was voluntary. It's that building a GUI to manage a web server is not an essential part of a correctly running web server. It may make my life as an admin superficially easier, but it doesn't make the web server scale better or make it more robust. However, when using a GUI application like a WYSIWYG word processor - the quality and usability of the GUI is an essential problem to solve.
Now about configuring printers in Unix... Eric Raymond, using CUPS, has at his disposal an enterprise class printing system. The developers have addressed many of the essential problems of networked, distributed, shared printing. Of course they didn't created a sleek, easy to use, intuitive GUI tool. That would have opened up a whole can of worms on top of getting a document into a print queue and rendered on a printer. What is needed is someone who looks at the lack of a GUI to the printing system as a problem to be solved - and therefore a high-quality GUI becomes an essential part of the problem. This does not have to be the same person who wrote the printing system.
Also, there is little reward in writing software for Aunt Tillie. No matter what you do, it will never be easy enough of clear enough. No matter how much usability testing goes into the product, she'll always call you on the phone to get help. So, you sit down and design what you believe to be the most clear, simple, usable user interface, but Aunt Tillie will still sigh and ask 'why does it all have to be that complicated?' Not to say usable GUI's aren't important, I'm just saying they aren't especially rewarding to write.
Leave the gun, take the cannoli -- Clemenza, The Godfather
Slashdot is running on MySQL you troll, but I'd prefer if they used postgres.
--- Justin Dearing http://www.justaprogrammer.net/ We're just programmers.
I just studied Interaction Design, and was the Mac-administrator for our study. What a pain in the a** it is to use USB-printers on Mac OS X (of course this is without use of Mac OS X Server, but I wouldn't believe it would be better).
/var/cups/spool and reinsert the printer or restart the computer. Thirdly the interface is horrible (and the waiting-time). Even the web-interface is nicer. I was hoping they changed it in 10.3, but I noticed from the screenshots, that they didn't.
I was happy when 10.2 switched to CUPS, since there were more posibilites to "control" bad issues. Firstly many of my users didn't get that they couldn't move the USB-printers to another computer, since it would require installation of drivers (Epson). Secondly printer-cues can get badly organised, and you have to do stupid things to get it working again. To even get it all working again, I had to delete the tmps in
But saying this, I was happy about getting CUPS, since I could use gimp-print drivers for an Epson Pro 7000 Posterprinter, we used a lot, instead of dualbooting to OS9.
(yes this can be compared with sex)
"The culture of Linux is fundamentally opposed to allowing one visionary take any kind of control (with the exception of Linus perhaps). There will never be a competing level of usability in Linux as a whole until the environment that can support the likes of Steve Jobs exists."
Will this individual come with a Reality Distortion Field?
As a metric goes, this one has held up pretty well for me over the years. Back in the day, if a feature took around one day to code it took around 4 days of UI work to get a UI that was decent. I'd never claim my UIs were good, but they got the job done and were clear and straight-forward.
That includes testing the UI, BTW. Not user testing, just making sure the UI actually worked.
That five-to-one ratio is an average. For simple CLIs the ratio is less (there's no UI, but there's a usage statement) and for complicated features the ratio is more.
You can certainly cop a lot of flak in the FOSS world for having a design focus and trying to stick to it.
There's no end of people, not least on Slashdot, who seem more than willing to chuck a tantrum if their pet quirk isn't looked after.
Well done to the GNOME folks for their latest step down the road to nice software.
Boffoonery - downloadable Comedy Benefit for Bletchley Park
I think both of these articles have problems. After ESR subjected his readers to that CUPS rant I couldn't put my finger on it. After this I think I know why it bothers me. He basically assumes that the skills used in writing code are the same skills that a system administrator has. The truth is of course more complicated than that. There is perhaps some overlap. I've done both for years, but quite a bit more SA work than programming, and what programming I have done wasn't really for "end users", mostly for myself or fellow SAs.
Oh, and saying that good UI design is an art is kind of a cop out, an excuse to avoid the study of how people interact with their computers. In short, an excuse to avoid thinking with some hand waving about artistic talent. If I think they're serious, I flinch when people call their code "art", too. Art should evoke an emotional response, mostly I get intellectual stimulation from it.
One final note. If you don't like the UI, then perhaps it's time to write a better one? No one forcing you to use it as-is. People are going to assume that's a troll, but I don't care. You have the code, you have literally millions of lines of readable code to teach yourself from, so go forth and design something better. As it is, most of linux development has been rightly directed toward creating a clone of unix, not windows. I like unix the way it is, and will happily go on running my dozens of xterms. If someone feels it's lacking, they're supposed to do something about it, talking isn't going to get it done.
Unix nerds of the 70's early 80's could have cared less about UI and usability. That is partially the reason why Microsoft has gained on Big Iron so quickly in The Enterprise. No its not just because of Marketing, it because of UI, GUI and Usability in NT, SQL server and their development tools and utilities along with the vast numbers of third party companies that make software for windows.
Apple is a nice OS and the first to really bring computing, good UI and usability to the masses, but what you all fail to admit or realize (including Apple) is that Microsoft has been bringing that slowly and strongly to the cryptic world of the Enterprise. That was their goal 20 years ago, and years later so many hate them do to their success and yes monopoly like control in this endeavor.
Perhaps now, you will all shut up about the Winblows this and vaporware that and actually take notice.
He has some good points. He also has this:
It's easy to ridicule the estimated 2006-or-2007 ship date for Longhorn, the next major release of Windows. But do you doubt for a moment that Longhorn will provide more improvements from Windows XP than desktop Linux will gain during the same period?
Of course I do. Linux moves more quickly than Windows and one of its busiest areas right now is end user stuff - there's no itches to be scratched. Historically every desktop Linux available when a new Windows comes out is an order of magnitude better than the versions available at the same time. Why should Longhorn be any different to XP, 2000, Me, 98SE, etc...
I use FreeBSD/KDE as my primary desktop and laptop... now I use Mac for my laptop. I still use FreeBSD/KDE on my desktop/servers, but this works out well 'cause Mac and FreeBSD are kissing cousins for server side application development. Haven't had a source code incompatibility yet. Lenox and Windows users can suck my sweaty balls: both of those camps are out to lunch but are either too enthralled with their cultish zealotry or are plain old ignorant/clueless.
I'm currently using a Dell 5150. The 4150 that precded it worked great (all the powermanagement features, hardware, everything...100%). The 5150 has a buggy DSDT that causes acpi sleep events and cpu throttling not to work.
I've been eyeing the PowerMacs for a while now mainly due to the hardware support.....I just have one question. When the battery dies, do you have to throw it away and buy a new one?
So basically you're suggesting "Creationism", while what OSS is presently doing is "Evolution".
Writing good UI is often not just difficult (to get the human interface aspects right), but if you're used to having to crack hard 'business logic' end problems, writing user interfaces is extremely tedious.
This is probably part of the reason why UI is often bad in free software - few people want to do it because it's an incredibly boring job.
Oolite: Elite-like game. For Mac, Linux and Windows
Sort of Like Einstein lost at the train station. You can be so intellegent about networking, ports, protocols etc.
But they have the hardest time understanding simple concepts. That unfortunately reveals itself in the UI of many applications built on Unix/Linux. Of course a green screen doesnt help much.
At least Linux is a movement to shift the Unix world in the right direction, and to its credit Linux is getting better all the time.
When Bill Gates was designing MS Windows just how much do you believe went into ensuring the mouse worked the absolute best that they could devise? My money would be heaps and heaps and heaps. And the result is MS Windows mouse movement. The point - the default mouse works differently in Linux, at least in the two installations that I have tried. Instead of accepting, and using, Bill's research and getting mouse movement as close to Windows as can be done, we have default mouse movement that is different. Mouse movement is the most basic of basics with a UI. Bill's engineers, I have no doubt tried the equivalent of current Linux mouse settings during their designing but opted for what is in MS Windows. So what did the Linux designers believe: either it didn't matter, or their research was better than Bills, or they wanted to make it different and making it different was worth taking second best. And this is on the most basic of basics, mouse movement. Me thinks there is some way to go. Thank you for your time
The memories of a man in his old age are the deeds of a man in his prime - Floyd, Pink
In fact, UI is not hard anymore ... we have simple UIs and simple object -event models like KDE's components
I think you're missing the point entirely. Dragging and dropping a button onto a form is dead easy, and has been for years - it's been around a decade since VB, Delphi and powerbuilder came out.
But that's like saying "painting is easy, paintbrushes have never been so cheap".
Knowing where to put it is the hard part, and is what seperates a good-looking, consistent, learnable, intuituve UI from the usual junk.
My Karma: ran over your Dogma
StrawberryFrog
I don't see the big deal about the OS X interface, particularly for geeks. It's not possible to do enough using hotkeys. The only OSs that are keyboard friendly enough to be friendly to this user are the unix prompt (power and ease of use are obvious) and Windows (which is also excellent like this: win+r, alt+tab switching, etc). I'd switch to mac but navigating around is a chore because you need to use the mouse for so much.
Believe with me, my saplings.
I'm a programmer and I hate GUIs for writing stuff.
Moving in a document is hell with a mouse. Sure it works but doesn't compare with vi and emacs. Text search requires most of the times an extra window (dialog) which may/will screw up the focus, requiring one or more ALT-TABs. Should I go on with substitutes?
Mozilla has done some decent work in the keyboard driven GUI control but it's still not mainstream.
If I'd have the choice of a decent ASCII based language that is incorporated in an office suite I'd switch straight away.
And no, runoff and TeX are no alternatives because non technical users neither use them nor their derived formats. Maybe I'm looking for the Holy Grail.
Reluctantly using MS Office and a bit less reluctantly Openoffice.
I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
OS X starts with the idea that choice is confusing to the user, who doesn't want to have to learn anything new, ever, even if it makes him more productive. Choice is bad, and the user must be protected from it. This is the reason for the (usually) benign dictatorship that OS X imposes on the user. Given this philosophy, OS X does what it is supposed to do very, very well. If you put ease of use and lack of confusion first, OS X beats KDE hands down.
Almost all Linux desktops like KDE still carry the completely opposite philosophy around in their guts somewhere: If you really, really want to, you can drill down to the last bit and change things. Choice is good, the user is not stupid, and is willing to learn if it makes him more productive. Given this philosophy, KDE does what it is supposed to do very, very well. If you put productivity first, KDE beats OS X hands down.
All we need to do now is for each side to realize that they are not in direct competition. The KDE people do seem to admit that they'll never be as flashy (not until X11 grows real transparency, at least). The problem I have found is that the OS X people seem to believe that their OS can be all things to all people. Not so.
I've been using my new iBook G4 exclusively with OS X 10.3 now for over a month while waiting for YDL to get the next Linux version out. As nice as OS X is to look at for the first few days, once you get down to serious work, it is simply a pain. You can't get rid of the cute gimmicks (when minimizing the window, you can either have the "genie" or the "scale" effect, but you can't get the damn thing just to vanish). Closing a window doesn't close an application like it does in the rest of the computer world, you have to Command-q it or else it will hang around in the background. Expose is cute, but basically it is just a complicated way to make up for the lack of virtual desktops.
Yes, it is a cliche by now, and Apple users will probably go arrghhh because the have heard this so many times, but the single mouse button is one of the biggest drawbacks of a Mac (and no, I can't attach a USB mouse every time when I'm on the road with my iBook). KDE has a beautiful two-punch right-button, left-button combination that works consistantly over (almost) all applications. Reply to mail? Right-left. Log out? Right-left. With OS X, you're constantly pressing strange key combinations or (horror!) have to move up to the menu bar. Working with one button feels like having one hand tied behind your back.
Don't get me wrong, I'm very happy with the iBook and would buy one again if this one got eaten by rabbits or something. If you are thinking about buying a laptop, do yourself a favour and at least look at Apple's portables. But OS X? High cuteness factor, quick to learn, but not for those who want to be productive first and cool second. Just like it was designed to be.
I run Debian on my iBook, and all hardware I USE work nice (have never tried the internal modem or firewire). Everything else works just fine.
I'm not sure why I dont use OSX I still have it installed, but don't use it much. Debian just feels more convenient and I'm not dependent on any commercial software that requires OSX.
It might be the G3/384MB's fault but OSX just feels sluggish and well, I don't feel that it adds anything for me. I'm aware of fink but the last time I tried it the number of packages was quite low compared to debian.
Of course IF I had to use MsOffice or any adobe software I would use OSX, but for my use (webbrowsing, email, usenet, coding, reading, textprocessing (latex,openoffice), music, video, im) Debian just fits better (probably because I'm used to it).
I tried getting my network printer up and running with a friend's MacOS X box and it was nowhere near as easy as some Slashdotters make it seem. I had to know the location of the printer on my LAN (MacOS X did not search my LAN for acceptable printers, nor did it discover that this Brother HL1270N is the only printer on the LAN...
Well, the problem is that scanning the LAN is not a great solution either. Apple decided to fix the problem properly instead and came up with Rendezvous (Zeroconf). Not only does it solve the problem of locating the printer, it solves the problem of setting up the printer. The Brother HL-5070 is such a printer and you just plug it into your network and you're done.
The real solution to the UI design issue is to not need a UI to design. That's Apple's real goal and is the real problem with the printing UI debate - there shouldn't be a UI for connecting to a network printer. When you hit print it should simply offer the printer as a choice. No configuration.
Raymond is an arsehole. But Gruber is a bigger arsehole. And they both need to to do something about their egos.
Ugh, if all that were only true in OS X.
Sometimes clicking on the X button closes the current window and leaves an application running. Sometimes it quits the application. Sometimes the + does a best fit, sometimes it does something completely random, sometimes it maximizes, and in iTunes it changes to a completely different view (isn't that kind of alteration what the white jellybean is for?).
Programs with minimal carbonization still have font and style menus that work the OS 7-9 way, other programs use the OS X pickers. The patchwork of interface styles in GraphicConverter is especially jarring, it's got modern toolbar thingies while the basic batch convert window still looks and acts like it came from System 6, while using modern navigation services elsewhere. There is a jumble of old-style modal dialogs and new flip-down alerts all over the place. Some programs use scroll wheels, others don't. Ditto for anti-aliasing.
Classic programs don't even try to fit in.
Yes. You need to throw the battery away and buy a new one. :P
Just because you do it, or your friend does it, does not mean that everyone do it.
is the fact that many people have different ideas of "easy"
easy as in developer easy? easy as in advanced windows user easy, gamer easy? joe average easy? etc...
the first one is the reason I think it'll be some time before linux gets any share in the desktop field. because developer easy is sadly where most developers know how to go, they have trouble picturing anyone who isnt as smart as them, etc.
Ya gotta some times think that if you're making a product for the desktop, you gotta think as if you have the stupidest person in the world using your product, that way, it'll end up being more user friendly in the end.
"Last mile to the user is propietary" is the state of affairs the author invisages. Which is pretty much the case: Xandros, Lindows. They both are Free software underneath with an attractive veneer of easy to use propietary software on top.
The same could even be said of MacOS X (in places): KHTML underneath.
Basically: he makes a good point. Selling goods and services based on a Free use of commonly owned software basically means either doing to tricky things for users (consultancy) or writing apps so that users can do the tricky things themselves (distributions do this).
Distributions either make their nice configuration tool FOSS or propietary. Redhat do the former, Xandros and Lindows (AFAIAA) do the latter. Whose configuration tools are easier?
Posters recognized by their sig,
I have used Mac OS/X, Windows XP, OS/2, etc and I find KDE to be far more usable then any of them and I think it is more usable then they ever can be for some very simple reasons.
In KDE I configure spellcheck ONCE. The settings are system wide, the dictionary is shared and it works the same in EVERY KDE app. I don't have to deal with different applications having different ideas and having to set that up for each one.
In KDE I configure the proxy settings for my network ONCE. Every KDE app uses those settings from viewing webpages to using webdav to grab data remotely. I just set it once and don't worry about it again.
In KDE I configure my editor ONCE. I set what I want my default editor to be customize it to how I want to view text, work with it etc. I currently use the kate embedded component as my default editor and it works the same way showing embedded data in konqueror, in the kate application, in kwrite, in kdevelop 3 etc. I could change it to kvim in one place if I wanted and use it everywhere. I can set my editing component to ANY registered text editing component. I have seen NO equivalent functionality in any other environment.
KDE has io slaves. EVERY file save/load, the url bar in konqueror etc are url transparent. I just work with files and don't have to worry about what app I am using. I can just open a file in my editor, word processor, spreadsheet etc and not need a special sftp, ftp, webdav,imap etc client to grab the data. I just worry about what data I need to work with and where I need to save it to and not about what app I am using.
KDE saves me a large ammount of time getting work done and while some areas are still buggy and need work it is far more usable now then I see OS/X, XP, etc as EVER being. I don't think proprietary software can agree to the point that I can choose what my system wide editor is, what my spellcheck system is etc.
Mac OS/X looks prettier but I also find that for what I do it makes the job far slower and harder then it needs to be. It has lots of pretty graphics but things like io slaves just save too much time. I am sure it is great how easy spellcheck is to setup in various apps but I setup these things ONCE for the system and now I just get about doing my work. I have 3 monitors setup and I have 6 virtual desktops and on startup I tend to have about 50 gui apps running along with zope that I use to do my work.
You can have mac osx and all of these other environments. KDE is becoming more usable all the time and it is becoming more integrated and easier for more settings to be system wide.
Note: I know that GNOME has some of these same features and will likely have all of them in the future and that GNOME and KDE are working together on freedesktop standards etc. I just commented on the KDE side because that is what I use the most. I want both to continue to exist and grow stronger through competition and cooperation.
In the end I don't think multiple proprietary vendors can ever really work together and so I don't see it as possible to have an environment as integrated as KDE is already and will become more so in the future.
Computer modeling for biotech drug manufacturing is HARD!
It's true. Both at Caltech and now at the conference I'm attending I'm seeing massive numbers of powerbooks (including my own :-). These are hard-core unix geek bastions, and OS X is really gaining popularity.
You're smoking crack if you think that GNUStep is some kind of portability layer for Cocoa. Last time I checked, the GNUStep folks hadn't even bothered reverse engineering the NIB format, instead choosing to use their own.
GNUStep is something that bares a vague resemblence to NeXTStep - it is in no way, shape, or form something useful for porting Cocoa apps let alone running the binaries direct Wine style.
The parent authors comments about GUI relation to technical stuff reminded me of something I posted several months back on Slashdot. I think it really needs yet another reposting.
--
About 9 months ago, Eric Raymond came to speak at my LUG. No matter what else I think of him, he's really intersting and a really good speaker. I wouldn't for a moment knock his entertainment value, no matter what else I might have to say about the guy.
However, there was this one point during this discussing at the dinner before his speech where me and several of the LUG members were talking with him about linux GUI's and the future of the Linux Desktop. Eric Raymond said something about the whole unix system of creating back ends first and then grafting GUI's on to those later.
My response: "But Eric, most usability experts recommend you design the interface first and then write the code".
His response: "then they're wrong."
My response: "But what if there's something that the backend folks didn't think of when they wrote there code that the GUI really needs? Or what if there's something in the back-end that just doesn't work once you add a GUI?"
His response: "then it needs to be fixed."
My response: "But what if so much code has already been written that no programmer wants to go back and make all the changes necessary to make it really work?"
His response: "then we've got a problem."
It was at this moment I realized two things:
1. The Open Source leadership is just stuck in command-line land as your typical rabid, BOFH linux zealot, and is just as clueless about designing desktop software and user interfaces. The leaders of Open Source are as desktopically bankrupt as their followers, and it is unbelievably disturbing that people like this are placed in charge of leading efforts to make alternatives to windows for non-technical users.
2. For Free Software/Open Source to succeed in being a viable alternative for non-programmers, it must be once and for all divorced from the Unix Culture. The concept of freely distributable and modifiable code must be seperated from the concept of The Unix Way.
Ergonomica Auctorita Illico!
But since ESR's article went out, I had this stuck on my throat:
1. if you want to do things cleanly, but knowing what you're doing, you fiddle with configuration files;
2. if you want things to just work, you step on the proverbial giants' shoulders.
What do I mean? in casu, I installed a lot of CUPS local and remote printers using KDE 3.1/3.2 printer control panel. That's it. No hassle. As simple as under windows. End of story.
It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
whydo i feel like tossing a set of mandrake cds or a suse box at both raymond and everyone else haveing problems setting up a box? mandrake for works fine, and people keep telling me that the YAST tool that suse have one of the best linux config tools out there.
:(
then there is the fact that the most sold brands of printers around is doing it the microsoft way, sealed solution on top of or paralell to defined standards.
allso, linux dont have the simple system of rightclick and select share that windows have when it comes to printers. some say it a good thing, other say its a bad thing.
the last time i tryed to set up a printer in linux was for a friend of mine trying to get a lexmark hooked to the usb to print (the distro wasone of the latest red hat ones). no dice as lexmark use theyre own language to talk to the printer
the funny thing is that printers are harder to set up in linux then webservers for some reason, its not just hook it up and install the driver. no you have 3-4 printer systems to juggle, all supporting some printers but not all printers it seems (alltho cups comes close). and if you have the latest and greatest (or so the marketing department of said printer maker says) your out of luck for they only ship windows and maybe mac drivers.
then there is the fact that to share a printer across the network in linux you more or less have to use a microsoft protocol via samba, thats a whole beast on its own.
basicly printers in linux be it local or across a network si a mess, not only on the gui level but on the hardware, network and driver level to!
comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
I think that you would really like Jef Raskin's book The Humane Interface (Jef Raskin was the guy who came up with the idea for the Macintosh). His chapter on habituation, the "you can always find it here so it's second nature" phenomenon mentioned in your post, is something you'd find interesting.
Jef has also launched a Humane Interface project on SourceForge, if you're interested in contributing to that.
Ergonomica Auctorita Illico!
Is a user interface group, where contributers combine and work on one important project(program or a task for user on desktop(adding hardware etc. windows control panel like)
at a time.
This group could really fix the ui weak links in the desktop one-by-one.
No offence, but you're missing the point exactly the same way Raymond did, for exactly the same reasons this article describes.
You can put as many buttons and help screens on as you like, and obviously they should do something if they're there. But the point is that making a program with good usability requires more than this. You have to have the right buttons and have helpful help text.
That is hard, and for now it seems it really is too much to expect, at least from open source projects. I use several of them every day, and have great respect for the development teams, but that doesn't change the fact that the help text in them usually doesn't (or, in some cases, isn't) and the old-fashioned, commercial, closed-source alternatives are years ahead in usability terms.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
The dual 2Ghz G5 I run is an absolute dog for some apps like Mozilla, which boots MUCH quicker on XP and Linux. Window resizing is also laggy in most apps and the Doc takes a few seconds to respond to mouseovers. Couple this with the Mac's lack of keyboard Alt+ menu access as in XP and Linux and I gotta ask where did OS X get this repuation from?
My dual 2Ghz G5 now does e-mai and web browsing and that's only because my Formac LCD has better gamma on Mac. The rest of my work I do on Linux and XP.
So what?
It is not like Mac OS X is not Unix, and even in GNU/Linux C++ failed to catch. Witness that the few successfull free software C++ projects are heavily corporate-sponsored, like OpenOffice.org and Mozilla; KDE is not quite an exception, building on Qt. Sure we're nearer 2,005 than 1,995, but also we are more likely to jump directly from C to Java or C# than to get bogged down in C++.
Mac OS X is not significantly better, not having kept pushing OpenStep as an open platform Apple has failed to popularise its arguably better Objective C. It also uses heavily a C++ derivative, Java.
The one alternative vision here again is RMS's, trying to use GNU/Hurd as a stepping stone to give us back our Lisp future.
As for Unix, Mac OS X is Unix too. So arguably today's worse and best platforms in usability are Unix, except that MS Windows can be argued even worse if developers and sysadmins are counted as users too.
I fail to see your point.
Leandro Guimarães Faria Corcete DUTRA
DA, DBA, SysAdmin, Data Modeller
GNU Project, Debian GNU/Lin
the main problem is that PC laptops are overall shoddy devices. they are made crappy, with the crappiest parts the manufacturer can throw in there. you cant upgrade anything to high end in a laptop, you are stuck with what the manufacturer speced for you.
MAC laptops are very different. and their price reflects that.
I blame the problems with linux on laptops with the low quality crud that is the PC laptop.
that said, I did install Mandrake 10 on a brand new Dell commercial quality laptop with docking station and even the Radeon Mobility II worked. the modem,ethernet, net in the dock, scsi in the dock... it all worked upon first boot.
the consumer level laptops are crud compared to the commercial laptops for mediume to large business... but overall all of them still stink compared to a mac laptop.
Do not look at laser with remaining good eye.
This is so true, in anything where you have volunteer help.
I am currently the president of a large club, with an organising committee of around 30, including about a dozen people with specific responsibilities. All of these people (me included) are volunteers, and we all work and/or study full-time.
Trying to co-ordinate this -- in particular, trying to balance the views of the "leadership" (who often spend a lot of time considering a question and shortlisting viable options before even consulting the full group) with the views of the main group (who collectively have far more experience, but often have laudable but unrealistic goals) -- is very challenging. What can I do if someone doesn't do their job properly?
All I can do is have a quiet word and ask them to change how they do something. If that doesn't work, my only real options are to put up with it, or to seek to have them removed. The latter is hardly a nice thing to do amongst a group of friends, and relies on finding another willing volunteer to take on the job. I don't have the options a business has of formal disciplinary procedures, nor the motivation of offering increased rewards for a good performance, and I couldn't rely on getting a good replacement if I had to get rid of someone, because unlike a business I can't just advertise a good remuneration package and wait for the phone calls.
And this is just with a group of 30 or so people, all in the same place, and often knowing each other well outside the organisation. Compare that to what the project leads on a large OSS project have to do, and it's easy to see why setting a clear direction (and, equally imporant, making sure people go that way afterwards) is so hard.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
For too long Free Software has been depriving end-users of the Freedom To Get Stuff Done With A Minimum Of Fuss. If the Free Software people continue to engage in such behavior and do not recognize usability as an essential software freedom, they will find themselves sooner or later in a very nasty civil war with others who do. And at that point, SCO and Microsoft will be the least of their problems.
Ergonomica Auctorita Illico!
Making an interface ( console or GUI ) *is* hard.
However, if you want more people to use your application ( or even some depending on how bad your interface is ) you have got to do it.
Maybe this article will keep some ignoramnus from dismissing this kind of work as "merely eye candy".
Steve
So a GUI with a "Save" menu item that deletes everything on a user's hard drive--it's no worse than a different GUI with a "Save" menu item that saves the user's work? It's all just a matter of taste, one not being any better than the other, right?
Ergonomica Auctorita Illico!
then I find such GUI nightmares as X-CD-Roaster.
The usability of any linux program beginning with the prefix "X" always sucks.
Ergonomica Auctorita Illico!
anyone who puts text like that on a colored background don't know jack
But you're attempting to reduce a decision entirely to monetary considerations. If money was my only consideration, they you would be quite correct that I'm a moron.
No! _You_ define "demoninator".
I am not going to do all the work for you and provide the name of the company who makes it. "HomeSite 5.5 provides a lean, code-only editor for web development. Advanced coding features enable you to instantly create and modify HTML, CFML, JSP, and XHTML tags, while enhanced productivity tools allow you to validate, reuse, navigate, and format code more easily. Configure Macromedia HomeSite to fit your needs by extending its functionality and customizing the interface."
I feel dirty and need to take a shower now.
What i think would be a good start(TM) would be a program that interprets config files and turns them into GUI menus when possible
It's difficult to do that automatically, but Webmin is the next best thing, plus it's Free and web-based:
http://www.webmin.com/
Re: One point that particularly struck me: according to Gruber, 'Unix nerds who care about usability are switching to Mac OS X in droves'
BS. I personally know three former apple users who have moved straight from Apple to x86 Linux. Two to XandrOS and one to Debian. KDE with karamba is plenty 'pretty'. Plus, their new mini-ITX cases are silent, small and of a more pleasing 'modern design'.
My personal experience leads me to believe this is not the case...
You seem quite confused, noone here was talking about "running the binaries direct Wine style", that wasn't the question.
As for using GNUStep to port Cocoa apps to other OSes, yes it is perfectly possible. There is still a bit of porting involved, modern Cocoa and GNUStep are not quite identical, but it's prefectly possible to write an app that complies for both, like GNUMail.app for instance. And it is certainly far less work than any other method I know to port cocoa apps to other OSes.
ESR was writing that as a regular person trying to figure it out as an example of things that could and should be made easier... then he says with "This setup alone is sort of funny -- Linux Advocate Struggles to Configure Printer" It's not that he couldnt figure out the printer, it's that your GRANDMA couldnt figure it out.
The perception when bidding is that, while professionals who will get 'the job' done are needed, they're unresponsive, then turn up with a near-frozen solution on a just few sheets of paper - where did the money go..?
'The job' however usually starts as client preconception; rarely is it their best option. Therefore it is fundamental to the role of designer to develop the brief with the Client. Note this applies especially to the smaller jobs, which might seem a contradiction. It's not, because corporate clients and the like are well versed in management of their (incidental) Property portfolios. The resulting FM input greatly accelerates the briefing and design development. It is a rare pleasure to deliver what [the client] did not know they could have, on time, in budget. It's all sooo much easier when everyone understands the process is key, not the pretty picture.
[obDisclaim: I have no knowledge of software development, and am utterly reliant on commercial software....]
What amazes me is that it's taken THIS LONG for everyone to realize such a painfully obvious thing that free software tends to be a pain to use.
I'm curious: How does it compare to Window Maker+fspanel on the same hardware?
You must be trolling.
... Programming' books?
/. and don't masturbate? Ever? *g*
ripped-off
Why exactly? Because they get no Windows? Isn't that obvious before buying?
Linux is BROKEN, It's usability failures makes it unusable
I agree that linux is not (and might never be; hope so) ready for primetime. But 'broken' and 'unusable' sounds harsh. As others pointed out, the latter depends on your definition of usable. Concerning the first, I'd go no further then: breaks easily. Though same is true for any computer/OS I've ever seen.
failed to produce a system that Aunt Tillie can use
I guess anybody can use a running Gnome/KDE desktop. though setting it up might require more expertise.
but windows is more FUNCTIONAL
see: usable
we as developers DO? We are the tool makers
certainly; but is that all? Think about obfusfacted code, perl one-liners and such?
Have you read any 'Art of
as an end unto itself is a bit masturbatory
You read
I find many people do, not talking about the literal sense now.
I guess the hardest thing to do for (us) developers is trying to think like user. Thus I avoid having to write GUI stuff whenever possible.
These guys make me chuckle at times. Ultimately, they hvae good stuff. JES and JDS are both great ideas. Java, in itself is brilliant. Their hardware is also pretty useful. Solaris even moreso. But, yeah, they're finally getting the whole "make it easy, make it common, don't keep pushing frickin' CDE" concept!
:)
Of course, MY favorite distro is Mac OS 10.3
There exists no way of exchanging information without making judgments. --Bene Gesserit Axiom
... but conversely, making things hard seems relatively easy!
I'd have to disagree with you. I think you are confusing usability with robustness. Surely vi is robust based on its feature sets and ability to be adapted.
Usability:
Notepad/Wordpad/Edit > MS Word > vi (based on sheer ease of use)
Learnability:
Notepad/Wordpad/Edit > MS Word/vi (I don't get vi, but lots of people don;t get Word either *shrug*)
Robustness:
vi/Word > Wordpad > Notepad > Edit
Word and vi can both accept new types of data and can be "updated" without being "upgraded" via plug-ins and macros and the like. Wordpad allows for RTF where the last two do not. Notepad is a more user-friendly GUI. Edit is just Edit.
I was indifferent to Mac OS for my entire computing experience; until my girlfriend wanted to run iPhoto. She needed to upgrade to OS X to get it, so I bought it for her, and put it on her iBook.
And 6 months later, after watching her work with OS X and helping her learn it, I bought a Powerbook.
And I'll never go back.
I just find it interesting that people making salaries of (just guessing) $50k still argue whether or not it is money well spent to buy an Operating System at 0.1k. That's 0.2%.
(I know the hardware is more expensive than that, but a good fast machine is expensive no matter what the operating system is).
This is not to say that all Microsoft's products are great or even acceptable, but you can be reasonably sure that Microsoft is going to try to get the most bang for the buck out of whatever resources/time they do devote towards development.
Users often ask for the most ridiculous things that they think will suppsoeduly make their life/jobs easier (since I build software for professional tasks, this might not be apropos to the OS), it is my job to not just dismiss these request but to think about them and try to figure out the underlying problem that I need to solve. Not to make the user totally happy, but to make them productive (bonus if both are possible, and they sometimes are).
Basically I consider there to be three types of users:
- Beginner's - just beginning to use the softeare and need training.
- Novices - can get around, do there job competently but is still not at the the optimal state
- Expert - They can use the system flawlessly and are very productive
In my world I design systems towards the experts needs. They use the software every day and need to perform their tasks quickly and without mistakes. If I design for the beginner in mind, it will slow down the Novice and Expert groups, and eventually with the proper training all users should progreess from one stage to the next, ending up at the expert stage. For a company, they want all their employee's running at our near the expert level because this is where they gain their efficiencies.It is a little more of a problem to apply this concept to an operating system, this is why I have the utmost respect for the people who design them. But I think they should try to keep the same principles in mind, design towards the expert with helping hands towards the beginners, i.e. Wizards (but not limited too). When you first set up let say a network connection, you use the wizard (beginner/first time setup), when you need to change something, you most likely will just go to the connection and make the change directly (novice/expert). That is the difficult part in the design, allowing all types of users to use the system, while also educating them. I'm don't know about everyone else, but when was the last time you moved the mouse up to file menu and down to the pring button instead of hitting Control-P? At first most people probably went to the file menu to print, but then they see the hot keys next to it and learn that this is a quicker way to perform the same task.
Overall, I am just happy to see serious discussions on this topic. A lot of people in my work take UI design forgranted as well, and I will point them to these articles.
If you like surprises...
go to an Apple retailer and sit down in front of a Panther machine. Try all your shortcuts, and see how customisable the keyboard/system really are.
System Preferences: Universal Access: Keyboard
System Preferences: Keyboard and Mouse: Keyboard Shortcuts
Granted, you'll have to at least use the mouse a bit to open these GUI's, but after that you're in keyboard heaven.
You'll find that with Panther, Apple has - finally - surpassed at least Windows on this, with the added advantage that you can customise it to your taste so you don't have to learn the Apple Ways.
I think, therefore I am...I think.
A great GUI exercise is making the GUI first.
This here is a perfect set-up for OSS software designers, it costs next to nothing, is easy, only takes time and can be heaps of fun if done right.
Make your own fun, test with friends and family, don't go looking for Aunt Tilly if you don't like her.
And you'd be surprised how much this method is used for making really really expensive software.
The programming language: scissors, glue, paper, crayons. Have fun.
Every screen should have its own "window" (page) and you don't start drawing cute buttons, you just describe the functions.
When you've done that, you start drawing widgets, trying not to invent anything new, just the ones that are readily available and try to use them just as God/random particles intended them to be used.
When you get that logic, when you can't imagine a feature or occurrence fall outside your paper trail, you're about ready to start coding.
See, it's not about the user being stupid or "choice is bad" philosophy - that is NOT the OS X mantra. It's simply about things not being thought through. Most programmers don't even have a clue what happens when people other than themselves use their products. This paper trail forces you to walk the path.
If there was one point in the article well made, it was the hopeless obsession with Aunt Tilly or Joe Six-pack you all seem to have.
I'm neither and find Linux usability for the most part lacking in the most important areas, those areas you don't want to be bothered with whether you're a programmer, a nuclear physicist or even if you are the one and only mythical Joe Six-pack.
I think, therefore I am...I think.
begin{quote}
It's not something every programmer can learn. Most programmers don't have any aptitude for UI design whatsoever. It's an art, and like any art, it requires innate ability. You can learn to be a better writer. You can learn to be a better illustrator. But most people can't write and can't draw, and no amount of practice or education is going to make them good at it. Improved, yes; good, no.
end{quote}
So this guy somehow believes there is genetic ability to program good GUIs? I do a *lot* of art and I believe that there is some innate ability associated with art like sculpture and painting, but it mostly has to do with fine motor control. Most good art (and good programming of any form) is the result of practice and of caring about the quality of what you are doing.
The real reason GUI's are very difficult to do well is that they are difficult to debug because they are event-driven instead of linear. It is difficult to find bugs of the form "it breaks when I do A the X then Z" because the designer often cannot imagine why someone would do things in that order.
dtg
The truth is an offense, but not a sin.------R. N. Marley
There is one feature that Dell laptops have Mac laptops beat in. "Screen Resolution" I have a 8500 with a 15.4 inch screen at an amazing "1920x1200" Not even the 17 inch TiBook comes close at 1440x900. The 15 inch is a measly 1280x854. I will gladdly put up with some Linux hassles ( I haven't used a modem in nearly a decade. ) to get the best screen possible. My ideal laptop would be one without a CD-ROM, with a really thin harddrive, medium CPU power and good battery life... and really really thin.... BUT A HUGE HIGH RES SCREEN. I don't understand why no company makes one. Now I'm ranting...
I'm an open source Rock Star, where do I sigh up?
You've just proven my point.
I've wanted to contribute myself, but I don't know if I'm a good enough coder to be enough help, and I wouldn't know where to start.
Not everyone is a coder and not everyone has the time to learn how and "fork" even a small project. In fact, I'd submit that within a year there will be almost no projects that are small enough for one person to substantially affect. In principle it's just a big waste of repeated effort for many individuals to be working on the same project in slightly different ways. The evolutionary cycle slows in proportion to the size of the project.
Perhaps there needs to be a democratic system where project managers are elected by registered programmers so that there is a way towards consensus. There simply has to be a figurehead or decision panel that can accept or deny feature requests or UI changes. Maybe this already exists in some projects, but I'll go so far as to extend the qualification to include "marketing types."
In case you haven't guessed already, the "device" is a human being. This is why user interface design is hard.
We always look at the command prompt as historical, I mean when was the last time anyone even looked seriously at any machine which booted up to C:\>
But we are still using GUI's which are based on metaphores and everything which was dug out 20 years ago, eveything on linux is designed to emulate what other GUI's do apart from one or two rare exceptions, and the applications do as well, how many Microsoft Paint clones are there, even though it's probably the least healpful and intitutive program Ive ever tried to use, there's 1000s of versions of it, we love to copy but we hate to inovate, can't go wrong if youre doing what somone else has done before you.
And I don't really care how easy something is to use, but it is nice if it's efficient, 1/2 the problem solved, if you can preform all the functions youre ever likely to do in the minimum ammount of effort expended youre on the right track, VI aint user friendly, but it's efficient and geeks love it for that.
Yes but at least that window is visible. Instead a Windows window will take over all focus from an app, then lurk in the background.
I don't even use iChat so I'd never run into that...
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Quick sanity check (really not to troll): ENOUGH of the (insert OS name here) is best stuff! Most of us are professional nerds in one capacity or another. We all know that the only "great OS" is the one that we ourselves write/design. Then it is only great for us. And no one else. Hence the problem.
The point is that the closed-source folks have the money/time/inclination to fund artists, studies and usability experts. Open source, by its nature, can't match those resources.
The solution: none, really. Open source makes bulletproof, elegant and sometimes even beautiful systems. But until major open source projects make it a point to do careful UI design, we will be spinning our wheels.
Required reading for everyone: Macintosh User Interface Guidelines. Even if you don't like the Mac. Even if you design embedded code in assembly. And especially if you are looking to put some thought into a UI.
Just my 0.02 - take with grain of NaCl.
#include "humorous_pop_culture_reference.h"
I agree with you that's been the case to this point. I'm simply advocating some kind of chain of command/structure so that it's possible to develop the incentives to continue doing all the things necessary. Without the structure you're right, it's a disparate mess of things that aren't likely to get done except by the very few who are very very motivated. I think there needs to be a new open source "currency" as the projects get large and the traditional incentives become more muted. Slashdot for example has a currency in the form of its moderation points. Perhaps an automated system can be made for open source projects too.
There is a difference between "command line" and "non-mouse-driven and/or console mode GUI". w3m is still a GUI (and you can use a mouse if you want, but it's designed so that you don't have to). Telnetting to port 80 is command line. I don't think that anyone could argue that MythTV is not a GUI, but it has no mouse support whatsoever. "make menuconfig" is a GUI too.
I use Mutt for email. It's arguably much more efficient than a mouse-driven interface such as Outlook or Mozilla Mail, though only after you've learned your way around it. But it's still a GUI, even though it runs on the console and doesn't use the mouse. I think that Vim is a GUI too, especially when you start using features like split screens.
WMBC freeform/independent online radio.
This must have been said, but let me make it clear:
A windows app is (usually) no reason to stay away from Linux.
Wine runs most windows apps for me out of the box, especially if I already have them installed on a Windows setup.
Personally, the killer app that was keeping me away was half-life. Well, maybe I'll change my mind when half-life 2 and/or some killer steam mod (still can't get steam working) are released, but once I got some decent video drivers (nvidia), half-life and all mods (except steam) worked out of the box. Perfectly, except the mic doesn't work.
So yes, there are glitches, but... everyone tells me it's just me, but the crashes I get from Wine aren't nearly as bad or as frequent as the ones I'd get from win2k. From a fresh win2k installation.
That said, for the most part, I've found Linux equivalents for everything I wanted anyway (except half-life). There's a Linux port of ut2004, quake3, nwn, and better alternatives to just about every "office"-style app I wanted. I couldn't find a replacement for Powerpoint that I liked, but I never really liked Powerpoint anyway -- it's too easy to make a pretty picture to point at while having no content at all.
And now that I use Linux, I can usually have some good, real content anyway.
Don't thank God, thank a doctor!
People said that about Linux. And you know what? They were wrong.
Apache is the most popular web server in the world for a reason. And it doesn't have a huge PR machine and billions of dollars to put it in that position. In fact, last I checked, it's beating the people (Microsoft) with the huge PR machine.
Have you ever tried cooking soup with too many people? I would suggest that it can work, if you organize them properly.
Say what you want -- it's the results that matter.
Don't thank God, thank a doctor!
My girlfriend has her masters in human-computer interaction and has also been surprised by OSX's shortcomings.
Check out www.asktog.com for one expert's opinions on OSX.
Some things off the top of my head that bug me are:
All in all, I'd rather have linux and know I'm supporting a community that thrives on continual improvement and that bugs are acted on and usability is increasing. Apple seems t
Yeah, but if you have to set the font size up to one bajillion points what good is your high-res screen? ;-)
My English teacher once told me that two positives don't make a negative. Two words for her: Yeah, right.
Underneath it all, getting a computer to do what you want is hard. Having a command line established a certain baseline - no more machine code or breadboards for most people. Having a GUI allows developers (or their IDEs) to absorb even more of this complexity from the 'user experience' - no more command lines for most people.
Proper UI design is the next step. The burden of complexity continues to shift from the user to the developer.
A computer without Windows is like a cake without mustard.
<esr>the most valuable gift you can give your users is the luxury of ignorance -- software that works so well, and is so discoverable to even novice users, that they don't have to read documentation or spend time and mental effort to learn about it.</esr>
If only life could be so carefree.
Personally, I think that debugging behavior and figuring things out should always be a process of climbing a linear learning curve.
Note, unfortunately, that some novice users will inevitably encounter difficulties that are related to deep problems. Some of that can't be helped. What can be helped is providing a smooth ramp of learning how to probe the problem and fixing what is wrong.
And what would be really nice, too, is if Google kept a problem:application,symptom directory around that users and code developers could consult, you know with rankings about the most common symptoms of a problem, what the resolutions were, etc.
"Provided by the management for your protection."
Personally, I crash XP much more than I crash Linux.
I'm sure it's just me.
As far as "revising a chapter on how to change your margins...": look
If you want to blather about all your theory, go right ahead -- you're missing out. The reality is here. The documentation is there, and the thankless work has been done. Not all of it, sure, but I have taken my parents (both over 50) and gotten them mostly booting Linux at home -- and they love it. It's much faster than their win2k was, and the most serious issue that I ever get bothered with has to do with finding their Windows files, and the Linux root directory (/). The user interface is not a problem at all -- in fact, sometimes they point out nice things about it.
No good examples? Have you bothered to look? Or does Linux threaten your job in such a way that you'd rather not believe it can work?
Don't thank God, thank a doctor!
All Linus owns is the name "Linux". And, from time to time, people have forked it, but in general, they follow his lead (even making sure their versions incorporate all of his newer features), because they respect him. If they didn't, we might all be using something called "finux" -- identical, except Linus wouldn't be involved.
As far as being a "good enough" coder to help, or "knowing where to start", I've generally followed the "personal itch" thing. I do occasionally find something that needs fixing, so I go fix it, and send in a patch. Usually, people don't like my patch as it is, and make some changes to it before it gets accepted, but every little bit counts.
Don't thank God, thank a doctor!
> There simply has to be a figurehead or decision panel that can accept or deny feature requests or UI changes.
While that could seriously improve the productivity of many (most?) OSS projects, it kinda' goes against the community idea that, to me, seems to be an important part of Linux. Unfortunately, I can't come up with anything better.
it's Geek's who like shiney blue things and want to be able to run pirated copies of Photo$hop without WINE.
Software Freedom Day!.
Let's imagine there was a Moderation system for OSS. You'd get a plain text tree of all the features of a program where people could insert their comments or suggestions. Then, other people could rate each comment and suggestion which would essentially bring up the most important changes. Over time, those that moderate most, or have the highest peer review marks move up the chain to have more weight behind their decisions. It would be a fluid method of keeping the best and brightest making the decisions, through a quasi democratic method. It would also be self regulating. If someone was getting too powerful or making bad decisions, the community would quickly reign them in through their collective power. This would be a structure that would work.
The only problem, which might not really exist, would be the willingness of the programmers to follow the mandate decided upon by the group. But, since the group is probably comprised of many programmers working on the project there would be at least some incentive to go along and support the decisions. It might even bring more notoriety in that programmers that accept challenges or menial tasks would be recognized in the suggestion forum by all members.
If you need to get help from Linux peolple, follow the advice given here, and you should have no problems getting your questions answered.
Those who sacrifice security to condemn liberty deserve to repeat history or something. - Benjamin Santayana
I agree that the waterfall model is terrible when it comes to making a new system from scratch (if for no other reason than the sheer cost), but sometimes there's little alternative. An iterative model is suitable for general-use systems, but for specialized/legacy systems (or new functions that interface with said systems) where the customer dictates everything that the system will contain,what it will do, and how much time you're allotted for doing it, "We'll get to that feature eventually" doesn't fly.
I work for an organization that primarily sustains legacy government systems, and we use the waterfall model extensively. Amusingly enough, the quality of the user interfaces is subpar at best, and the user documentation severely lacking in that it gives no direction for general use of the software. In other words, I agree that completely specifying a UI before development doesn't necessarily (or even typically) produce a good product.
On the other hand, I'm not convinced that the release-fast/relase-often iterative approach is all that great for developing usable UIs either. UI releases need a certain amount of stability and consistency for users to feel comfortable in adopting them. A certain amount of maturity in the design is needed for this.
(The opinions expressed here are - of course - solely my own opinion, and I don't really give a damn as to what the opinions of my employer are [/end stupid disclaimer clause])
I partly agree with you, though I will say that IDEs aren't *inherently* bad -- an IDE can be much better than a simple highlighting editor -- BUT designing an IDE is very tricky.
There are lots of open-source IDE's and editors out there, partly because so many developers get that itch. They take the idea of a simple syntax-highlighting editor, and think life would be perfect if only it would automatically do X, which gets tedious doing manually. A few more people get on the project, and add support for Y and Z, and before you know it you have another sucky IDE, which usually never even gets the original syntax-highlighting and basic editing functions right.
I use Eclipse for Java development, and I have no question that it massively increases my productivity. When I save, it automatically compiles for me in the background, and shows compile errors in the margin. Lots of refactorings are automated, Ant is integrated, I can jump to an object's source from its name, etc. etc. -- but it's only good because at heart it's a good, syntax-highlighting text editor, and they are very careful about what features they add.
I haven't run across anything yet that requires any difficult or repeated configuration to work "right". Everything has a sensible default, and the settings available are for subtle tweaking, not required before I'll get a useable function.
I still use a generic programmers editor for most of my HTML (beyong the first rough draft), and all my work on XML and XSL.
It's amazing to me how many WYSIWYG HTML editors there are with "source-mode" editors that are horrendous.... They should bother to put it in, if they don't want to make it useable.
There are only 10 types of people: those who understand decimal, those who don't, and, uh, 8 other types I forget.
That's strange. If I haven't been writing this on laptop (actually pretty old one -- Compaq Presario 1200), where modem (yes, WinModem) works, screen driver works, hibernating to disc works (here I am cheating a little bit, because I use patch on kernel -- got to swsusp.sf.net), my security updates are getting to me automatically (and no one threatens me that I will have to pay for them) courtesy of Debian Security Team, packages are consistent with each other, it happens in very pleasant and user-friendly Konqueror and KDE 3.2, if all this wasn't true for me, than I would believe. However, given all my experience I think that you (and all other who writing about something they have no clue at all) should think twice before writing things like this.
Have a nice day,
Matej
If you think vi is not easy to use, then you don't know how to use it (probably because, as I pointed out, it's hard to learn).
As far as I'm concerned, as soon as your fingers leave the home position to go arrowing around or (even worse) to go clicking on something, you've already lost the usability battle with vi. It's true that :wq test is much harder to learn than {Move mouse to File, click on File to open the File menu, move mouse to Save As..., click in the filename text entry box, enter the filename, click on the file type selection box to open the file type selection list, click on the scroll arrows to display Plain Text, move mouse to Plain Text, click on Plain Text to select it, move mouse to the Save button, click Save; Move mouse to File, click on File to open the File menu, move mouse to Exit, click on Exit}; but it's easier to use.
[Note: I am aware that some--but only some--of the above steps can be accomplished with keyboard shortcuts. Not all of them, however, and my point remains.]demi
Thanks, really. If it's as good as you suggest (and responsive) I'll be a mac owner within three months.
Believe with me, my saplings.
In fact, if the Linux community wants to know why Linux has not taken hold with even the more proficient home user, it need not look any further than this: Ask a question about accomplishing some task in Linux and eight or nine of every ten responses will call the questioner a dummy for not knowing that he should use Red Hat for word processing and Caldera for printing.
...you can feed'em information, but you can't make'em think
> but on one distro (Redhat EE 3.0)
... what a nonsense! Have you ever head of freedesktop.org?
> you have to do "export LD_ASSUME_KERNEL=2.2.5" or > This is some sort of inconsistency with libraries
> or something, isn't it?
No. it isn't. It is not. Read the documentation. The problem is with your software.
If you have written software that is not posix conform, you must use the above workaround. Since RedHat is the first Distribution which introduces NPTL, the problems appear there at first.
Anyhow, if you have problems with the software, you should fix it, instead of blaming "inconsistencies with libraries".
From the release notes:
Red Hat Enterprise Linux 3 includes the Native POSIX Thread Library (NPTL), a new implementation of POSIX threads for Linux. This library provides performance improvements and increased scalability.
This thread library is designed to be binary compatible with the old LinuxThreads implementation; however, applications that rely on the places where the LinuxThreads implementation deviates from the POSIX standard will need to be fixed. Notable differences include:
> Why do problems like that still exist?
Now it is clear that you mac freaks are not even able to read documentation, let alone to fix bugs in your own software.
> GNOME does things their way, KDE does it another
God oh god
Underneath it all, getting a computer to do what you want is hard. Having a command line established a certain baseline - no more machine code or breadboards for most people. Having a GUI allows developers (or their IDEs) to absorb even more of this complexity from the 'user experience' - no more command lines for most people.
Proper UI design is the next step. The burden of complexity continues to shift from the user to the developer.
A computer without Windows is like a cake without mustard.
photoshop on linux? hello, never heard of gimp?
Not everybody works exclusively in RGB; some do color print work, which uses CMYK and spot colors. GIMP cannot handle color separations or spot colors because of patents whose holders refuse to license them for use in free software. To get an idea of how much the licensors are asking, compare the pricing of Photoshop and Photoshop Elements, the latter being comparable to GIMP.
Flash Player requires soft real time performance. Emulating an i386-only plug-in on PowerPC hardware using an interpretive i586 core such as that of Bochs will not provide soft real time performance at the level required by most SWF movies. Or can you point me to a Free or free recompiling x86 emulator that lets Netscape plug-ins designed for x86 run on PowerPC?
"Appfolders system?" WTF?
"Appfolders" refers to how Mac OS X implements bundles at the file system level: as folders. Classic Mac OS implemented them as "resource forks," faux-filesystems-within-a-file that the Finder(tm) file manager ensured traveled along with the "data fork" containing the executable code.
There are times, however, when you want to install something that's not an application. QuickTime, for instance, or the developer tools. In those rare instances, you need to install a package.
Except that there are an excrement-load of "developer tools" available from third parties, and if Apple wants an operating system to be useful to developers, its packaging system should be useful to developers who may have dozens of different tools installed.
[Human interface style guides are a] set of recommendations you should follow unless you've got a good reason not to. And, yeah, sometimes "it looks cool" is a sufficiently good reason. (Programmer laziness, on the other hand, is not.)
"It looks cool" seldom if ever justifies counterintuitive interfaces. For example, one version of the QuickTime player used a faux thumbwheel interface to control volume rather than the tried-and-true slider used in every other version and made controls look disabled, among other glaring errors. Read more at Interface Hall of Shame: QuickTime Player.
Pfft. For the colored and transparent terminal windows, of course!
Yes, I own one. :-)
-Rob
Marriage doesn't have to suck!
Wow, you really are a fucking moron. Really, nobody wants to visit your shitty site. If they wanted to see the deals from other sites, they'd GO TO THOSE SITES THEMSELVES! Amazing!
How ironic that someone writing an article about user interfaces and ease of use would put it online using white text on a dark background.
I put an HP Multifunction up on a Mac network and the Mac found the printer and used it without a hitch. Even scanning worked.
Maybe your experience was different in some way. But I can be reasonably sure that Apple at least *intended* network printer setup on a Mac to be as easy as everything else is on a Mac. Which is to say, 'pretty darn easy'.
Shouldn't we be working to improve our software instead of wasting our time to answer this stupid article? Dont get me wrong, but i have this feeling ESR pushed the envelope a lil bit. I have used linux since 96, and since i started using CUPS, i never had a problem adding a printer, local or remote (wha?! doesnt work? maybe its time to read that damn manual). I've even had the same setup he did.
...
...
..."
So, ffs, if it doesnt work, read the manual, check the logs, search the forums. Much better than "Windows is searching for your devices...
Then a nice blue screen pops up...
Now you all may argue that this is not the focus of this article and bla bla bla, but the fact that we still are in our "childhood" when it comes to desktop development cant be denied, and for the short time we have been doing it, we've done a great job.
So, to all you KDE and Gnome and XFce and etc developers out there, just keep up the good work.
After all, it is very easy to write a rant, to fix the problem is much harder.
(And before you all flame me, I dont care what ESR has contributed to the free software world. To act like that is a disrespect for all CUPS developers who are sharing their work with us for free)
1. Move.
My family continues to prohibit me from accepting jobs outside Allen County, Indiana, because I have no means for support from friends and family outside Fort Wayne. How can I honor my father and my mother as the Lord has commanded? How does somebody who has never had a job before foot the bill for relocating across over a thousand miles? In general, how does somebody fresh out of college, which gives a week-long vacation to visit one's family every couple months, become ready to strike out on his own, working for a company that typically doesn't give such breaks?
2. Find a new profession.
I'm straight out of college already, over twenty thousand dollars in debt. How can I expect a bank to lend me even more money for another education?
3. Make your own job opportunity: start a business.
Where do I find the means to learn how to start a business that doesn't fail within twelve months like the vast majority of new businesses?
You're taking "no" for an answer.
Now I'm asking how one would overcome these excuses.
Listen. The guy's (Mr cant network printer)ethos is right. Geeks cannot design GUIs very well. Why do you think part of the reason (advertising noted) people spend money rather than use free alternatives? The microsoft stuff shines and is easier to use - its pretty. Come geek-o's, suck it up, bend to the will of the massess and add a bit of gloss or bubblegum to ur programs. U know it makes sense
Are you feeling philanthropic these days? How about donating that killer Aqua GUI to the Linux/OSS effort? Can we beg? Please? :) Please please...
'A lie if repeated often enough, becomes the truth.' - Goebbels