GNOME Foundation, UI And Linux 107
David Huff writes: "Stephan Somogyi of ZDNews has written an article with an excellent take on the GNOME Foundation announcement entitled GNOME on the range " It's nice to a read a story that's focusing on the important part of the future of Linux UI (end user experience, consistency) and not the semi-annual GNOME/KDE resurging rash.
Re:This is what KDE 2's XMLGUI is all about (Score:1)
I've been looking for references to something like this, do you have any? 'twould be greatly appreciated.
Re:Wrong-headed thinking (Score:2)
I agree. The Windows interface isn't actually very good (which is why it's such a shame that it is being copied, but that's another topic). People use Windows because of Microsoft Office, Internet Explorer, all those programs you see on the shelf at CompUSA, and because enterprise applications created with the likes of Visual Basic (don't laugh, custom applications are a bigger cut of the software pie than most people realize).
The Windows interface is downright goofy in many ways. You have to choose what size database to build when you choose the Help topic from most program? And all those crazy dialogs with a dozen different panels of options--ugh. Has no one ever read a book on human-computer interaction?
Re:This is what KDE 2's XMLGUI is all about (Score:2)
KDE _already_ has style guidelines (and I'm sure GNOME probably does as well) - but getting apps written to follow those guidelines is unsexy and something I think most free software authors don't care for that much.
What XMLGUI does is it frees the author from having to think that hard about it - simply by using it in your app to create an interface, that interface becomes KDE styleguide-compliant.
The fact that it's customizable is, whilst cool and potentially useful, irrelevant to this article...
Re: missing the point... (Score:1)
Personally I think it's the author that's missing the whole point of open source development. Hackers code for Linux, not because they are getting paid, not because of the dental plan offered by Redhat or Helixcode; they write a mp3 player because they need it on Linux. Because they use it every day. Why was DeCSS written? Because we want to watch DVD on Linux too. Not because we want to piss off DVD-CCA and the MPAA(that's a bonus ;), not because we are expecting DeCSS to be famous so Jon Johassen or whoever can make millions, but because we use it, as users. And frankly I like that about the open source world. "Feature"-bloated but useless software are not there because they were never written in the first place. We write what we need. Not for some "hypothetical Linux Desktop Users Of The Future", whoever they might be so we can be the "dominating desktop" like Windows? No thanks, Helixcode or Eazel or the next company that's out to capitalize on Linux can do whatever the hell they want, I have absolutely no problem with that. But I want my "desktop" computer be for me, with software and GUIs I need, not another Office Assistant called Bob.
Re:Wrong-headed thinking (Score:3)
Re:Another improvement necessary for Linux. (Score:2)
Re:The problem isn't the "competition." (Score:3)
B) Competition is good. However, there is a difference between competition and infighting. The current situation here between GNOME and KDE is infighting, not healthy competition. The problem is that they aren't binary compatible. You suggest to stop fighting and write code. For which DE? If KDE and GNOME want to make a better product, they have to adopt a common API, and let the competition be in terms of features, quality, stability, speed, usability, and all that good stuff, instead of on which environment has more software support.
C) A common API guarentees that they will both stay "alive." People seem to have this notion that OSS projects can't die. That may be true, but they sure as hell can become totally irrelevant. No offence to the GNUStep guys, but can you consider that project "alive?" A common API can do wonders for an OSS project. The reason GNUStep is more or less irrelevant is because there really isn't any software. Since an OSS app can't really "die" per se, a common API guarentees that no matter how much more popular one DE becomes, others can always overhual there's and make a comeback. In the end, the user benifets because they use whatever product they feel is best without bloating up their system, and without being enslaved to the wishes of software developers.
In the current state of things, one DE will undoubtedly win. That's the dynamics of proprietory APIs. Do you really think OS/2 would be totally irrelevant if it was Windows95 ABI compatible? On the flip-side, do you think NetBSD or OpenBSD would be used by anyone if it wasn't UNIX-API compatible?
Re:This is what KDE 2's XMLGUI is all about (Score:2)
Re: missing the point... (Score:1)
Is it Emacs or KDE you're meaning?
> are not there because they were never writeen in the first place
What planet have *you* been living on?
Re:The next step for Linux (Score:2)
Re:Another improvement necessary for Linux. (Score:2)
Re:Gnustep is far from dead (Score:1)
This month it's GNOME and KDE, next month it'll be something else. What's important is to pick the good stuff out from the incidentals, copy it and adapt it to your environment, the strength of OSS is that you have the freedom to do that.
User Interface is a much deeper topic than most people seem to realize, it's much more than the buttons and other widgets that show up on the screen, it's the concepts and constructs with which one deals with the tasks at hand. This is why windows has lost much of the developer community to the various *nices, the concepts that windows is optimised for are those of business, in which appearance counts and profitability comes first. Unix was built by programmers for programmers and exposes concepts appropriate for those users.
User environments must be built by those who have a strong and intimate knowledge of the concepts used by the community in question. There is no one size fits all answer.
Re:If you agree then... (Score:2)
Re:Wrong-headed thinking (Score:1)
Losing the interfaces (Score:1)
And in the Linux camp, KDE is still trying to mimic Windows desktop. And GNOME is so absorbed on the wonders of OO that forget to advance GUI.
GNOME is the greatest desktop environment Linxu has. GNOME does much, and can do wonders. Nautilus proves that. But needs to focus a bit more on its GUI.
Room for improvement on Mac and Windows interfaces (Score:1)
Beat to the punch... (Score:1)
Re:already ahead of you (Score:1)
--
Re:Don't Normalise Me! (Score:1)
Linux apps are highly inconsistant, not with MS, but with each other. This has nothing to do with acting differently to Windows - Macs act very differently to windows yet nobody complains about their lack of consistancy.
The computer is nothing more than a tool for various jobs, it's not a god, it's not a way of life, people want to do the job, they don't want to waste time learning to use the tool yet again because it doesn't work the way the rest of linux was working - that's a completly unneccessary waste of time.
You also seem to be on some sort of high horse about users having to think to use the computer, instead of using a system so sensible they don't have to. That to me seems as unneccessary and daft as advocating a return to double-declutching to change gear. I've got better things to think about.
Years ago, a Mac person told me the interface was the most important part of an application, and should be the first part designed. I was a CLI weenie back then and thought this was a complete load of bollox. It's only taken me 6 years to realize he was correct and the user interface really is the most important part of an application.
Given a choice between a computer that crashes occassionally but is easy to use, and a stable computer that is hard to get anything done in, people always choose the one they can actually get something done on, it's not just lazyness, it's a sensible choice.
I can't help but get the impression you want to be some 1337 hax0r dude because you can use a system that requires thinking and isn't easy to learn. What does giving the system to the lowest common denominator mean? What do you lose if linux has a consistent UI that fails to suck? You've still got a command line and you can still run whatever archaic software takes your fancy.
Miguel... (Score:1)
Re:Wrong-headed thinking (Score:1)
Re:The problem isn't the "competition." (Score:1)
which both only meet or fall short of the decade-old Mac and windows interfaces.
Most of your post was good, but there's a couple of problems here. First, that's a matter of personal opinion. I happen to like the flexibiltiy of the GNOME panels much better than anything Windows lets me do. Sure, the filemanager and other associated programs can still use some work, but those are being worked on.
Secondly, I don't think there really is a Windows interface, as such. Yes, all the programs look basically the same, but each one does things (to some degree or another) differently from the others. There's the standard widget set, but widgets are only a small part of the interface.
-RickHunter
Here's one (Score:1)
-----------
Re:This *is* an Open Source problem (Score:1)
I am not convinced that it would make sense or be beneficial to simly "layer the UI on top" of existing code, because that would only lead to a frontend as opposed to a GUI. The difference (in my opinion, anyway) is that the frontend strictly follows the logic of the underlying programs, while the GUI offers more value in that it hides some of the complexity and basic mechanisms from the user, and provides a different, more human-friendly view on the system.
One user's experience (Score:5)
When the technical staff convinced me to transition our shop from NT to Linux about two years ago, I had to begin learning Linux. As I said above, I'm not a programmer or a geek -- simply one of those (either despised or desired) "regular users" that Linux advocates (either regard as unimportant or want to assimilate).
So, my first experiences were with command line and AfterStep (which I found difficult to use) but then quickly moved to the emerging KDE and GNOME environments. GNOME, more than anything else, let me make the transition from Windows user to full-time Linux desktop user. I picked up enough along the way to prefer command-line to file manager, but -- since my orientation is not server management but is, indeed, paperwork, planning, project management, etc. -- the GUI is what lets me get my work done. Without GNOME (or KDE) I wouldn't be using Linux full time.
As a "desktop user" I see things a little differently: I need a better browser and a much better e-mail client. WordPerfect meets my "office" needs (although I see instabilities in Wine [we joke: "Corel WordPerfect . . . bringing the instability of Windows to the Linux desktop"]).
I think it's a matter of focus. Commercial operations that want the desktop users for Linux should pursue initiatives like the GNOME Foundation and support KDE. Those who are interested in other environments should continue on the course that has produced so much.
There are a few difficulties left on the desktop, but I notice that the Windows users who see me work on my GNOME Helix desktop are already amazed and are quite intrigued. I think there's more potential for Linux on the desktop than is generally realized by either the geek community or Windows apologists. A highly functional, customizable, tool-rich desktop will first impress and then entice those users. Desktop users are just as sick of clunky Windows interfaces and instabilities as techies -- many of them just don't realize it yet.
Good point but why am I here... (Score:2)
Go look at some of the more popular websites on the net (start with MSN and then move to Yahoo! or Google). With MSN you're left wondering where exactly to look and click in order to get where you want to go. On Yahoo! and Google you only really have funtional information. Now open up a terminal and stare at it for a second. There isn't alot to the CLI is there? In order to use the computer you need to know a laundry list of sometimes rather cryptic commands. Why not be able to just type "I want to go to Yahoo!" and a browser will fire up and go to Yahoo!'s site. How come X requires so many different mouse buttons (still) in order for you to use it properly. Why do keyboard commands and mouse clicks do different things in X and apps running inside a WM? I know the technical reasons for it, I'm pretty well versed in them actually. I want to know why the interface is still like that though. The whole reason we have personal computers is because they allow us to do a large variety of tasks with a simple imput of a software program. If they are REALLY personal and easy why is there a whole industry existing just to write books on how to use computers? I think a good place to look for interface inspiration is Star Trek: The Next Generation. The computer onboard the Enterprise responded like a personal assistant and performed functions with a plain English request. Even the manual controls on the glass control panels manipulated itself around so the user of the terminal was presented with all relavant information and changed when different data presented itself. We need to start work on that.
Re:This is what KDE 2's XMLGUI is all about (Score:1)
They had that BEFORE KDE-1.0 (Score:2)
You don't have a desktop environment ontil your stile guide is in place because otherwise it's not posible to make an app without your toolkit.
Folowing the stile guide you can write a KDE application that dosn't use the KDElibs, QT or even C++.
Talk about developer choice.
Re:This *is* an Open Source problem (Score:2)
Re:Author is missing the point... (Score:3)
The Gnome User Interface Improvement Project [gnome.org]
Gnome Programming Guidelines [gnome.org]
----
The problem isn't the "competition." (Score:3)
When you have two equal options, choice is good. But when people fight over which of those choices is better, you have problems: pride, greed, and so forth. Stop trying to kill each other, pick a DE, and write code!
What I mean is that my Mac can read DOS disks, even though I don't own a MS-DOS computer. My Linux box can write Mac disks. My BSD box can send e-mail to a co-worker using Windows. (Not that Windows is a good choice). As different choices mature, they become more compatible, unless something gets in the way. There is no reason not to have two choices, as long as both work.
Once both options work, the developers of A get the great idea to make it work with B. Then B's team decides to make B work with A.
If you look, that's what's starting to happen right now, despite the fighting between some misguided individuals. KDE can use GNOME skins. We have to encourage this trend, not stop it. It's the Right Thing to do.
By the way, people say that choice confuses users. Look at the KDE panel and compare it to the GNOME panel. Both panels have a button to launch programs. Both buttons are in the same place. This isn't nearly as big of an issue as some people believe.
I like choice. I want both KDE and GNOME installed on my system, so I can use whichever I'm in the mood for when I start X. The truth is, though, I usually start EFM.
Re:This *is* an Open Source problem (Score:2)
CORBA is successful! (Score:1)
This is simple NOT true. There are lots of software projects using CORBA, mostly closed source of course. GNOME might be the largest OPEN SOURCE software project using CORBA to date but AFAIK Bonobo still has to proove itself.
See http://www.corba.org/success.htm [corba.org] for some success stories.
Re:I use gnome .... (Score:2)
Say you do fork the kernel... The only person using it will be you, unless you come up with some dandy features that will wow the rest of the linux community.
Only thing is, it's a bit of a catch 22. Your changes are GPLed as well due to the way the GPL works. If the features are so good that you can pull the linux community from the official release of the kernel, you can bet your ass the changes will be migrated into the official version.
Re:Gnustep is far from dead (Score:2)
OS/2, for example, is irrelevant. If IBM drops OS/2 right now, only a handful of people will be affected. QuickDraw3D is irrelvant since it has no future. One can make an OS now that has no QuickDraw3D. The same cannot be said for something relevant like OpenGL. Even major players like IBM's POWER3 are irrelvant largely because their sucess or failure doesn't (even indirectly) effect the general computing public. A common theme here is that things that are relevant are NOT just fads. Windows is relevant, and has been for years, and it will be for years. Similarly, Linux will be relevant for years, as will OpenGL, Direct3D, et al.
Relvance is a topic that depends on target market. However, that target market vaires widely in size. If one is talking about the high end computing market, then POWER3 is suddenly relevant. A better example is OS/2. The comuting market as a whole considers OS/2 largely irrelevant. However, get into banking and ATMs, and OS/2 suddenly becomes relevant. In a converstation, relevance is relative to the topic of the conversation. In this conversation, the topic is GNOME. Thus, the target audiance is those people that use GNOME. Thus, relevance is judged by what is relevant or irrelvent to the majority of those people. What is GNOME's target audiance? People switching from Windows, people needing a good looking desktop, and people who need a broad range of software. To these people, GNUStep is largely irrelevant. If GNUStep falls off the face of the planet tomarrow, it wouldn't affect the majority of GNOME users.
You miss my point entirely when talking about the unfication of GNOME and KDE. I'm saying that they should use a common API. This has nothing to do with their user-interfaces, it has nothing to do the actual code powering those APIs, it has nothing to do with developers (they aren't the target market of GNOME/KDE anyway.) We're not talking about the usual UNIX contingent here. The article was about GNOME, and due to GNOME's support from HP and IBM as the next CDE, business users (for whom you say appearance and profitability come first) are EXACTLY those users who we're talking about. It just happens that the same concepts apply to home users as well, and together, home and business users for the majority of KDE/GNOME target audiance. For them, my arguement applies. Either KDE or GNOME will win, and the other will become irrelevant. Even if the other becomes very relevant in the Phython-developers segment, it won't be relevant to the business/consumer segment as a whole. A unified API prevents that kind of fall into irrelevance.
I might seem like I'm using a lot of generalizations, and groupings, and compartmentalizations here. But ask any marketing person, they'll tell you that it WORKS! No matter how individualistic a particular person is, a segment as a whole is very uniform and predictable.
Re:UIs are (not) only about "ease of use" (Score:1)
Re:Wrong-headed thinking (Score:1)
Ummm... I think you've got an invalid comparison going on here. Could you please explain what you mean by "better" programs? LICQ is, IMHO, better than ICQ because its more stable, less bloated, and more flexible.
I do admit that Linux doesn't have quite the variety of programs Windows does, but Windows has that many programs because everyone uses Windows. Also remember that the main Linux desktop environments (GNOME and KDE) are only now starting on their second major release. How many versions of Windows did it take Microsoft to get things right?
-RickHunter
Liar Liar, Pants on Fire or (-1, Clueless FUD) (Score:4)
There are a large number [corba.org] of closed source, large scale (millions of lines of code) products that use CORBA that the average sysadmin/linux hacker/whatever will never see or get to use. As an example, the company I worked at this summer (i2 technologies [i2.com] ITWO [yahoo.com]) has a been generating millions of dollars in revenue with a CORBA based Supply Chain Management application for the past couple of years.
You see Corba is broken. but only a little. In order to use it you must build something else on top that actually talks to your apps.
Isn't that what the CORBA Component Model [ddj.com] was designed to fix?
PS: I am a distributed computing junkie and am currently doing research into RMI/CORBA/DCOM and have found a bunch of interesting articles that break down these technologies for people who are wondering what exactly they are...here's an article that compares all three [execpc.com].
(-1 Troll)
Re:Wrong-headed thinking (Score:1)
----------
Jeff Croft
http://jeffcroft.com
http://industrystandard.org
http://newbeetle.org
Re:UIs are (not) only about "ease of use" (Score:2)
That is the whole point of creating User Friendly tools for Linux. After all when a Windows user needs a power tool they are stuck. It doesn't matter how much they are willing to learn their platform won't take them any farther.
Linux, on the other hand, has a platform that makes everything possible, but you have to put in the effort. Gnome and KDE are simply bridging this gap. They make the simple things easy for the novice to do, but the do not remove all of the tried and true power tools that the rest of us have grown accustomed to.
How many times has someone come up to you and said "How do you do foo?" and you have realized that under Windows the answer is "you don't." Probably about as many times as you have watched someone's eyes glaze over when you showed them some neat trick in bash or Perl.
Personally I am quite excited about Gnome (despite the fact that I use very little of its features, just like the article pointed out) simply because it will allow my Grandmother to use the same OS that I do. She still won't have any idea what a regular expression is, but when she needs to have 400 gifs changed to PNG format she won't need to open them one by one in Paint Shop Pro either. She can ask me to help and we'll have the task licked with plenty of time left for her to repay my brave deed with a batch of cinnamon rolls.
Now that is what I call progress.
We don't need "Easy to Use" Interfaces.... (Score:2)
Over time, they'll find themselves using the command line more often because it takes less time to get to than searching through a Start Menu-equivalent. Once they're at the command line, they'll want to learn how to do other things from there as well.
--
Re:Wrong-headed thinking (Score:1)
How could a PC running linux cost more than a PC running windows???
Linux costs less/next to nothing (my copy of RH6.2 cost me 80c for a blank CD), windows costs $50 (minimum, if you are not just upgrading it will cost significantly more).
If your hardware vendor refuses to sell you a machine without charging you for a windows license then your statement might actually make sense. Are you refering to total cost of ownership (TCO)? (that arguement is going to come back around and bite m$ in the ass)
One good linux admin will get your system to work right the first time and not have to constantly handhold the system and deal with crashes and lost data on a regular basis, doing it right once will save you money in the long run.
So windows has more applications, but your going to use "something office" most of the time. Is it really that wonderful to have an operating system with thousands of expensive or shareware programs you'll never use versus an operating system with hundreds of free programs you will probably never use?
Gnome foundation is insane... (Score:2)
Read this excellent essay article on OsOpinion "call for cease-fire in the KDE-Gnome war": http://osopinion.com/Opinions/GaelDuval/GaelDuval1 .html [osopinion.com]
I could only agree with that!
Re:Wrong-headed thinking (Score:1)
Apache, Gimp, and Star Office are prime examples of software that is better that runs on linux.
Try putting together a vector graphice in MS office, oh look star office can do that!
Of course if you pirate everything or reuse the one copy of office you bougth on multiple computers and "forget" to pay for programs like Winzip then windows is an easier solution.
(Linux has capitlised on its stablity, but competition has forced M$ to improve, and Win2k is quite an improvement)
By choosing windows you are limiting your choice.
People are going to switch for the various reasons, some for freedom of choice, others because they are really sick of stuff crashing, others because thats all their underfunded school could afford. Others will choose linux because it was clearly explained to them that what windows really costs (it does not come "free" with the machine you are being charged a substantial license fee*).
*how the hell does Microsoft get away with forcing people to pay for licenses even if they are buying a preinstalled linux box, or an additional harddrive?
Re:Wrong-headed thinking (Score:1)
Re:Free Software = Pompous Bores, discuss (Score:4, Informative)
by iCEBaLM [mailto] (icebalm@[NOSPAM]bigfoot.com) on Thursday August 24, @05:45PM GMT
(User #34905 Info [slashdot.org]) http://www.lucid.dyndns.org [dyndns.org]
Nobody has yet come up with an explanation of why it is that "The Community" has never, once, come up with a major original piece of work.
perl [perl.com]
Ogg Vorbis [vorbis.com]
Freenet [sourceforge.net]
DRI [sourceforge.net]
OpenAL [openal.com]
-- iCEBaLM
Re:Don't Normalise Me! (Score:1)
Re:Don't Normalise Me! (Score:1)
Sorry... I forgot to mention (Score:2)
"Evil beware: I'm armed to the teeth and packing a hampster!"
Re:UIs are (not) only about "ease of use" (Score:1)
Honestly, You should check out EMacro (linked to from the Emacro site [ikoch.de], a project that aims to provide the user with a usable first configuration, which should be "intuitive" to someone who is used to using "sane" editors (-;
Though I bet you would not give up your working emacs config if you have one, it is still worth checking out if you have not spent lots of time to configure emacs before.
--
this post was brought to you by Andreas Fuchs.
What about KDE? (Score:2)
It would be nice had the author noted the actual statements rather than just give his opinion of them. What exactly was he referring to here?
Re:Another improvement necessary for Linux. (Score:1)
It was a breeze. Insert new card. Plug in new monitor. Boot system. RPM the Xfree86 driver from my RedHat CDROM. Type in Xconfigurator at the command line. StartX. Done.
Now, granted, I'm pretty much an idjit, and had a few moments struggle to come up with the right driver off of the RedHat distribution (originally tried finding it on the 'net using lynx and just ended up frustrating myself), but it still wasn't an investment of major brainpower.
shinobi [yahoo.com]...
He forgot Helix Code. (Score:2)
Could it be the.. (Score:1)
so use Apple's (Score:3)
Why not just use their's [apple.com] ? (might as well get some use out of it, judging by the mac mouse, Apple isn't using it) Seriously, though, I agree with everything the article says. I've gotten so fed up with Gnome and KDE that I've started doing most of my work in the console.
--
Re:What about KDE? (Score:1)
But I think all this infighting between UI toolkits doesn't help a lot.
Could it be the... (Score:1)
Author is missing the point... (Score:2)
What I'm really trying to say, is they are both getting there. Mac has a 20 year history, and Windows has like a 15-year history... obviously the developers of those systems developed standards that evolved over the years. KDE And GNOME are both quickly catching up.
"Evil beware: I'm armed to the teeth and packing a hampster!"
This *is* an Open Source problem (Score:5)
I think open source is great, but it has this one very basic flaw: Geeks write programs for themselves, and hence, for geeks. And we all know that geeks don't care too much for easy-to-use interfaces, but more for powerful ones (see shells, vi, emacs, etc). So when open source people start writing programs with user interfaces, these will be very similar: powerful, but hard to use for the normal user. And inconsistent with anything the users already know (read: Windows).
Now I am not saying that Gnome (or KDE, for that matter) should copy Windows, but that it would be very beneficial if not only coders worked on such projects, but also people from GUI design (and I am sure that there are people with experience in this area reading
Now that open source is growing up (in the sense of: os software being used by non-geeks as well), this is a necessary step. And it brings world domination much closer, too
Re:What about KDE? (Score:1)
Yeah, there's got to be better things to fight about.
UIs are (not) only about "ease of use" (Score:3)
(I'm speaking about the "typical geek" here: proficient with >= 1 programming language, knows his/her way around Unix/Linux, etc)
That is right. Geeks prefer advanced, difficult, powerful user interfaces, whereas novice users prefer simple, easy, "magical" UIs. This is because geeks already know their way around. They know how things depend on each other. They have already mapped [reciprocality.org] the Interface in their brain.
Novices have not. They need to learn the UI, begin to place pieces of the map in the right places in their heads.
So, GNOME and KDE are trying to make life easier for the novice by providing them with simple user interfaces that they can use. Of course, they should be consistent. This is one of the most important points of UIs: to make life easy for the user, so that he/she can easily get acquainted with a tool.
But, what if the user already knows the tool? What if he/she has used it often and thououghly enough to have a mental map of what it does in his/her head? If this happens, most tools seem restrictive to advanced users, and therefore, when given the tools to do it, they construct these powerful, hard-to-learn environments.
But that's not the way to do it, IMHO. Instead of producing a one-size-fits-all tool, you (and you, and you) should create tools that are fit for differently experienced users to use. See UN*X, for example. It's philosophy was:
"Write programs that do one thing and do it well. Write programs to work together. Write programs that handle text streams, because that is a universal interface."
(Peter H. Salus, A quarter century of UNIX[TM])
This is a concept that is both simple and powerful. It brought forth tools like sed, grep and so on. These are extremely simple to understand, and if you understand them, they are extremely powerful. Why noone has succeeded in creating an equally powerful and simple concept in GUIs escapes me, but it's definitely time to go create one.
--
this post was brought to you by Andreas Fuchs.
Corba is over a decade OLD. Re:What about KDE? (Score:5)
Why should a technology not produce any good results for over 10 years and then suddenly become worthwhile when an open source project starts to use it ?
Not just any Open Source project either but one with lots of backing and funding from everywhere.
You see Corba is broken. but only a little. In order to use it you must build something else on top that actually talks to your apps. Gnome usees Bonobo. KDE used Kom. Despite being built on the same technology they couldn't communicate with each other. Not even when Gnome used the same ORB as KDE ( Mico ).
This is the power of the Hacker mentality at work. They took a broken twisted pile of junk and built a wonderful interface on top of that. Best of all being Corba makes it 100% buzzword compliant. Read this post [kde.org] to asses how much of a "buzzword" it is.
The next step for Linux (Score:1)
I do think the author of the original article had a point in that Linux should be focused on the higher level issues, like user interface guidelines, and all LInux programmers (including me) should be concentrating on the end user's experience with Linux and our apps. Linux has already largely conquered the server market, and is set to lay waste to the embedded space. But the toughest market of all is the desktop, since that's where things like user preferences and overall usability are far more important than purely technical areas.
Linux earned its success in the server segment and it will do so in the embedded space by proving it can carry the load reliably, cheaply, and flexibly. Now is has to prove it can be pretty, as well. That's a radically different challenge. Personally, I think Linux and the Linux programmers are up to the challenge. But in order for them to succeed, more of them will have to make pleasing the end user an explicit goal, and leave their guru-style prejudices and preferences behind.
Re:This *is* an Open Source problem (Score:1)
Some geeks care about easy-to-use interfaces very much. I do. An interface can be powerful and still easy-to-use. Making a lousy interface, because it is the only way to make it powerful is always just an excuse. Having an easy-to-use GUI does not stop you from having a command line interface for all your scripting needs.
For the GUI. Reasons for almost all open source applications having lousy GUIs seem to be: laziness, lack of understanding of the human-computer interface, and insufficient programming skills (YES!).
Laziness: Open source writers code for fun. They like to code the interesting parts of the programs. When the interesting parts are done, and the program is working, they are usually feeling pretty happy about themselves. And their interest starts to fade away. So, more boring to write parts of the program, like the GUI (requiring a lot of knit picking to make the interface a really good one), are ignored.
Lack of understanding of the human-computer interface: This one is so obvious all the way from the ground up. It's all those 1000 tiny things that would require changing. Because they are so tiny, the open source writers can easily ignore them. After all.. If it's so tiny, the users won't care.. NOT.
Insufficient programming skills: Most open source writers do their work on unices, with the unix programming paradigm: streams. When it comes to event driven programming, the skills are too often lacking. Compared to streams, event driven programs just seems much more complex. It's not too unusual to find unix programming gurus, who have never written event driven GUI programs.
I'd love to see a unix/linux become popular in the desktop field, but I can't say I am too hopeful. The open source coders are just being too proud about what they have done to see what all they have ignored. Unfortunately with GUIs you can't really do as compelling benchmarks as the Mindcraft ones. So that the open source people could shoot the benchmark down, only to notice it was right in the first place. And see.
Re:If you agree then... (Score:1)
But let me disagree with you. The only possible reason for different efforts is if the UIs are DIFFERENT. If one or the other actually explores new and advanced technologies for UIs and actually advances the state of the art, that is a justification for separate effort. If you are going to have common UI standards, then what pray tell is the point of duplicating effort?
Another improvement necessary for Linux. (Score:2)
Re:GTK question (Score:1)
Re:If you agree then... (Score:1)
KDE and GNOME can use different toolkits and be as different as they want. It's the communication interoperability that most people are complaining about. Once these standard hints( Cut&Paste. docking) were added cross-apps would be better available.
The mud slinging on both sides is pointless, and KDE has done much more in the past months. GNOME used to be my DE of choice, but with all this fighting I've given up on them both and just develop in GTK+.
Re:Good point but why am I here... (Score:2)
No one in the Unix/Linux community wants to give up the power of the command line. Given this fact, how can we interest and involve those persons skilled in the human side of GUI development, create a user-friendly interface, and still not dumb-down the strength and elegance of our OS's? Will Big Corporate intercession help to enable this?
Steve O.
Re:GTK question (Score:1)
sub { code; }
in place of where you would put \&functionname
Re:Should have a great UI. (Score:3)
I've often heard people say this, but I've never heard anyone explain why this is a good thing. Should every new model of automobile arrange the driving controls in a different way (accelerator on the dashboard, steering with your feet, etc.), rather than "copy others"? No, because the basic problem of automobile control was solved a long time ago, and there are no advantages and some serious disadvantages to creating a new user interface in every new model. There is minor variation across models, but everyone uses essentially the same solution, and with good reason.
The basic paradigm of menus, buttons, and text fields was worked out 20 years ago; it's old, but it continues to be a good solution to the problem of human/computer interaction. People admire innovation, but I see no point in throwing out a tried-and-true solution unless the replacement offers some real advantages. I have yet to see any new kind of computer interface which seems to represent a real improvement over the current situation.
I'd welcome some sort of written user-interface standards worked out by the Linux community; but I'd hope that this set of formal standards would be largely a cleaned-up, rational statement of the customary practice in the community today rather than some misguided attempt at innovation for the sake of innovation.
Gnustep is far from dead (Score:1)
The problem for many people who might otherwise be interested in it is that it depends on Objective-C which is a minority language by any standard. The good thing about Objective-C is that it's built in to most of the more recent versions of the GCC, the bad thing (to the unfamiliar) is that it's the bastard child of C and smalltalk. Myself, I find it eminently readable and robust, so I'll go on using it even if it is "totally irrelevant".
For free software it all comes down to personal preference, that's why there won't be a One True Interface ®. Now or in the future, that's not to say that certain interface idioms won't become nearly universal, or that better education and more experience won't raise people's expectations. But as long as anyone can modify or alter any aspect of their system (a good thing) and as long as the only check on releasing code is the choice of uptake on the part of the users there will be only minimal interface consistency.
This isn't a bad thing, the people who want consistent UI standards are acting as if the Free Software Movement is a unitary entity that should be acting in concert towards a defined goal. Ha.
Gnustep Links for the interested Official Gnustep site [gnustep.org]
Unofficial Gnustep Site [current.nu]
WindowMaker [windowmaker.org]
Swarm Project [swarm.org] not part of Gnustep, but an interesting use of Objective-C.
Re:Gnustep is far from dead (Score:2)
Re:The problem isn't the "competition." (Score:1)
And no mayo, of course. *spit*
A practical consideration... KDE & Gnome & ... (Score:2)
For example, pressing K...Multimedia shows a list of KDE-aware programs only. Pressing K...Gnome...Multimedia shows a list of the Gnome-aware programs only.
Why have two Multimedia menus? Why not just one?
With the merging of link formats in KDE 2.x, this problem should go away...but something makes me think there will still be a seperate Gnome menu tree. Anyone want to comment?
Can we easily end this sillyness, and focus on function not what the flavor of the program is?
Re:Wrong-headed thinking (Score:1)
Not true. There was very little that Windows 3.1 could run that OS/2 2.0 could not; in exchange, all the OS/2 and Windows 2.x apps could run only on OS/2. OS/2 *beat* Win3.1 in number, variety, and quality of apps.
No, Windows won because it was cheaper in software (OS/2 buyers also had to buy a copy of Win-OS/2) and in hardware (Windows 3.1 handled 4 MB of RAM pretty well, and was good with 8 MB -- less than 12 MB for OS/2 2.0 and you were sucking hind tit).
Steven E. Ehrbar
Re:Corba is over a decade OLD. Re:What about KDE? (Score:3)
>successful software project based on Corba ?
No more than I realize that up is down and black is white. No offence, but that comment is asinine. Do you seriously believe that there would be over 50 available ORBs for a technology that had never been used successfully?
If you'd like to see some examples of where it IS used successfully, just go to the OMG homepage and follow the links.
>Why should a technology not produce any good
>results for over 10 years and then suddenly
>become worthwhile when an open source project
>starts to use it ?
See above, CORBA is a widely deployed, industry standard technology.
The only way you would be even remotely right is if you had said that GNOME was the first successful implementation of a DESKTOP ENVIRONMENT based on CORBA, which is true. But on the other hand, to my knowledge the only effort towards that end that has failed is KDE.
>Not just any Open Source project either but one
>with lots of backing and funding from everywhere.
And this is relevant how?
>You see Corba is broken. but only a little. In
>order to use it you must build something else on
>top that actually talks to your apps. Gnome usees
>Bonobo. KDE used Kom. Despite being built on the
>same technology they couldn't communicate with
>each other. Not even when Gnome used the same ORB
>as KDE ( Mico ).
You see TCP/IP is broken, but only a little. In order to use it you must build something else on top that actually talks to your apps....
See how stupid that sounds?
>This is the power of the Hacker mentality at
>work. They took a broken twisted pile of junk and
>built a wonderful interface on top of that.
Okay, why exactly is CORBA a "broken twisted pile of junk"? Real arguments please, not complaints from KDE hackers that they couldn't make it work.
>Best of all being Corba makes it 100% buzzword
>compliant.
Well look here, we got us another completely non-techinical argument.
If you want to see a discussion about the advantages of CORBA over a proprietary solution, such as COM or Kparts, look on the KDE list around September, when the decision to drop CORBA as the embedding technology was first made. Hint - it was not universally accepted as "the right decision".
>Read this post to asses how much of a "buzzword"
>it is.
Well, nice of you to provide some arguments, even if they weren't yours. Let's take a look
>Whenever a performant and lightweight
>communication is required, shared library
>components, languange dependend and toolkit
>dependend, are chosen (in KDE).
Whenever performance and lightweight communication is required in Gnome, language and toolkit independence are still maintained by use of an ORB that allows for using a shared library approach for local objects.
>Noone is going to embed a remote spreadsheet
>document into a word document, running on a
>machine on the other side of the ocean. This is a
>nice dream and it is certainly technically
>interesting (no doubt about that), but it is not
>what the average desktop user really wants.
Maybe not across the ocean, but what about across the office, or from ASP to consumer.
Also, what do you mean by the "average desktop user"? Someone on a PC in a home or business?
What about the benefits of a network transparent component model when dealing with internet appliances or thin clients?
And note that after saying that the mythical average user doesn't want this, he immediately gives an example of where it does make sense
>Here language independence and network
>transparency have priority, no doubt. And that's
>why KDE uses DCOP (based on the standard ICE
>library)
Standard here needs to be defined as standard only on X11 implementations on MOST Unixes.
So you can forget about using this standard for interoperability with Windows, Mac, BeOS, etc. You can forget about it for handhelds. You can forget about it for alternate Unix windowing systems.
But wait, they have a solution for that as well! XML-RPC layered on top of DCOP layered on top of libICE.
Now mind you, the base XML-RPC spec is an XML description of an interface sent via HTTP. On top of that there are consideration of nameservices, authentication, encryption, interoperability (only four xml-rpc implementations have been validated as interoperable), etc, etc.
>In the Windows world Microsoft defined COM as
>standard. Who/Which/What defined CORBA as
>"standard" in the Unix world?
The 800+ membergs of OMG and all the companies that built their infrastructure on it? Like many of the standards in the Unix world, it is through industry adoption that CORBA has arisen.
Also, it is a misnomer to say that CORBA is a "Unix" standard, as it is a cross-platform, cross-language standard. It is used in a number of enterprises to tie together heterogenous environments.
In closing, get a clue. Though KDE official documentation and some of the developers like to bad mouth CORBA as a technology, it is proven, mature and widely available. And GNOME shows that it can be used as an effective foundation for a desktop.
What's a designer to do? (Score:1)
Indeed there are. But imagine yourself looking at all of this from the outside in. How does someone with a firm grasp of information-organization, communicative principles and UI psychology but no coding experience contribute? Especially since credibility in the community is based on coding chops?
Certainly, we can't take source code and make direct contributions to it in our spare time, as coders can. What, then, do you suggest? As it stands, I feel like I can contribute only to theory; I can write a paper on UI and hope people read it, and that's about it.
Point out a place to begin to contribute in practice, and I think non-coders will indeed begin to do what they can.
Re:Another improvement necessary for Linux. (Score:1)
And yes, you've highlighted the problem with auto-detection: often, it'll go wrong. This is one area where unfortunately Microsoft have the edge... for one thing, it's an area where vast financial resources help significantly. For another, hardware manufacturers are queuing up to kiss the arse of Bill Gates. Open source developers have to (for the most part) scrabble for specs and so on.
[1] Unless you want them
Re:One user's experience (Score:1)
Admittedly even though I'm not a programer I am a bit of a geek (there is a difference)
As regards the argument re MS v Linux ease of Use
This term means a multitude of things.
IMHO ease of use in Linux is better - the reason:
Linux s portrayed as havng a steep learning cuve -yes but at least it has one
In windows (inc NT) once you get past the very basic stuff, especially if you never used dos, the learnng curve is nearly vertical
In addition the learnng style of linux teaches you about the fundaentals of a subject not just what you need to know now
Overall in my experience the motto of perl is very apt "make smple things easy and difficult things possible"
Re:Another improvement necessary for Linux. (Score:1)
Re:Macintrashing of the Kde desktop (Score:1)
This was actually true, and was wrong. I didn't write the default KWin style that was in the previous beta of KDE2 and it had some flaws such as the above. I did write the one in the current beta and it can be resized anywhere of course ;-)
It also has much nicer handles, etc...
Then you get on how KDE2 looks much more like Next or WindowMaker. I don't see this at all since the design is much more like Be and Mac although I designed it from the ground up to be smooth and pretty, but whatever. Then you state: "It's a shame so much time has been wasted macintrashing the Kde desktop. At least you can use a different window manager with Kde - one that has borders around windows and more tasteful proportions. Again, the underlying graphics engine is nicer - gradations are smoother, detail is sharper, etc., so it has not been a total loss. I guess it is just up to third parties who want a different look to code different theme engines for Kde, which Kde graciously allows (but non-programmers can't do this)."
Actually, you can use several different styles with the same window manager. It comes with dedicated style engines (not just themes!) for the old KDE1 look, Be, Next, Laptop users, an Aqua-like one, and Mac-like System++.
Finally you state:
" Finally, Mosfet get a hair cut. When I first visited the Mosfet web site, I thought he was a girl. If only Mosfet's themes were as pretty as his face we might have a "kickass" desktop in Kde 2.
I can't help it if I'm pretty ;-)
At last ! (Score:1)
Re:One user's experience (Score:1)
Re:Gnustep is far from dead (Score:2)
If you agree then... (Score:1)
When people pick up a Linux app, they want it to conform to standards and interoperate fully in their environment. Yes sure you can run KDE and Gnome apps under each others environment, and Motif and Openlook and Athena and Tk at the same time. But they won't work together well like say MS-Office works together and the user won't get a consistent interface.
Having both KDE and Gnome is bad for Linux. It duplicates effort. It means some of your favourite apps probably won't integrate properly. It divides an already small segment of the market.
And.... it won't last. One or the other will die. It may take some years, but it will happen. I'll personally be glad when that happens for the reasons above, no matter which is the winner.
Personally I think Gnome will win because it is more commercial friendly with the licence, it is more inclusive with the language choices, more standards inclusive with Corba, and more practical without the C++ binary compatibility problems.
Either way, the sooner one side or the other gives up, the better off we'll all be. If one side has some better idea than the other, then joining forces gives the combination of both lots of good ideas, which is supposed to be the whole point of free software.
Re:UIs are (not) only about "ease of use" (Score:1)
The other problem is, that this collection of stream-based tools is only easy to use for geeks, not for normal people. It appears logical and simple to you, but believe me, it's a nightmare for the average non-geek user.
Yes, you could do everything in plain ASCII files, and you (and I) might find that very useful and know all the tools to do everything one can imagine with that data. But it's not going to be useful to anybody outside this community.
And as for finding a GUI that is as powerful as stream-based tools: The problem is not writing a front-end for sed and grep, it's hiding this low-level stuff from the user, and instead providing interaction on a higher level. Otherwise the users could use the original tools as well. But they don't (und really shouldn't need to) understand all the basics behind them.
This is what KDE 2's XMLGUI is all about (Score:2)
KDE 2's XMLGUI technology is doing this now.
What it allows is, as the name suggests, developers to create XML descriptions of the UI rather than rigid, fixed programmatic representations. At run-time, these descriptions are merged with the standard KDE interface elements (also described in XML) and then created on-screen using the standard QT/KDE widgets.
The net effect of this is that simply by using this technology, you can create a customizable, dynamic GUI that _automatically_ conforms to the KDE2 style guidelines, and all by just writing a few lines of XML...
I think this is very very neat indeed
Wrong-headed thinking (Score:5)
What will make a desktop Linux? Interface, interface, interface.
Wrong! There seems to be a lot of this thinking in the Linux community -- that the only reason Windows is popular is because of a pretty interface (The "shiny things" theory).
Now, an easy-to-use interface is important, but what is far more important is APPLICATIONS. I simply don't understand why people don't get this. Work is not done with desktop shells, it's done with applications.
Why did Win 3.1 kick everyone's butt despite having a horrible interface compared to the Mac or OS/2? Because it had all the applications that everyone wanted.
There still is not one Linux end-user application that is better than the equivalent under Windows. Not one. And many are greatly inferior. [OT: I often wonder if this is the grand example of where cathedral-bazaar development has utterly failed. You would think there would be one good example of an end-user app that is clearly better, but there just isn't one.]
For Linux to have any chance of gaining a foothold in the "normal" world, it not only has to have equivalent apps, it has to have better apps by a long margin. People are just not going to switch for no reason.
--
Re:UIs are (not) only about "ease of use" (Score:2)
The tool should grow with the user's knowledge. Advanced tools are great for advanced users, and simple tools are great for novice users; yet, none of them is really user-friendly. Unser-friendliness depends on two things:
--
this post was brought to you by Andreas Fuchs.
You miss the point (Score:2)
Although "skins" are the trendy thing these days, there are many more elements to the user experience than title bars, scroll bars, and other widgets. Keyboard bindings, mouse behaviour, dialog content and layout, etc. All of these things combined make the entire system - OS, Desktop, Applications - consistent. Once you use and get used to one app, then others are that much easier to take on.
This is the issue that is not being addressed. The GNOME & KDE folks, and any others so inclined, should issue standard design principles stating how applications should behave by default (consitent with one another). Of course, the flexibility allowing advanced users to bypass or reassign (some/most of) the defaults will be needed as well for those who spend more time playing with their systems then using them.
Re:Wrong-headed thinking (Score:1)
The only way that will happen is if Linux has not just applications, but the right set of applications, with the right set of features and capabilities. (Notice how prominently Sun mentioned that StarOffice 5.2 has improved MS Office document compatibility? Clearly Sun understands the importance of interoperability.) But another multiplier effect is usability. If you have a rock-solid OS with a huge assortment of exactly the kinds of apps users want, but its usability stinks, then users will stay away in droves. It just won't be worth the pain. Stable + highly usable + no apps yields the same result--zippo on the mainstream desktop.
Right now, Linux has a killer stability proposition, but it doesn't yet have the apps the mainstream users want (but it's getting much closer now), and it's still falling short on the usability front. There are still far too many places in setting up and using Linux where things that "just happen" under Windows or the Mac OS require more work and/or more knowledge on the user's part. Every situation like that is another barrier to entry for the mainstream users that the Linux camp should be working hard to eliminate.
Re:This *is* an Open Source problem (Score:1)
I didn't say your argument was invalid, I said you went too far.
I still think that there is this basic flaw in open source ... that it doesn't reach a lot of
people outside of the community
yes, making your assumption that the goal is to have already reached all people outside of the community, then it must be flawed...
you also seem to be saying it will never reach people outside of the community because of this flaw, and again I think you are wrong, I think it is on the way and it will. It is too compelling a paradigm for programmers and development managers to avoid. Open source is the low-cost producer in the software industry which economics tells us will be the ultimate winner.
Re:Wrong-headed thinking (Score:2)
Right now, Linux has a killer stability proposition, but it doesn't yet have the apps the mainstream users want...
It had a killer stability proposition. Win2k Professional is comparably stable to Linux. Yes, you can find horror stories, just like you find Linux horror stories, but on the whole it works pretty damn well.
Which begs the question, why should anyone switch even if Linux did have comparable apps? Price, perhaps? Still, you have to think that Windows is always going to have a usability advantages, simply because usability is such a low priority to the hacker community compared to "neat hacks" (which are irrelevent or even confusing to the normal user).
--
Re:UIs are (not) only about "ease of use" (Score:2)
Agreed.
I think gvim is a good example of the best of both worlds. The menus allow one to use vi as though it were windows notepad. Its usable and simple. Yet every time someone reaches for the mouse they see the ":[ex command]" that they could have used. Its a great way to learn. Perhaps we need a g_sed_m, g_awk_m, g_grep_m, etc... in the spirit of gvim?
The idea is to ease the steep learning curve while retaining *all* the underlaying power.
Re:Another improvement necessary for Linux. (Score:1)
That *isn't* a good thing. Not even nearly. Quite clearly a Bad Thing in fact...
It only
Re:Wrong-headed thinking (Score:1)
Suppose this happens, though, there's still not much that will draw Joe User to Linux. Not because there's an inordinate amount of arcane Finnish magic to be performed, but simply because in certain situations it's necessary to just "mess around" and see what happens. "Messing around to see what happens", however, is a mindset that only comes natural to those who already have an interest in computers, not to those who see computers as a tool they need to get their office work done (those people would be afraid they'd "break something"). Unfortunately, it's a mindset that's indispensible when working with Linux the way it's currently set up. Linux is, after all, still somewhat of a geek toy. That's why it's extremely popular in geek fields, such as science and webhosting, but not in decidedly geek-unfriendly fields such as accounting. If Linux is to "conquer" the world, it needs to lose this geek toy aspect (which would be a shame) or it needs to hide it very well from the casual user. Maybe we shouldn't be wondering why no one is using Linux on the desktop (well, apparently, four percent of computer users do, but...), but if it's worth it to let it come to that.
Disclaimer: Personally, I use Windows in situations where I don't want to be bothered with the working of the system (design, writing long pieces of text) and Linux for everything else. So maybe my personal habits have taken on the status of dogma in my mind.
On GNOME User Interface guidelines (Score:4)
guidelines is that it requires a lot of effort just to write the
document.
Once the document has been written, applications must implement
various of the user inteface features. The lack of resources in the
free software world to produce this kind of documentation is the most
important problem.
One of the approaches we have taken in the GNOME project was to add a
pieces of the user interface consistency through the GNOME libraries.
Various pieces in the libraries are nothing but programming sugar, and
they achieve two things: simplifying program development and helping
to create same user interfaces.
GNOME contributors realize the importance of this and other issues in
user interfaces. Our approach so far has been to follow the
guidelines from existing systems and try to bring the best user
interface experience details into GNOME. Discussion usually happens
on the various forums about specific user interface improvements.
A year ago, the GNOME UI team was created to help coordinate the
development of user interface issues in GNOME: to write a manual, to
write guidelines, to point out problems in current applications, to
point out desired improvements in applications and so on.
The GNOME UI team has been very successful. Various of the UI changes
you have seen in the October GNOME release (last october) and in the
Bongo GNOME release (last may) were prompted by the UI team.
The UI team is lead by Jim Cape, who takes the input from participans
on the GNOME UI mailing list and presents the suggestions to
the actual developers.
Anyone can help improve GNOME and help the GNOME UI team. User
interface experts from Eazel and Helix have been working with the team
for some time now: both helping and implementing those ideas.
You are right: finding information about the UI team is not easy. I
would love to see changes in the GNOME website to more easily direct
developers to this important resource.
You can read more about the User Interface team here:
http://developer.gnome.org/gnome-ui/
Miguel.
Re:Wrong-[direction] thinking (Score:2)
But OS/2 2.x's problem was really that it cost more for both the hardware and software standpoints than Windows 3.1 in 1992. You could run Windows on an old 286 with a meg of RAM -- something utterly impossible with OS/2.
The people Microsoft really hurt were Digital Research from 1985-1995, and Netscape 1995-today. OS/2, as much as I loved it, didn't stand a chance.
Steven E. Ehrbar
Re:This is what KDE 2's XMLGUI is all about (Score:3)
Re:If you agree then... (Score:3)
When there is only one of anything, the pressure to innovate is reduced considerable. I believe that the rapid growth of features in both GNOME and KDE is largely because of a desire each group to outshine the other. That is a *wonderful* thing.
Consider word-processors. Having a plethora of incompatible word processors with different features and file formats creates confusion for the user. However, if there was a standard file format and a standard set of features, users could choose the one that *feels* right to them. Each word processor would then be motivated to add features and usability to gain mind-share. As long as the file-formats stay standard, people could still switch from one to the other seemlessly. And new features that are successful would be adopted by the other word processors to keep up.
I believe desktops are the same. If KDE and GNOME (and whatever comes next) have a standard (or at least interoperable) distributed object model, and a standard set of UI guidelines. People could choose the one that works best for them and use apps designed for either. Both groups would continue to innovate in an effort to outdo the other and everyone would benefit.