Making Linux Beautiful
intensity writes, "Wired has an interesting read on efforts to 'make Linux pretty.' I originally got into Linux because it gave me total control over what I could do with my desktop through the X Windowing system. That was in 1995, when setting up X was a chore in itself. Is it time to set down a standard GUI for Linux systems? " It's mostly yet another story about Eazel's Nautilis project (AKA the GNOME 2.0 Desktop)
the article says about KDE and Gnome:
neither has a graphical file manager. Instead of clicking on icons or menus to open and save documents, users must type file names into a command-line interface.
But what about the KFM, KDE does doesn't it?
I didn't just dream about those pretty icons and stuff...
-- You ain't seen me, right?
Bruce Tognazzini, founder of Apple's famous Human Interface Group and a frequent interface critic, stressed the need for a standard Linux interface and a comprehensive set of interface guidelines to ensure consistency across the system.
Ugh, no. No standards on GUI, please. The great thing about using Linux is that there isn't just one way to do something. If we start forcing GUI standards on people, we'll get bloated window managers that don't serve the needs of particular people. It's very very difficult to make one interface that suits everyone without making it be this huge Swiss Army knife of a program (see emacs, although please, no flames).
The X standard is enough. I think Eazel's efforts are great, but I like the variety that the current crop of window managers provides and if you 'standardize' an interface or the commands it can use, inevitably, something will be included that you don't need and something else will be left out that you do.
Err ... yeah ...
"Oh, I hope he doesn't give us halyatchkies," said Heinrich.
I agree. There should not be a standard. I particularly like chaning the look and feel of my desktop every now and then, playing around with different windowmanagers etc. But I believe it would be a good idea to have a graphical file-manager, not even though but rather because it's more like windows. Not *everything* in windows (or mac gui) is bad. More people will be willing to switch to Linux or other OS OS (Open Source Operating System - how do you write that? OSOS?) if they have the ease of "point and click". Isn't KDE's file manager a graphical file-manager?
-- "Tradition is the illusion of permanence."
Really, there are a lot of steps in certain routine configurations and obscure syntaxes that I, as a sys admin, would prefer not to have to edit by hand if I didn't have to. For example, I probably add/remove ten DNS records in a given week -- I'd rather have a GUI to do it. I doubt, however, that my boss would want to pay me to develop one and I'll be damned if I'm working on my off hours.
The mistake that most of the command line crowd (myself included) make is viewing the GUI v. command line debate as being an either/or situation. Well, just because that's how MS does it, it doesn't mean that we have to make the same blinding errors.
In any event, any Linux GUI will always beat the hell out on the NT version for one simple reason: setenv DISPLAY tux:0 -- while the rest of my officemates are driving upwards an hour to get to their clients to reset some little thing or the other, I can do anything remotely that I can do in person.
----
Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
Jakob Nielsen is on the money - I think we've reached the point of diminishing returns with the current "desktop" model of UI. Win2K has it refined about as far it will go, and Aqua is really the same old, same old, just amplified and candy coated. We need someone to invent a new style of interface - one that will take advantage of emerging technologies like speech recognition, 3d acceleration, desktop video, etc. I'm not sure what that would *look* like, but it would be a good direction to take.
The XFree86 Font Deuglification Mini HOWTO
----
I saw an ploughman once who was expending a huge amount of energy making his old horse go faster. He kicked it, and shouted and screamed, and whispered in its ear, and tickled its tail, and spurred it and whipped it and waved a carrot in front of it. But, the horse was dead, so it made no difference.
We can keep on showing each other screenshots of 'the next amazing Linux desktop' and we can revel in the fact that someone somewhere has finally cracked transparent anti-aliased PDF support and found a way to have radial scroll bars and a three dimensional colour picker widget.
But none of it will make any difference, because X-windows is already dead. It died a while back when someone thought "gee, I know, let's make a desktop whose strengths come not from the elegance of the theoretical design of the comittee that programmed it, but from its usefulness to the world at large, and the average human being in particular."
So, from where I'm standing, MacOS X, if it ever gets released for Intel, has got it in the bag.
-----
If there were a graphical interface to do, say 70% of configuring something, that allowed access to the command line for more complex configurations, that would be great. Give me a GUI that will allow me to do most of the things I want to do with an OS, but don't FORCE me to use the GUI. If I prefer to do something on the command line, have the GUI interface inherit the changes I made on the command line, and vice versa. Let the interface live on its merits and provide options. Choosing one is different from having one choice.
Let there be a standard, fixed easy etc desktop. Then my mom can run linux and show her friends how to do stuff.
I can still run what ever I want. Nothing to stop me or you.
Noel
RootPrompt.org -- Nothing but Unix
kayaking
As most other posters (so far) seem to be saying "These people are cluseless about unix."
Okay, there were no graphcisla file mamagers in 1982, but come on people this is 2000. Sun has had graphcics filemanager since they were trying to get everyone to sue their own propritary window system over X. They have had one for X for years. That is over course one example.
I happen to like unix, with the many different approaches that work togather. If they were working on a standard way to make all file managers interoperate (so I can drag a file from KFM to the irix dumpster for example) more power to them. But to say that I should use their file manager over the 100+ out there? Forget it, I'll use a different one just to be contary.
I don't think these people understand that unix still has a following amoung people who don't care if anyone else can use it or not, only that they can get their work done with speed.
To put it anouther way, my prefered default shell is csh Not tcsh, sh, ksh, zsh, bash, or any of a number of less well known choices that all get the job done. Yeah you can make arguements against csh, but I'm used to those idiocryncies and there is no clear advantage of switching. (of course when I'm root I use sh) Likewise I use tcl not perl or python (either of which is better suited) to write my simple scripts. (again, scripts for starting up the system are sh - though now perl is a part of most base systems)
I by no means have the answer to this, but at the very least I'd like to pose some questions to the crowd: Is our goal as linux users and open source advocates really to take Linux et. al "all the way to consumers"?
My feelings are that we use and love Linux for various reasons - the community, the flexibility, the attitude, the speed, etc. Linux is a more powerful and more stable operating system than Windoze. X helps us visualize that operating system and GNOME/KDE help us build on that visualization.
But frankly, most "mass-market" people don't know, care, or want to know how to use *nix. It's complicated, and that's why, as hackers, enjoy it. The problem arises in that there is an inherent loss of control/power (i.e. Windows/Mac) when a system is "dumbed down" beyond the window manager.
So what do we want? We want acceptance of Linux as an alternative to the norm. We want wider application support. We want games. But I don't necessarily feel that taking Linux "mass-market" is the only way to get those. (And I do agree with the only ways Linux could get really "mass-market" are a) make it really dumbed down or b) make everyone in the world suddenly get a lot more tech saavy - unlikely).
I'd be curious to hear what you all think about this....
Ferrari and other exotic car rentals in New York
I'm not trying to stop any progress or anything but sometime I feel Linux is way too easy to setup and run compaired to the amount of knowledge it takes to maintain it.
First time I installed Linux took me about 3 days to install the kernal, etc and get X up and running (This is around the time, if I remember correctly, when the kernal was just before 1.0). Recently I did RedHat 6.2, it took me 3hours, and that included a problem with my mouse which took 1 hour to resolve.
Now, to get my new sound card running I had to look up the how-to, realize that my card wasn't supported, find out the how-to was out of date and that it support was just recently available (linux.aureal.com), find the drivers, compile, debug abit and then I got sound.
What I'm trying to say is that X/Gnome/KDE is already nice enough. If its anymore easier (a user never has to know what "ls" does) he might not be suited to maintain a system, even if its just for simple home use. Linux, the core, isn't ready for those users, Windows isn't even ready for that either.
I think that X is good enough as it is. How is it worse than Windows?
The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
That said, it seems like this article speaks more toward a standard GFI (Graphical File Interface) or file browser, than a GUI. Sure, having all the programs have the same graphical theme is nice, but I don't think that makes the computer easier to use. Most newbies I know get tripped up when they have to deal with file management.
What linux, and all OS's, needs is a groovy way to store, organize, and retrive files. All this nested directory stuff is fine for us people who can "visualize" the tree, but to most people this makes no sense. I have never been inside an office that had file cabinets nested inside file cabinets ad naseum.
We need a way to organize or abstract files such that they are easy to find and make sense to human sensabilities.
That damn time machine set me back 15 years!
I don't run GNOME on my system because I like the feeling of "raw Linux" and because I don't like how GNOME looks/works/acts/etc. That's entirely up to me and isn't the reason I hate it.
What I hate is all the unnatural dependencies on GNOME on RedHat systems. For instance, last night I upgraded my RH5.2 system to RH6.1. I have a lot of complaints about how this worked (like, why can't I cancel or at least unmount my drive? and why can't password-less users login or at least have root change their passwords), but the relevant complaint is the GNOME deps.
After the install I found that a lot of GNOME stuff had slipped through (another complaint: when I DON'T want to auto-install deps, let me UN-install upward deps). I spent a few minutes rpm -e'ing these, but when I tried to remove gnome-libs it told me that wmconfig needed it. OK, so get rid of wmconfig. Can't, fvwm needs it. WTF? That's just not possible. fvwm is ~8 years old, GNOME is
Actually, the real blame for this goes to RedHat (for stupid dependency defs) and the RPM format (for not allowing "wishlist" vs "gotta-have" deps). So once I get a tape drive I'm going to back my system up and install Debian. I hope it's a little saner and less "user-friendly".
To bring this post marginally on-topic: I don't mind if some (even most) people prefer "pretty", "standardized" Linux as long as two conditions are met:
1) I can still get to the "raw" level that I like.
2) Apps are not written to depend on a "standard" and break when it isn't true. There's a lot of tools on freshmeat that I'd like to use, but they all start with "g" or "K"--so I can't use them.
--
Here is the result of your Slashdot Purity Test.
Linux MAPI Server!
http://www.openone.com/software/MailOne/
(Exchange Migration HOWTO coming soon)
The biggest advancement Linux/UNIX GUIs need is Antialiased fonts. Apple did it, now its our turn. X has a lot of great features, a lot of nice and easy windows/desktop managers, but text sure does look like shit unless you have a 100+dpi moniter. Even then it isn't very impressive. My girlfriend always asks "why do the letters look like that when they are small?" and I respond, "Because that is the only thing Windows has better than Linux."
There are two kinds of standards: official and consensual (or de facto). To create an official standard GUI for Linux would be near-impossible, because nobody has the authority to dictate what standards must be followed. If Linus doesn't like something, it may not make it into the official kernel, but nobody can be stopped from producing their own GUI.
To create a de facto standard GUI, all you need to do is create a GUI that everyone wants to use. So, standardizing the Linux GUI in this way is easy: just create a GUI that is all things to all people, and *poof* it becomes the de facto standard.
If you think that it's not possible to create a perfect GUI that is all things to all people, then you must abandon all hope of creating a standardized interface. Fortunately, the whole notion is silly anyway; there is absolutely no reason that a myriad of interfaces cannot exist. Just because many exist does not mean that a business cannot internally standardize on one, or that every Linux user must know how to use every single one!
Check it
- Linux shouldn't necessarily compete with Windows. And:
- A standard interface doesn't mean you won't be able to switch to a non-standard interface.
It's kind of like the RedHat distribution. A lot of people mistakenly think RedHat = Linux. While the notion is wrong, if people make their products work with RedHat, there's a good chance you can make it work on any Linux system, and still have all the configurability and customization you'd like.What I think is that there should be a standard FRAMEWORK. Something where you can write a program to be compatible with the "desktop environment", and not necessarily Gnome or KDE or something else. I would have it be like OpenGL - vendors (in this case GNU or Troll Tech) could add extentions, which might eventually be rolled into the specification for the "desktop environment" if they are widely accepted.
The only problem, as with many open software projects (and can be a drawback) is who ultimately decides what features are required to be compliant with "desktop environment 1.0"
----------
Stupid sexy Flanders.
The only thing worse that X Windows pasting is X Windows font handling.
.... oh never mind.
Oh, and X Windows colour handling is quite dire, too. As is X Windows
I guess the best thing you can say about X is that the spec is minimal enough that it leaves plenty of room for the different window managers to screw things up in their own unique way.
Remember - you haven't lived till you seen a computer showing 5 windows all with different types of scroll bar. Hmmmmmmmmm, lovely.
-----
Id really love to see - and i think that linux needs this a bit - is some cross toolkit theming standard. Also, I'd like the toolkits to use similar rendering engines for pixmaps, gradients and stuff. that way you would be able to maintain a theme across multiple toolkits, managed in one place. It'd really make things better :) I mean, the different toolkits have their merrits, but I do think that the user should be able to make them look however they wana. And if thats the case, the user doesnt wana have to do the same thing 10 times. Also, more work could be concentrated on rendering engines if all toolkits used a standard one - to improve rendering times and stuff. I think thats the way that its guna have to go, eventually at least.
There are two trends fighting here : those who think nothing has to be elected as a standard interface , those who think it has to.
It's quite simple, though : if the goal is to make Linux only accessible to the happy few who know how to use a computer, and how this computer works internaly, choice is a good thing, no wonder about that.
But if the target audience is (as it tends to be these days) the non-computers-professionnal, the lawyer, the doctor, the student, with their precise needs, a common interface is a must !
I used to work in a netcafé during my holidays. The OS used there was Win9x. One day, a member of the staff decided to move the icon for IE some pixels at the right. A lots of customers complained because it was "impossible to surf the net anymore !".
Most non-computer-litterate users are lost when you slighlty move an icon, what happens if there's a different desktop on every computer ?
Then again, that only applies for those who want Linux to become a popular, widespread OS for the average Joe.
Stéphane
Instant Karma's gonna get you, Gonna knock you right on the head (John Lennon, 1970)
I would also point out that most of the people saying 'Linux needs a standardized desktop' are from companies hoping to be the ones to control that desktop; and don't make the mistake of thinking that because the standard desktop is GPL'ed, one company can't control it. All it takes is one company's version of GNOME or KDE to get substantial market share, and they can do whatever they want with it and the market will follow. The community can make whatever changes and additions they want, but if nobody uses them, what good will they be?
Having said that, I think that five years from now, the people that this mythical 'easy to use standard desktop' that everybody is trying to remake Linux for are going to be using something fitting the model of 'internet appliance'. It'll be a black box with defined functions, one way to accomplish those functions, and a user interface simple enough to use while driving (not that that will be recommended practice ;).
The way to get your grandmother into computing is not to try to shoehorn the computer into a model it doesn't fit. It's to build a new kind of computer that fits that model from the beginning.
I know a lot of people... non-geek people... who have mastered their environment. The sad thing is, they've become experts in manipulating the AOL mail system, or some other slave-to-the-mouse torture device, and their skills don't transfer anywhere.
Contrary to the prevailing wisdom, I don't think most people are really all that dumb. Most of them truly do need something less intimidating than a command line until they get some confidence. But locking them into some *standardized* environment where what they learn is grossly abstracted from the reality of what they're doing is just bad.
There is no reason at all to hide the filesystem hierarchy. Heck, when I started using Unix, I didn't know you could go up from your home directory, so how confused could I get?
And if a lay user has to say, "I'm sorry, I don't know Gnome, I only know WindowMaker," how is that different from, "Sorry, I don't know Windows, I only know Mac"? At least the OS is capable of switching window managers to whatever the user knows.
Yeah, yeah, X needs to be more friendly. No doubt. Contributions to that end are welcome, at least if they're GPLed. But I really don't think the totalitarian culture from Apple has much of a place in the Free Software world. It's not just information that wants to be free.
"The best we can hope for concerning the people at large is that they be properly armed." - Alexander Hamilton
A crucial element of having a GUI is that there is a common look and feel among the applications. In Linux, there's 4+ widget sets, a couple desktop environments, and countless window managers - and each distro comes set up differently. At the very least, a widget set should be made standard, and a default windowmanager/desktop environment should be chosen.
This lack of consistent interface is one of the major things that the X environment ugly as hell, along with things like having no anti-aliasing, that should be replaced in the next release.
-lx
One of the major factors that keeps Linux off the desktops of non-geek home and office users is the lack of interface standards. Without standards, users are constantly having to retrain themselves on how to deal with the interface. This is not a productive action. It slows their productivity and increases the frustration factor. Computers users should not be forced to start out at square one everytime they encounter a new program. There should be elements that they are already familar.
As for visual esthetics, The desktops currently available for Linux through its various distros are just plain "butt ugly". Enlightenment, however, is the most visually appealing removing the "butt", leaving it just plain ugly. To the average user, the lame Windows 95 interface and interoperation between applications is a far better user interface than what is available for Linux -- even the Win 95 knock-off desktops.
If Linux desktop designers want a clue on how to design the desktop for the non-geek world, take a gander at the human interface standards at Apple. While not perfect, Apple has developed UI design to an art. Common application actions are standardized. Learn one application, you already have developed a skill set that will carry through to the next application presented. In addition, if you look at the screenshots of MacOS X DP3 that have been posted online (and mentioned on Slashdot), one can see that an attractive interface can be placed on a UNIX variant. In fact, if Apple has its act together with MacOS X, Linux is pretty much sunk as the UNIX variant for the common man/woman because of the 20 years of UI design under Apple's belt. Plus, as everyone knows, BSD > Linux. :P
-- SJ
Just for the records I would like to say that there are a couple of mistakes (lack of information ?) in the article, the first and weirdest one being that there are no graphical file managers for Linux. At the moment I am typing I am using Kruiser (and I have been using it for a couple of months now) which looks a lot like the Explorer of NT4 (only that it is better).
So don't tell me that there aren't any file managers
On the other hand (and here I speak for myself) I wouldn't even consider not having the CLI since sometimes it is more useful that any graphical tool (mainly because I can type faster than I can move the mouse - and I am really good at that too).
So, in my opinion, and I won't be the first to say this, a system that can be acccessed only via GUI is deemed to be a Windows. No matter of what is under the hood. And I'll give you an example. Say you have a huge list of files that you want to rename (e.g. from Prefix-*******.something to ******.something). I'd like to see the average user doing this by hand (especially if you have 1000 files or more). Of course, any Unix/Linux user could tell me to use awk (at least I would) and do the job in a few seconds. Where is the use of the GUI here ?
The second part (and I like to dream, only that this article was too much) is about a system that plays the secretary. Come on, guys, I've been working with computers since '90 and I can tell you that there is no machine stupider that this one. And believe me, as long as we don't find something really revolutionary (i.e. understand the human brain and imitate it in AI) it won't be possible to have this sort of GUI. I mean, look at the search engines. I happens so often to return weird results even when your query is quite well constructed. And of course, what you need is there, in the result, only that it is in the 2nd or even 3rd page. So, no matter how much I would like an intelligent interface, I think that allowing the computer to filter the information and hide some of it is very risky. It is very likely that an important message will be purged without giving you the chance to do anything about it. And this is only an example
Don't take my considerations as pesimistic - I simply don't think we can do this yet.
And, of course : the most important part of all. No, there shouldn't be only one interface. We are saying that in the bussiness a monopoly is harmful and leads to stagnation. Well, don't you think this is true in almost every situation ? Including GUIs ?
Or the author of the article is under the influence of the Apple strategy : we are the owners, we produce a unitary product, we offer only one choice. Period. Oh, I forgot : you are not allowed to modify anything.
How does this fit in the GPL/GNU/Linux/... scheme ?
Nor will he ever. Linux is never going to capture the desktop market - even current efforts are well behind what Microsoft and Apple have been supporting for nearly a decade. Linux is not Joe Sixpack's OS, and I fear linux users are going to shipwreck the OS learning this lesson the hard way.
I'd agree that having one GUI standard for everything is bad. But your point about Emacs was odd - sure it's a large program that can perform many tasks, but they are all performed through one very simple interface.
In fact I'd say that they way Emacs works really drives the point about standard GUI's home - for what Emacs does (work with text in the most contextually approriate way possible) it provides one of the more optimal interfaces to do whatever you want very quickly using only the keyboard. The interface Emacs presents is not what you would want for all programs, but in its own area it works quite well.
I'd say we are starting to head toward more specialized task-oriented GUIs. A GUI I want for programming might be a lot different than one I'd use for graphics work or playing games.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Many of the responses to this article tend to go like this:
"Who needs a fancy schmancy interface? Raw Xwindows is great!"
"We don't want to make Linux easier to use!"
Look, Linux started out as a private hack that went public and has grown into a very stable operating system kernel. But the long line of open source development and bleeding edge kernels is not the means, not an end. The goal is not for Linux to be the OS of the 3/_33t who like recompiling kernels and hacking X windows config files. If you want to be able to graduate and not have to use Windows on the job, then Linux has to progress beyond the embryonic stage.
Quite frankly, we need the expertise of people like those at Eazel. I recently tried out OS X for the Mac (which runs on a Mach kernel), and it's far from perfect but it's so far above and beyond anything for X, including MacOS-like themes, that you can't make valid comparisons.
You know, I think Apple has hit the nail directly on the head with their PDF engine for MacOSX. Vector based interfaces will be the future. Even if that vector art is rendered all purty-like to the point that it looks like raster art, I still believe that a vector based interface will prevail.
Why? I have a 19" Monitor at home that I use on my production machine at 1600x1200x32Bit. One of my roommates on the other hand, has a 14" monitor that he runs at 800x600x16bit. Look at Flash on the web. If I look at a properly done flash site, I can view it at full resolution, stretched to fill my screen, while he can do the same, and they look pretty much identical -- with the same piece of flash 'code'. I don't get pixel-chunky curves when the plugin 'stretches' the flash to full screen for me, and he doesn't lose too much quality when he views it at 1/4 my size, thanks to anti-aliasing.
As monitors get bigger and bigger, faster and faster, and we still need to (at least somewhat) support legacy displays, Vector based interfaces will play a large part in how we view our 'desktop'.
You have probably received 400 emails about this already, but just in case - here goes. Both Gnome and KDE already have graphical file managers, contrary to the article which said neither has a graphical file manager. Here is a screenshot of the Gnome file manager and here is one of KDE's.
Please issue a retraction so people are not misled. It is very important to the Linux community that people in the more general computing public become aware that Linux is becoming easier to use. Thank you for your attention to this matter.
So, do it for yourself, then, instead of for your boss. It might make your life easier, and you'll probably learn something.
I wrote a GUI DNS thingy a while back in Perl/Tk. It was fun, and I learned a bit about GUI development under Perl.
Advanced Perl Programming has a chapter on Perl/Tk, and now there's even a whole O'Reilly book on Perl/Tk, I think.
New XFMail home page
I've been working on a Windows based application, and I was determined to make it as visually uncomplicated as possible, while following the general Windows/MDI scheme. While I think I succeeded reasonably well, I think I failed in an important respect: the interface is not very attractive.
Many people might not think it matters, so long as it is functional, but I think it does matter. The boss has always been able to have nice offices and furniture, and a generally pleasant environment, whereas the drones have had to make do with ugly but functional gunmetal gray desks and gray fabric cubicles. With software, there's no reason for this dichotomy. Everyone should be able to enjoy an aesthetically pleasing software environment.
Windows does present a bind; part of doing a good job on an application is that you don't really want to stand out in a garish way from the organization. A fairy tale castle may look beautiful on the Rhein but would be silly in Manhattan. Practically anything looks silly when plopped in the middle of Stalinist era apartment blocks. This may be as great a reason to detest Windows as any: it's unncessary aesthetic mediocrity. Microsoft has an incredible tin ear when it comes to visual appeal (have you ever looked through the PowerPoint themes?).
Visual appeal is not the only, or even the most important element in GUI aesthetics, but it is relevant. I tried the Aqua theme on my Windows box, and it made work just a little bit nicer. Unfortunately, the skins program had compatibility problems so I had to delete it. This kind of themeability should be a standard part of every GUI.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
Blegh. Teach people something. You only talk babytalk to an infant for so long before you expect it to pick up real language.
--mandi
I tend to disagree with what everyone seems to be saying here. Just hold your horses, and breathe through your nose for a minute while I share my humble opinion...
I think there should be a standardizing of UI's for Linux. Everytime I bring this up everybody bitches and moans about how if we standardize the Linux UI it'll get "...as fuck ugly as Windows..." Let's get one thing straight - I DONT WANT TO STANDARDIZE THE GUI - Just parts of the UI. If we standardize the GUI, we'll lose our artistic expression. Personally I think the KDE kids are doing a nice job, but it's sooo damn ugy. That's why I use E(yecandy)nlightenment.
The reasoning for standardizing the UI is to remedy all the blasted different ways programs behave. For example, in some programs, to quit the hotkey is 'CRTL-Q', while in others its 'ALT-Q', or ':q!', or even 'CRTL-X CRTL-C'. And to save it's the same problem - 'CRTL-S', 'ALT-S', ':w' or that awful 'CRTL-X CRTL-S'.
Why can't we just set aside our differences and play nice?
Perhaps the buzzword "standard" is the problem here. Call it a "basic Linux GUI" or a "starter GUI" or some such. Pilots start out in easy-to-fly training planes and later advance. Why can't there be the Linux equivalent of an aircraft designed to be forgiving and easy to use?
Some people will never get beyond that stage (just as many pilots never go beyond single-engine VFR), but those who want to advance have plenty of alternatives available.
To continue the aviation analogy, note that different aircraft have different purposes, levels of complexity, and performance characteristics, but they all react basically the same way to the same control inputs - and you don't hear Mach III fighter pilots complaining about Cessna building 120 mph "family" airplanes instead of forcing everyone to fly an F-14.
- Robin
I've used linux for quite a while, and I've never used a file manager. I've tried gentoo (I think that's what it's called) and the new KDE file manager, and of course gmc. They're all VERY nice programs. But what I've found is that I've worked on my box for so long, I know exactly where something is when I'm looking for it, and a GUI actually SLOWS ME DOWN when I have to click "up the tree", ok, now into the "/home" directory, ok, now choose the "uruk" user directory, yeah, ok, choose foo.txt, etc. etc. etc.
:) Of course why not just have a popup window that asks you what directory you want to be in before the window comes up? That way you can type, right? But then you have to fool around with the right window having focus, and those window manager features where popup windows get focus automatically drive me bat shit, so that's kind of out. :)
My file manager is called "bash". It provides extremely powerful features such as "cd", "ls", "cp", "rm", "find", etc. If you know how to use them and you're a touch typist, you'll smoke whatever a GUI file manager can offer.
And besides, how do you do something like this in a GUI file manager?
find . -name "*.txt" -exec grep "foobar" {} \;
I have yet to find a file manager that will let me do that, but maybe there's one out there.
The only way that I could think of that a GUI file manager would become what I would prefer to use is if it was able to pop up a window corresponding to whichever directory I wanted to be in at a certain time. While that's usually $HOME, it changes a lot, so really the file manager would have to be psychic. The GNOME folks have done some really amazing things with software, but I have yet to see psychic software.
-- Truth goes out the door when rumor comes innuendo. -- Groucho Marx
I know I'm skating dangerously close to trolling here, but:
It strikes me that Eazel is beating GNOME at their own game -- getting tremendous press coverage to hype software they haven't written yet and somehow always giving journalists the impression that no GUI is currently useful, or even exists, for Unix.
What I'm listening to now on Pandora...
I'm sorry, but this anarchy-for-anarchy's sake stuff gets to me when you talk about Linux' UI (or lack thereof). I really do not intend that comment as a flame... ;-)
;-)
As a former Unix/C programmer who has backslidden into Management, I have listened to a LOT of folks who might like to use Linux, but just find the UI baffling. Believe it or not, these same folks can actually use MS windoze. Germaine to the article at hand, though, my users RARELY ever open up the old Windows NT Explorer (formerly File Manager).
ANYWAY, a set of UI guidelines (and that's all they're REALLY proposing, by the way) are long overdue. This, to me, is the ONE THING that now differentiates the Mac (and my old NeXT that I still miss, may she Rest In Peace) from PC's. Sit at a PC or Linux box and try to find something on the various menus. You just have to keep looking until you find it, look in Help, or (like my users) pull out your '45 and shoot the computer out of frustration.
On the other hand, things on a Mac or my dead NeXT are pretty much in the same place from program to program. This is really due to a document more or less called the User Interface Guidelines, IMHO.
Of course, QuickTime doesn't count.
Please Let's DO encourage this! I think they CAN be made generic enough to please most folks.
With GNOME and KDE, that's more or less what we have, and look what a mess it's made of things ! It's horrible. Most nice-looking GUI apps now require you to be running Gnome or KDE, and I personally don't care to run either. GnomeICU, for instance, starts up the Gnome panel when you run it ! And it won't run at all if Gnome is not installed.
Everybody's got it into their mind that we must look and work more like Windows to succeed, and they base certain design assumptions off that principal.
There must be a root menu in the lower left corner
There must be a task list along the bottom edge of the screen
There must be an X in the upper right to close the window
The list goes on and on. I personally HATE the first two items, which is why I like Windowmaker. I have my root menu on right click, my task list on middle click, and when I don't need them, they aren't there consuming precious screen resources.
I've ventured way off topic, but the point it, if we establish a standard, then designers and developers will assume that standard and you'll be SOL if you deviate from it. Think of how many apps that 'Designed for Red Hat Linux' that are a pain and a half to use in Slackware (my favorite distro). There's no need for it.
25% Funny, 25% Insightful, 25% Informative, 25% Troll
Why not somthing innovative? How about a system where file location is the important part. Each file be it source, binary or simply a document has properties that say where it belongs. A broker would perform the function of sending the file to the correct directory.
If the file is inadvertantly put in the incorrect location, broker engine "cleaners" come along and give notice that file "foo" seems to be in the incorrect location and an idiot proof tool to automatically move it to the correct location so that it can be read by the appropriate application.
This really isn't too far from how things work now. Apache only serves up file from a predefined location. Linux has a default directory structure. MS Office defaults documents to "My Documents". Take it a step further.
In addition to properties like file name, size, date created, date modified would be the default path. The broker program automatically ensures files are put in the correct place and runs scans to ensure there aren't any incorrectly placed files.
Each application developer could fit their program in a structure like this:
For the program: [Root]../[application name]/[app files]/[app source] or [app binary]
For the user's created or downloaded files: [Root]../[application name]/[app user files]/[user1] and [user2] .....
There would be many inherent benefits to a system like this. Looking at a tree directory at all would be pointless since all the broker would have to know is who the current user is and where his/her files are stored by default. The entire environment would be cleaner because all files are in the correct place by default. It has advantages over the current file extension registry process because there are only so many three letter combos to use for file extensions and applications tend to "stomp" each other by using the same extension, changing extensions, or overwriting extension registrys.
The association process would be in the hands of the user. Having a broker organize the applications by name there is less of a chance of inadvertant overwriting because there are already worldwide trademark laws. I could go on but you get the idea.
From a user perspective life would be simplified. If you download a particualr graphic format it would automatically be placed in the correct directory to be "seen" by the correct graphics program. Life on the desktop would be simplified to starting applications and browsing the web.
For cases where two applications need to "see" the same file we could set different applications to perform different operations on a file. Each file would have a "edit" directory property or a "browse" directory property. The person then could configure the file broker to send files to the directory for each associated application(s) in the case where the person wants to edit a browsed file (or turn on the option for editing browsed files).
Why do you want your mom to use an operating system designed to be a server? As the Unix philosophy goes, a too for every job. Sometimes I think Windows (if you can put up with all the crashes) is the perfect tool for people who just want to write a letter and browse the web.
Finkployd
Stay with me here: Commercial app makers know that you can't please everyone all the time, and that people like to be able to fall back on things they've already learned -- Ctrl-S is save, right?
It is therefore in the interest of these commercial app makers to go with a the same system everyone else is. If a particular GUI has a larger marketshare and more consumer-ready apps already existing, that's where your company should go, right? Folks, we've learned this lesson before -- or have we already forgotten the one big lesson MS had to teach us last decade?
There will be a standard. Hell, MS could probably set those standards tomorrow by introducing parts of Office for Linux and saying "this is how it is". It's all about the apps. The question really facing we in the OSS community is whether we want to remain involved in guiding Linux, or if we want to give it over to the same type of people who've stalled the current level of innovation for the sake of a few (billion) dollars?
----
Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
Point well taken. Frankly, back when I wasn't much of a touch typist and when I didn't know the flags to the commands, a GUI file manager made a lot of sense. But in the long run, if you learn the commands and become a decent typist, you can absolutely FLY with the shell, whereas you can only get "fast" with a file manager.
I want to get through that stuff as fast as possible after all, because when I'm interacting with my computer, I'm not marveling over the innards of the "cp" command, I'm just trying to get something done. And the faster that thing gets done, the more time I can spend on what it is that I'm actually doing with the computer rather than wrangling with the OS imposed structure.
-- Truth goes out the door when rumor comes innuendo. -- Groucho Marx
Linux shouldn't necessarily compete with Windows.
A lot of people, including me, will agree with you on this. I think Linux (and friends) got where they are today due to their disregard of Windows. The idea has not been to create a competitor for Windows. It was to create a stable, flexible, open, modular operating environment. The fact that Windows happens to be none of these things is what makes Linux a threat to Microsoft.
However, now that many people have become used to using Linux, they get disgusted when they are required to use Windows. I work on Windows NT boxes all day long and think how much productivity is wasted fixing things that never would have broken in the first place if we were using Linux or BSD. What bothers me most is that I have to click 20 different things to do something in Windows that could be done in Linux by typing a short, if perhaps cryptic, command.
That said, I'll really be happy to see better GUI utilities for Linux. Gnome's file manager (yes there is one, despite what the article claims) just doesn't cut it for me. I hate to say it but I'd rather use NT Explorer (not to be confused with Internet Explorer) than gfm. Fortunately I find it pretty easy to use the shell instead and type "cp file1 file2" to copy files, "mv file1 file2" to move files, and "rm file" to remove a file. So I rarely use a file manager anyway. There are times however when I prefer to see a visual representation of the file system...especially in cases where the filesystem is complex, or just plain messy. I understand why Nautilus seems to be Eazel's primary focus at this point.
BTW, in case anyone hasn't mentioned this, non-Linux/*nix users can get a look at many of the currently available configurations/themes for Linux at http://e.themes.org. I'm really just pointing this out because I object to the idea that people's Linux desktops are all ugly. True, the default Redhat 6.x desktops are as bland as Win2k's default, but there is a lot of flexibility already in how you can make it look. As a default setting, bland is better anyway.
numb
Quite possibly a broken one. Doesn't matter whether it's a CLI or a GUI. If you have to relearn every interface you touch, you certainly are not going to be very productive.
It would be nice if there was a "style book" for KDE and GNOME interface design for those out there who are designing UI's with user experience and productivity in mind. It's definetely not a requirement to follow the style book, but like good grammar it makes things easy on the person sitting/standing on the other end. Good UI design is not soley about "making things pretty". It can work in the opposite direction so far as making things easier and productive. Good UI design is simple, direct, ergonomic, and follows the Bauhaus design philosphy: "function before form". Remember: Good design should be Bauhaus or it's Baroque.
It's too late to do that. You can't get rid of ":w" from vi (I won't stand for it!) nor can you enforce ":w" on other programs.
Likewise, unless you're Microsoft, you can't force anyone to use a particular widget set, UI, anything.
As a user, you *may* choose to restrict yourself to (say) Gnome compliant apps, or KDE compliant apps, or whatever. Then you'll have the consistency you so crave. But you're denying yourself some programs which you might find useful.
--
This whole article just reeks of "give me choice!!!" Oh please. I think it's time we wake up and face the facts: too much choice is a bad thing.
Consumers don't like having to make choices between 5 products that are nearly the same; how do you pick your paper towels, for example? I just get the cheapest one, since they all do the same thing: clean up spilled Surge.
Computers just make the issue worse, since people have very little understanding of what is happening inside. It's easy to understand paper towels; but is it easy to understand web browsers and file managers and desktops?
Additionally, consider how the Web market has fractured with the advent of many different browsers. You have to make your page compliant with NS, IE, Opera, and Lynx (and soon Mozilla.) Why? Because there is choice, and too much of it.
True, standards exist to ensure that products work alike in some ways. But if you are going to dictate the standard, why bother having different products at all? That just amounts to having several people reimplement the same functionality over and over.
The solution is to standardize, but the Unix crowd will never listen to that. They're used to being fractured, and are now deluded into believing it's a healthy, productive thing. Try telling any software engineer it's healthy and productive for him to reimplement other people's code rather than reusing it. It just isn't so.
Yes, but there are two schools of thought on this. I personally believe we should use the strengths of linux to their full potential and focus devlopment on the server and high end of things. Others believe that it must be made simpler and easier so that everyone can use it. I do not understand the second crowd. That's like trying to turn a Fararri into an economy sedan. If you want an ecomony sedan, just get one. You want ease of use, get Windows or Mac.
Finkployd
I just want more buttons on my mouse :-)
;-)
- -------
That's the best UI improvement I can think of. One for open/save/compile/run/email etc.
Seriously though. Sure, have a default one. Make sure it can and will be customized like hell by the user.
Make the wm learn - MS Offices idea of hiding rarely used menu items was a (lightly misguided) in the right direction.
I want the wm to notice that I usually minimize XMMS within a few seconds of starting it playing. When it notices this it will ask me "In future, do you want the Play button to automagically minimize too"
NB: I meant "proper" data-mining. I don't mean the XMMS developers explicitly put this in. I want it to genuinely apply statistics to my habits. Notice the way after you save a file you quite often do a compile/execute. If it notices that this usually happened to files being saved in a directory called ~/c_progs (like I have).
I don't think it would be _too_ hard to implement. I have thought about this kinda thing in depth - well, knee deep anyway, not neck deep
There's no end to what it could learn. File dialogs could notice that certain directories are visited a lot and make them quicker to reach. It could not what kinda file extensions are associated with particulars dirs. If implemented properly it really could learn/customize stuff that the developers never expected!
Just maintain a big database of every "common" action the user takes. Events that happen within say five seconds of each will be stored in a list. Every so often (middle of some night) pump it into a program that looks for non-randomness. Companies like IBM are into this kinda stuff, AFAIR. Insurance companies would love it.
It's more a mathemical/statistical problem than a programming/coding one.
Blah Blah Blah. I must stop ranting (and going off topic)
-----------------------------------------
"If I can shoot rabbits then I can shoot fascists" -
WTF!!
Howcome the GNU/Linux interfaces are only valid once people from some-big-name-company join in and help!
Come on now! We don't need people from Apple to blow dust on GNOME to make it easy to use! They have been developing GNOME for a while now and it keeps getting easier to use. They have an interface team constantly trying to offer suggestions to make the system more usable, and their suggestions are smart from what I know.
The same problem exists with Corel. Yesterday I read a brief review of Corel Linux. They said something like "Corel made Linux more like Windows and easier to use." BS! KDE has had a great interface from the start with the option to place the menu on top and their smart window manager.
How come the Free Software community can do nothing right until some-big-name-company comes in and takes all the credit.
The Free Software community has made some of the greatest software in the world. How come the Press fails to recognize this?
Linux is only going to suffer if we continue to bicker about which desktop we "bless" as the standard face for Linux to try to achieve some apparent stability. The notion is that if we standardize on one desktop, then it's much easier for applications to be written since they don't have to work with countless different desktops. Natural selection in this situation quickly leads to one desktop dominating and all new programs written to only support it. Sound familiar?
If we had a desktop API, and the desktop managers were written to it, then the applications could be written to it as well and not care what desktop manager was being used. I could run whatever I wanted, and not worry about being compatible with the most popular desktop manager. Linux distros could be made with a GUI that worked exactly like Windows for beginners, but all their stuff would be usable with the other desktop managers they switched to as they became more advanced.
Now imagine what could be done. For example, Apple could create a Mac desktop for Linux that was not just a window manager in drag, but really looked and felt and worked like a Mac desktop, but was totally compatible with any other Linux app that interacted with the desktop (Mac app compatibility would be a separate isssue). I think they could sell something like that. I doubt they would ever do it, but maybe the guys at Easel could.
I will also say now that I am a relatively new Linux user, but have had casual experience over years with several flavors of unix. I have also used DOS, Macs, Windows and OS/2. If anyone is getting ideas that Gnome or KDE is the best there is - then you need to get out more. Oh sure, they may spank the Windows GUI in most areas, but they are almost just as shallow. I think there are far too many efforts to put makeup on Linux and not enough on making it truly sexy.
Ryan Gray
The web is the ultimate example. It offers a few basic paradigms (clicking on links, typing in forms, etc.) but like a widget set, the actual design is up to the creators. Would the web be easier to use if all web pages followed a consistant layout - with no weight given to the page's actual use or content? For example, Slashdot has a decent UI for its function, and Amazon also has a good UI for its function, but can you think of a single layout that would accomplish both functions consistantly across both sites? I think enforcing such a layout would be harmful to both sites, and ultimately counterproductive.
The most important thing is for applications to accomplish their function. A GUI's purpose is to aid the user in accomplishing that goal. A single program should be expected to be consistant for its purpose - thus improving ease-of-use - but to needlessly assign a generic GUI to all programs for the sake of ease-of-use over function will improve neither.
Ita erat quando hic adveni.
In the free software world, change is more incremental. 1994 versions of Linux can run the latest software. Utilities in the operating system allow access to the latest file formats. And above all, if your mum did need a new version of Linux, perhaps to use that new printer she just bought, she could get it for free.
One OS is a ticking timebomb for the end user. The other will remain viable for years.
perl -e 'fork||print for split//,"hahahaha"'
What we are talking about here is more fundamental. Continuing your airplane analogy imagine the shit we would be in if manufacturers decided to call their parts different names. Say one decides that the new name for the flaps is 'rudder' and vice versa. The confusion would be disastrous.
The same problem hits linux GUIs. In windows most applications have an exit option. In linux it may be quit or exit depending on who wrote the software. It may or may not have a shortcut key and the shortcut if it's there it will be different on each package. It's not good to force everyone to use the same level of software but the common interface would do a world of good.
The article features that old anti-UNIX argument again: that it's design hasn't changed for so many years (and therefor is outdated - that's what these people usually want to suggest).
The Windows design is still changing - in a desperate attempt to bring the virtues that UNIX has featured for a long time to Windows.
The MacOS design is currently being completely revised to be based on - UNIX!!!!
IMHO, the reason why UNIX isn't changing much anymore is that it does all the things it's supposed to do very well.
Just like sharks - biologists say they've hardly evolved for millions of years now - because they fill their biological niche perfectly, there's nothing to be improved anymore!
What was that clever sig again?
"Those who don't understand UNIX are condemned to reinvent it - poorly!"
(or something along these lines
"We won't use guns, we won't use bombs, we'll use the one thing we've got more of and that's our minds" - Pulp
OK, here's a concept...
;)
;)
*nix's gui is already based on a series of levels.
(For example, there's the kernel at the lowest end, then the console (text mode) above that, then X Windows to provide GUI facilities, then the WM to provide applaunching and window control facilities, etc...)
Why not expand on that? Have a series of UI levels such that a beginner can have all the glitz and candy-coated lead-me-by-the-hand features, but an advanced user can strip all that crap away and just run what they need to.
For example, starting the abstraction at the X Windows layer, top-down since it's easier to type it that way
- X Windows (XFree or some other)
- Font Smoothing (We NEED antialiasing - but let it be disable-able for speed if necessary)
- User-Selectable GUI set (KDE, Gnome, None, etc...)
- User-Selectable WM (possibly specified by the GUI set in the case of KDE/Gnome, but user-overridable)
- Apps (Again, may or may not require specific GUI sets or WMs)
Most of this is possible now, but the projects are in their infancy. The major addition is font antialiasing - which would go a LONG way towards making X a bit nicer to look at.
Allowing the user to select whether or not to use a GUI set, such as Gnome, KDE, or whatnot will allow the user to get rid of glitzy features they don't want/need while allowing the beginner to have the crutch they need in order to feel comfortable.
Allowing the GUI set to specify higher-level GUI elements (such as WMs and apps) lets these projects define their "standard" interface without infringing on the freedoms already present for advanced users.
An effort should still be made to keep most apps from relying on a specific GUI set or WM - for example, Gimp should still be able to rely on GTK, but shouldn't require that the user be running Gnome and Enlightenment (that would suck for people on low-end systems).
One last thing - NEVER remove the ability to get to a command line. Properly used, the cl is a faster, more powerful way of getting many things done. It may not be as intuitive as "drag n drop" for file management, but it's a LOT easier to type 'pine' 'emacs' or 'vi' than it is to move my hands from the keyboard to the mouse, navigate through 5 levels of nested menus, click, then move my hands back to the keyboard.
OK, this is getting a bit long, I'll shut up now
Where's the cut and paste?
/real/ user interface.
Funny, I had to cut and paste that quote... Cut and paste in X works better then in any other system I have used just because all you have to do is block, and middle click, no keyboard shortcuts needed, no menus.
Where's the colorspace management?
Who cares about colorspace management? I dont. Color displays correctly, thats all I care about.
Where's the font handling?
Thats something else X does better then Windows or MacOS, it allows you to use different font engine servers, over a network even.
Where's the vectorized graphics engine?
Yeah, where is it? I dont see that anywhere else either, is it really important? It isnt to me...
Where's the unified print/display model?
Its called PostScript....
X does one thing well: open terminals on remote machines. That the GNOME/KDE folks have built something that implements about 10% of a modern GUI is commendable. Themable window managers, however, are not a replacement for usable ones.
They seem quite usable to me and many other people, who are you to say they aren't?
You're right about Mac OS X for Intel, though, which is a shame; the current DP runs like a champ and shows what a modern Unix can do when connected to a
Hrmm, but its themeable, right? So by your definition, themable == unusable.
-- iCEBaLM
Isn't *STEP supposed to be a standard framework of some kind?
Daniel
Hurry up and jump on the individualist bandwagon!
It's not a matter of how to make a universal GUI/API, it's just a matter of enforcing it. Windows has a standard API built in, and it'll be pretty damn hard to get people to user your own. In Linux you have Motif, Forms, GTK, QT, etc. etc. And all of those are suposed to be a "universal GUI," but not every program uses just one of those. People will not spring for a standard GUI interface unless it can be {skinned, colorized, easy to program, and backward headerfiles (motif.h would be full of macros to stdgui.h, like certain ncurses headers)} If all this happened, then I could see a universal API coming into shape. Until then, put up w/ what you got.
:wq! DOH!
Roy Miller
--Roy
I think that you completely misunderstand what it means to be an administrator.
An administrator's job is never done. There's the 'sheet metal work' of physically maintaining plant, there's keeping up with the hundreds of new security threats from malicious code to securing physical plant, there's account management and if you get very, very good at all of the above you get to do your real job of finding out what your users want and modifying your systems to achieve it better/faster with a positive effect on the organization's bottom line.
The last job is the most important and the least done because idiot programmers (most of whom cannot even spell buffoon) steal away our time, forcing us to deal with cryptic user interfaces to do the monkey work. If it's a simple and standard task I don't want to have to devote a lot of brain power to it and a GUI helps there. If I'm doing something complex or unique I want the freedom to go behind the GUI to a CLI (which is where Apple, until Mac OS X, fell down on the job).
I want to have the time to rally the users and get buy in for an enterprise directory. I want to set up a deployment of X.509 certificates and maybe even Kerberos security. I want to be able to do these things and many more and I need every scrap of time I can wring out from the day to day routine. A well designed UI helps. User hostile UI is just offensive.
DB
First of all, no self respecting unix user throws a bunch of random files (especially with no filename similarity) in a random directory. That is a pretty windows'ish way to do things. My file system is very hierarchical and orderly. So your question is biased.
/long/path/to/newdir
/long/path/to/newdir
/l[tab]/p[tab]/to/n[tab]
But here's an answer anyway.
First off, you should know, you don't have to do mv 15 times. You can:
mv file1 file2 file3 file4
As long as the last argment is a directory, it knows to move all of the files to it. So that cuts the work to 1/15 of what you suggest.
Secondly, depending on the contents of the directory, use tab completion (since we stated earlier we are using bash). That allows you to type as little as the first letter of the file, then hit tab, and it completes the filename (and adds a space at the end) for you. Obviously, if they all begin with the same few letters, you will have to type those letters, plus one that is unique to the file (but since you said there was no name similarity, you can get away with just the first letter or so).
So, if the files you want to move are:
abracadabra_MagicSpell.txt
Big_bad_wolf.JPG
catInTheHat.pdf
etc...
So what you actually type becomes:
mv[space]a[tab]B[tab]c[tab](etc...)
Tab completion also goes for the path to the directory. (Again, how much you type is dependent on the directories parallel to the directory being tab completed).
So it could then be:
mv[space]a[tab]B[tab]c[tab](etc...)
And that to me is much less work. Plus, I never even have to move my hands away from the keyboard to use the mouse.
But I wouldn't have gotten in to this situation in the first place.
Now for a counter point:
Try this in windows:
for i in *; do sed '/ba*r/ d' $i > $i.revised ; done
This is a really simple example, but would be pretty hard to do in windows. For every file in the current directory, it removes any lines that contain the character 'b', followed by any number of the character 'a' (including zero), followed by the character 'r', and names the new file with the name of the old file plus '.revised'. (Change the regexp to suit your needs, of course).
You could use something similar to remove all of the lines that contain some pattern you don't like from a bunch of e-mails. Or something similar to strip comments out of source, or uninteresting lines out of a log file, or whatever. In windows, you'd have to:
Start up some word processor (probably Word),
wait,
wait,
wait,
wait,
wait,
wait,
wait,
wait,
Finaly word starts,
open every file,
manualy do your editing (unless Word now supports regexp's. Wouldn't that be nice?),
manualy 'Save As' every file to the new file name.
But then again, that is probably a biased challange. As a windows user you may never need to do anything like that at all.
Conclusion:
You're GUI may do what you need it to do, but I find it horribly lacking when I need to get real work done.
This is why you will never eliminate the command line. Ever.
(Sorry for the long post.)
This sig is false.
An, er, interesting solution is Calmira. It's a Win95 lookalike shell for Windows 3.1x. And it runs under Wine.
So you can use it for the Explorer-a-like file manager, under Linux. Twisted, but it did work last time I tried.
-- Ed Avis ed@membled.com
It's that the GUI, any GUI, has to have a standard metaphor that works across all programs. We have long since diverged from a standard metaphor from the first days of the Mac desktop. The metaphor was supposed to be pieces of paper that you push around on a desk... and which also have buttons and knobs and levers and sliders on them?? Is it any wonder your mother is confused? The mouse, which is supposed to be a metaphor for your hand, alternately becomes a metaphor for a pencil (word processor) a finger (the frame of the "window" - another blown metaphor), a volume control knob (don't even get me started on the windows 2000 cd player), and half a dozen other things.
GUI designers no longer understand the simple concept: one metaphor = no confusion. Human beings are designed to recognize patterns, but there's no single pattern in the modern GUI. If you make your GUI desktop a million different metaphors, it doesn't matter how pretty it is or how much command-line complexity it hides - if the human being who's never seen it before can't quickly extract the pattern, the metaphor, from it - you blew it. Compared to a "Windowing" GUI, the command line is easy to understand because it's like speaking orders to a butler. Do this, do that. It's a single, unified metaphor. It's hard to remember what all the commands are, though, and for some tasks it takes longer, which is why we need a GUI in the first place - but no one fails to understand within the first few seconds what the PURPOSE of a command line is.
Look at your desktop - your real, physical desktop. Are there any icons on it? Is there a menu at the top of that fax you're holding? OK, there may well be a volume control knob on your desktop (presumably attached to some sort of sound system), but there sure as hell ain't no button to make that pile of papers disappear.
KDE and Gnome are doing a fine job of emulating, and in many ways improving on the current fundamentally-flawed GUI framework as manifested by Micros~1 and Apple (the most grievous exception being performance). They can still make more of a dent in the Linux learning curve, though, if they do two things:
* BTW, this does not contradict what I was saying earlier about the problems with the metaphor of the mouse. If the mouse has to become a million different things - and, unless we scrap the whole GUI framework and start from scratch, it does - then it had damn well better let the user know what the metaphor is at this moment.
It's rare that you're presented with a knob whose only two positions are Make History and Flee Your Glorious Destiny.
The OPENSTEP API also addresses problems still facing GNOME and KDE, such as cut & paste, and the hideous font support inherited from X, among other things. While X's selection-based clipboard system is great for text, it makes no attempt to handle any other content, like images, sound, or formatted text. I don't know how GNOME/KDE apps handle this, but many aps have a private 'clipboard' which only functions within that program, preventing, say, cutting an image from the GIMP and pasting it into a WordPerfect document. The pasteboard in OPENSTEP, IIRC, provides a MIME-type-based board which all other OPENSTEP apps can access.
Also, the Display PostScript (DPS) system which OPENSTEP is built on makes sophisticated graphics output simple to implement, and also provides consistency between what comes out of the printer and what shows up on the screen (WYSIWYG ;-). On most Unices, a completely different font set is available for X programs than there is for the PostScript engine (be it GhostScript, DPS, or a printer), so it is difficult to get real WYSIWYG apps under normal X. Also, antialiasing could concievably be built into the DPS engine, and with all the OPENSTEP apps using DPS, you could get a very nice display.
When GNUstep shapes up to be a full OPENSTEP implementation, it will provide an elegant basis for both application users and developers. With Linux being the buzzword it is now, developers will probably move to the OPENSTEP API when they find they can produce the same program for both MacOS X, which is shaping up to be a big consumer OS, and Linux, which wants to be the same.
-Joe
Like MySQL? I've got so many mp3's I had to start a database for them, and run queries on the database to generate a quick playlist.
Just a thought.
This sig is false.
Its silly to say that most non-technical users let somebody configure their computer for them. Not everyone has their own personal IT staff. In my experiance, the majority of homes users are at the point that they can understand right clicking on the desktop, hitting display configuration, and changing their resolution, wallpaper, etc from there. They can also install hardware, because they can plug it in, turn on the computer, and follow the instructions from the plug and play installer. Some more advanced users (ie. teenagers) can even download drivers and stuff. Of course, even at the skill level (considered an intermediate Windows user) they still can't figure out how to change their mouse cursor in X. You know why? Because it is in some stupid CLI app called xsetroot. What was the person who wrote that thinking? Why the hell is all the X configuration stuff in CLI apps? Do you want to be able to change your mouse cursor from the CLI? And don't tell me its for flexibility, in windows, I can have an app give me a random cursor everytime I boot up! KDE and GNOME have put some of the basic configuration stuff into their control panels, but its still ridiculous what one has to do to get stuff configured. I have a pretty vanilla system, TNT graphics, AWE64 soundcard. Yet, to get the TNT working, I had to run the command line app, xconfigurator, which asked my what resolutions I wanted to enable? Hello! Why can every other OS on the planet figure it out themselves, yet Linux can't! To get my soundcard working was even more of a chore. I had to use sndconfig, (which isn't run automatically) and even though its plug and play, I had to give it IRQs and DMAs. And I don't see it getting any better, unless some infrastructure is put in to make some CONSISTANT (I know Linux users hate that word) hardware installation schemes. BeOS is at the point that where it can dynamicly detect anything plugged into a PCI, ISA, or USB slot/port, and install the driver. If the driver is on a floppy, then all you have to do it copy into the driver directory. Voila, consistant, easy, and about as flexible as you can get.
A deep unwavering belief is a sure sign you're missing something...
I realized how many times I had to do tech support for family.
I understand this, but think of how much MORE you will have to do for linux. Sure it's more stable, but it's a whole new paradigm (I love that word) for them. Everything they know about computers changes. Actually, for user friendly needs, you can't beat a mac. That is what I recomend.
Finkployd
Is there a "standard user"?
Until he or she exists any interface will be friendly to some users and (very) hostile to other users.
Now who are these people, did they find them in a dumpster outside of Transmeta?
Chris Hagar
"The price of freedom is eternal vigilance." - Thomas Jefferson
Although Linux already has a pair of evolving GUIs -- KDE and Gnome -- neither is anywhere near as easy to set up and use as the Mac OS or Windows. Indeed, users must occasionally resort to typing commands into a command-line interface.
No mention of "neither [KDE or GNOME] has a graphical file manager." They must have changed it. However, it's still wrong, both KDE and GNOME can come preconfigured with no setup required. If anyone wants to configure them, it's no harder than to configure Windows.
Chris Hagar
"The price of freedom is eternal vigilance." - Thomas Jefferson
Where Real Men use vi to manually edit all the text files.
Where Modern Administrators point'n'drool their way through menus, searching for the configuration.
These are the commonly-perceived stereotypes, and, too often, represent peoples' attitudes, whether pro or con.
Unfortunately, by focusing on this particular dichotomy, people miss the mark, in that neither approach is particularly manageable. Moreover, by thinking they are the only alternatives, people miss the directions for true improvement.
- There's a place for having a centralized "registry" of access methods to access configuration information.
- Automation means You don't have to touch it again.
The correct fork to take is not to have 'friendlier versions of Linuxconf;' it is to have more tools like cfengine that represent more permanent solutions to configuration problems.It may be true that:
That doesn't mean that there wouldn't be value to building up a hierarchical "tree" that knows how to look up configuration information. The data can sit where it is now; the "tree" is useful for providng the administrator with a comprehensive way of getting at it.
Configuration work that the system does for you is the true labour savings; if the system cleans up after itself, and I don't have to do it, that is an automated system.
I'm glad to drop in an extra cfengine rule into /etc/cfengine and have the system do more work for me.
If you're not part of the solution, you're part of the precipitate.
I think this (someone always inventing the wheel in their own way) is a side-effect of open source and I don't really see it going away, ever. I mean, if you're looking at the code and you understand what you see, you could have done it yourself given the time most likely. When you want to go about and do it you usually don't just think about extending the standard, you think about how the standard could have been done better, and you probably hit on an idea or two you really want in there, but those are major changes, so why not just make your own? This happens a LOT, mostly because the programmers who help in open source projects are, well, progammers. They're not users that suggest feature upgrades, they write them, and they usually figure a way to improve/change the underlying structure of the program so they start over, not out of competition (you're not getting paid, what would you be competing for? Fame at best) but simply because you CAN!
I don't think theres anything particularly wrong with this, but I don't see any great point in making Linux easy enough for Grandma... I think the greatest possible evolution for Linux would be to evolve into a high-class OS. This is going to be hard without a high price, but make it seem like the OS used by big-wigs and hard-hitters in the computing industry. Clean lines and powerful simplicity... but this might require changing the publics attitude towards computer geeks since they're usually not viewed as the type to sit around a fire and swirl cognac while smoking a fine cigar...
Esperandi
To me, this is a weakness; what if you want to paste over a selection? Whoops, there goes my previous selection. What if you don't want to move your fingers off the keyboard? Tough. That's bad design.
If you want to paste over then you select it, delete it, select what you want to paste in, and paste it in... If you don't want to move your fingers off the keyboard you stay in the CLI, because pointing devices are quite standard in GUI's.
And those fonts are still 1 bit deep. Where's the antialiasing?
FreeType supports antialiasing...
Next has been implemented on DPS since day one. Maybe you like bitmaps. That's still no excuse not to use a modern architecture for your drawing engine.
Well there doesnt seem to be any reason to "update" it, because that really isnt broke, so why fix a problem that isnt there?
-- iCEBaLM
Or, if the X application is cooperative, you select what you want to cut/copy, do a cut/copy, select what you want to paste it over, and to a paste. The belief of some to the contrary, paste-current-selection is not all there necessarily is to text copying in X....
Only if your GUI's keyboard-drivability is inadequate. I like it when the GUI is keyboard-drivable - if I can dismiss a dialog box by hitting the Esc key, it's quite convenient, and I can usually do that in Windows and can often do it in UNIX/X.
...but you need more than just FreeType supporting it - you also need X supporting it, and, no, connecting X to a FreeType-based font server is not sufficient to magically make X do anti-aliasing; anti-aliasing requires multiple colors, and, unless I've misremembered, an X graphics context contains only a foreground and a background color - you'd either have to have the additional colors automatically allocated from the colormap (which might break applications), or have the toolkit that's doing anti-aliased drawing allocate the colors itself and tell the X server what colors to use (which requires an X protocol extension).
X11 uses PostScript for its display model? News to me....
(X11 with Display PostScript does, but that's another matter.)
The Xerox Star came out in 1981; it had a desktop metaphor. The Apple Lisa came out in 1983.
What do you mean by running GNOME or KDE ? It's true that you need the shared libraries installed. To run Motif apps, you need Motif installed, to run Tk apps, you need Tk installed. To run KDE/QT apps, you need the KDE API ( kdelibs and kdesupport ) and QT installed. You do not need to run a KDE/GNOME panel/window manager etc.
There must be a root menu in the lower left corner There must be a task list along the bottom edge of the screen There must be an X in the upper right to close the window
No. You are confusing the desktop environment itself with the APIs. KDE/GNOME are two things. They are a set of APIs and they are "desktop environments". Running KDE/GNOME apps requires only that you have those APIs installed.
Well, that's really nice. Unfortunately, it's also not terribly useful until X ( in particular the X font server ) supports antialiasing, because most GUI toolkits use a font model that sits on top of the X11 font APIs.
Well there doesnt seem to be any reason to "update" it, because that really isnt broke, so why fix a problem that isnt there?
It's a good thing other Linux developers don't have your attitude otherwise we'd still be in caves. X certainly could use DPS ( which is fortunately being added, probably much to your disgust )
True.
False. On the home page of XFree86, it says:
Note, for example, that the list of systems on which XFree86 has been tested in the XFree86 3.3.6 README includes "Linux (Intel x86, DEC Alpha/AXP and m68k)" (emphasis mine).
Wierd people like graphics professionals
I dont. Color displays correctly, thats all I care about.
Just because you don't use it or don't understand why it's useful does not mean that others can't/wont benefit from it.
Thats something else X does better then Windows or MacOS, it allows you to use different font engine servers, over a network even.
Oh my oh my, this is a stunningly ignorant comment. The advantage of font management under MacOS and Windows, that you seem unable to grok, is the fact that WYSIWYG printing is actually possible. That is, if you can display a font, you can also print it with the same methods. This is simply not true on Linux. ( QT tries to do this, but unsuccesfully. It tries to guess printer font names from the screen font names, but this is very hit and miss, and requires the user to configure their ghostscript fontmap or their printer / PPD ) In general, you cannot print fonts for a few reasons -- some of the fonts are bitmaps, which cannot be scaled to printer resolutions. There are more problems though -- X does not give the developer a way of retrieving outline files and metrics for the fonts. By the time font data reaches the X client, its already simply bitmap data. This means that there is no way for a developer to print screen fonts reliably. In case it's not blatantly obvious at this stage, let me inform you that this means that in general, WYSIWYG printing is nontrivial and involves a lot of ugly kludges. Applixware, Star Office, and Abiword all resort to ugly kludges to handle fonts. It appears that Koffice, which seems to use QTs font handling functions simply cannot print reliably.
Where's the unified print/display model? Its called PostScript....
No, this is not built into the display, at least not in older XFree86 releases. Consequently, it's not built into the toolkits. You've obviously never tried to program any WYSIWYG apps, because if you did, you'd understand how trivial WYSIWYG printing isn't. Tell me this -- how do you write a program, using just the X APIs, that displays a font, and prints that same font ? Once you can do this, you can come back and talk to us about "unified print/display models".
They seem quite usable to me and many other people, who are you to say they aren't?
Again this stupid and childish attitude. You're telling users that if they want these features, they're idiots and they should go away. But who are you to say this ? Are you a developer ? ( it doesn't sound like you understand any of the issues regarding developing GUI apps on UNIX, quite frankly )
The calls aren't what matters for drag-and-drop; the underlying protocol is what matters. GTK+ 1.2 and Qt 2.0 both use the Xdnd protocol, and other toolkits do so or will do so as well; hopefully this will make it more likely that you can drag and drop stuff between applications. (Current versions of KDE use Qt 1.x, which doesn't use Xdnd; you'll probably have to wait for KDE 2.0 to drag/drop songs from KFM to Xmms.)
As for Netscape, it currently uses Motif; GTK+ 1.2[.x] also supports the Motif drag-and-drop protocol, but other toolkits don't, so, unfortunately, that doesn't work as well as it should. Hopefully more toolkits will also add support for the Motif protocol, if possible (so that applications using Motif and applications not using Motif can mutually drag-and-drop; no, putting Xdnd support into Lesstif, even if that's possible, won't necessarily help, as you may have to deal with statically-linked binaries for non-open-source applications, or with applications dynamically linked with Motif 2.x).
It's not necessary to standardize the object model in order to solve the drag-and-drop problem, but the lack of a standard object model might be an issue if you want to mix KDE and GNOME stuff, as KDE and GNOME have different object models - you probably won't be able to use a GNOME (Bonobo) object inside Konqueror (the KDE 2.0 file manager) or use a KDE object inside Nautilus.
I also suspect that you're not likely to see them agree on an object model any time soon, necessary though doing so might be.
(I'm saying nothing about whether people should standardize. I'm just saying that I suspect they won't standardize the desktop object model any time soon.)
of the Unices' GUI is also a very glaring weakness. X is a great system when you want to allow people terminal access to a machine with some pictures. X isn't the best program in the world for personal systems though. For starters it can be a big security risk even if you know how to configure it. Second of all it has no intrinsic configuration or control and lacks "user friendly" features. If you look at Explorer for Windows it is a WM, DE and windoing system all rolled into one. This many people would argue is a bad thing but for users who don't enjoy 3 hours of configuration and bad suncing problems it is handy. I think X could be supplimented by a non-networked GUI that had window managers and desktop environments installed as modules on top of the base GUI. A modular system would allow for customization but being a single program it would't have undue complexity that people have to deal with. It's difficult explain to someone the concept of an X server and X client. X also suffers from obfuscation, people can use it for years without knowing all the configuration utilities for it. All aspects of the program should be configurable from a SINGLE utility, not 400.
I'm a loner Dottie, a Rebel.