APR
16
2005

KDE Receives USENIX STUG Award

On Tuesday at the USENIX Annual Technical Conference, KDE founder Matthias Ettrich was awarded the Software Tools User Group award, shared jointly with Miguel de Icaza of GNOME. The award is in recognition of the impressive work of the Unix desktop projects over the last 9 years.

For thirty years, the USENIX Association has brought together the community of engineers, system administrators, scientists, and technicians working on the cutting edge of the computing world.

In the award speech the Usenix Board director mentioned that only when Matthias Ettrich, together with an ever growing number of open minded developers and contributors, started the KDE project that the inferior UNIX GUIs started to compete with and overtake those of other platforms.

A primary strength of KDE is how it allows the traditional philosophies of UNIX to map nicely to a modern graphical interface, providing easy access to underlying features.

Martin Konold, who received the award on behalf of Matthias, was pleased at being greeted with Konqueror equipped workstations running KDE at the USENIX registration desk and the ongoing appreciation of the KDE project.

Martin commented: "The fact that KDE gets appreciated this much and that KDE is the market leader in UNIX and Linux desktops today is negligible compared to the extremely important effort to create a single specification of the free desktop environment with multiple implementations including the GNOME effort as done within the framework of freedesktop.org. Plurality of the implementations while adhering to common agreed upon standards is crucial for acceptance by both users, solution providers,
3rd party open source developers and ISVs offering proprietary applications. The history of operating systems and graphical user interfaces shows us that going for a monoculture at the expense of healthy ecosystems is wrong and consequently KDE also puts a significant effort into making sure that it runs nicely on all GNU/Linux, *BSD and UNIX systems"

Comments

Congrats to all the authors of both the KDE and GNOME desktops with this award :)


By konqi at Sat, 2005/04/16 - 5:00am

>>The fact that KDE gets appreciated this much and that KDE is the market
>leader in UNIX and Linux desktops today is negligible compared to the
>>extremely important effort to create a single specification of the free
>>desktop environment with multiple implementations including the GNOME effort
>>as done within the framework of freedesktop.org

Is this the most appropriate time to make a plug for freedesktop.org? Its hard NOT to feel like this statement was say "thanks for the great work but everything that everyone has done to make KDE the most advanced desktop environment in existence is unimportant compared to the work of freedesktop.org." I don't disagree with the importance of open standards and I personally like a plurality of implementations, but the reality is that "the history of operating systems and graphical user interfaces" actually shows that the vast majority of users, solution providers, and ISVs offering proprietary applications prefer a monoculture of implementations. So if Martin associates acceptance with usage then his statement is simply wrong. But that is part of the reason for Free/OSS, isn't it? To direct the future of technology so as not to repeat the past.

Congratulation on the award! It is well deserved.


By brockers at Sat, 2005/04/16 - 5:00am

If you look at the last 40 years or so of IT history then I think it shows that the market has a tendency to graviate towards a mono-culture but that when such a mono-culture actually has been established the result is stagnation. AT&T, IBM's mainframe dominance, the Internet Explorer webbrowser, MS Windows. The remedy against such a stagnant mono-culture is to create standards that offers the market the advantage of the mono-culture (1 solution works everywhere) but at the same time brings competition back into the market: users can buy a similar solution from multipe vendors.

I think the PC market has been a very good example of that, it essentially doesn't matter whether you buy a PC from Dell or HP, the products are highly similar, but the fact that you can choose creates a large incentive for these company to serve the market better than their competitors.

You see the same happening around Linux itself, you can buy similar products from different vendors, creating a large incentive for these vendors to deliver solutions that match the needs of their customers, see for example http://news.zdnet.co.uk/0,39020330,39195204,00.htm But just as with PCs this is only possible if all these solutions are highly compatible and interchangable with each other.

From a market perspective I think it's desirable to have choice as long as that choice doesn't imply fragmentation, because otherwise it's hardly choice. As a customer/user I should be able to choose between A and B and independently between C and D, only that is real choice. If a choice for A implies a choice for C I hardly have choice. I want to choose a TV based on the features that the TV offers, I wouldn't like it if I had to buy a BrandX TV in order to watch channel 5 and a BrandY TV in order to watch channel 10.

The same with a desktop environment, I want to choose my desktop based on the features that the desktop offers, and I want to choose my e-mail reader based on the features that the e-mail reader offers. And just as I expect to be able to use my BrandX TV to watch channel 10, I expect my KDE desktop to work flawlessly with my Gnome mail reader. It's great that we have made an excellent desktop that shows us channel 5, now let's raise the bar and make an excellent desktop with a working channel dial.


By Waldo Bastian at Sat, 2005/04/16 - 5:00am

Bravo Waldo. Very well said. The biggest problem with monoculture in computer technology becomes the way people look at it, especially when they don't have good historical perspective. Your illustration was good, but perhaps better is when you set up a home entertainment system you don't have to worry if a given TV, receiver, DVD player or other component will work together. Nobody even thinks about it because the electronics industry insures they can compete by setting and working with standards. You know when you connect a piece of equipment it will work, just as when you buy a component for your PC you have a good idea it will work, but sometimes that's a problem with Linux. So we ask equipment manufacturers to release specs and we look for well supported solutions like USB devices... All of this is for the same reason. We want a level playing field and we want choice.

Monoculture with companies like Microsoft rub us the wrong way, and for a lot of us this is part of why we use Linux. People are accustomed to it and take it for granted, but it was very much a consciously manufactured condition. Companies who have control of OS and desktop APIs have actively sought to leverage this control into applications. Ironically operating systems are so expensive to develop they are usually not very profitable, if at all. Companies develop them to enable third party applications which support their platform, but that only serves to solidify their control of the platform.

It is important that we recognize where our distinctiveness comes from as well as what is good and bad with different models. What we don't like about commercial monoculture is that it removes our choices. I personally am happy with KDE and focus on it's strengths and I'm not by any means a GNOME advocate. At the same time I agree whole heartedly with supporting freedesktop.org for a simple reason. It is important to think about our users. Our users need to be able to access as many benefits as possible in whatever environment and with whatever applications they choose. Even better is the fact that much of this in KDE happens in a way that is transparent to our development process.

The point is that we should not expect others to adhere to our preferences if we can address their concerns without taking away from our objectives. We should offer more than another version of the same old thing, but a solution that addresses the best alternative possible.


By Eric Laffoon at Sun, 2005/04/17 - 5:00am

Unfortunately Waldo you miss the fact that the Unix world has been through this before. People argue over standards, other companies run off into the distance while people do so and the standards inevitably end up being botched, compromised, overly academic crap. It also takes you years, and years, and years before you get to anything - and then you have to actually code something useful. There's also the problem of people seeing 'standards' as a politically correct thing to do, rather than as something that will actually work.

Additionally, at the desktop end it is absolutely impossible to create standards for absolutely everything because the breadth of development people do doesn't allow it. People are always going to break with those standards. Yes, you can buy similar products from different vendors but Linux distributions just don't have the ISV support that Windows does (not even mentioning software installation). When, and if, it does you'll find that ISVs and companies will gravitate towards one benchmark distribution or desktop. They're not interested in umpteen standards that they don't comprehend - they want one benchmark implementation of software, or standards, to test with and provide support for. they're not interested in the fifteen million non-existant 'Unix' standards there have been in the past, and they simply haven't got the time. It's bad enough with network, TV and audio standards today without software getting in on the act.

No, I repeat no, company is interested in whether their Gnome mail reader works in KDE (perhaps Novell of course ;)). People currently don't have that problem, because most use Windows and Outlook. They want a mail reader that works, and integrates, totally with their desktop environment. If that's KDE then it will be Kontact/KMail. If a mail reader has to pass 956 standards to work, or an ISV has to make their software pass 1056 standards then they're not interested. These people target implementations, and the standards thing DOES NOT work at the desktop end. Even if they do they can only realistically support one implementation of those standards. When you have network separation then standards can just about work, which is why Linux and Unix work well in the server world. On the desktop you've got no chance, as because of the diversity of development you will always get fragmentation like that as standards are too restrictive and people break from them. I'm sorry, but that problem has been solved by Microsoft and Windows many moons ago, as unpalatable as that is. It's a cold, hard and brutally straightforward way of looking at things.

I know you're trying desperately to be politically correct and nicy, nicy about this Waldo - and I sympathise. I wish things could be like the way you've described, but they're simply not. The TV example you give is completely different from providing software, and is a trap people often fall into. You may have a choice of software, and henceforth channels, but ISVs always need a standard base to actually go from. That's why Windows is where it is. Create a standard open source distribution people can use as a benchmark, and because of it being being open source people will be able to gravitate around it and do things that they can't do with Windows, by virtue of the source being available. That's as good as it gets I'm afraid.

Sorry Waldo, I don't know what problems Novell/Suse are having internally with diverse desktop environments and applications that don't work well together and, quite frankly, not very many people care. That's a sign of utter weakness which has contributed to Novell's failure over the years. The vast majority of people in the world don't have those problems now and have absolutely no desire to go back to them. It's quite clear to me that the vast majority, if not all, of the people pushing these 'standards' have never been in this world.

If you really want to get people off Windows you're going to have to put your effort into something far more useful that can be achieved in far less time. No I'll re-phrase that - put your effort into something tht is actually achievable.


By David at Sun, 2005/04/17 - 5:00am

## ...Linux distributions just don't have ##
## the ISV support that Windows does... ##
------
Part of the reason is that "Windows" treats its ISVs much better than Linux does. ISVs which offer their products for Windows need to publish only one binary version, and in well over 98% of cases this version runs on WinXP, Win2000, WinNT, WinME, Win98 and Win95.

If they want to release for Linux, they very frequently need one versions for Redhat, for SUSE, for Debian, for what-have-you. And mind you, the versions for SUSE will have to be sub-granulated into a version for 8.1, one for 8.2, one for 9.1, one for 9.2 and one for 9.3.

No, from an ISV point of view, the LSB (and its adaption) isnt there yet, sorry to disappoint you...

For one striking example, just look at the NoMachine [www.nomachine.com] NX Client software. Count the number of different *.exe files on offer for the Windows version (Qt-based, BTW):

--> http://www.nomachine.com/download_client_linux.php

It is one, right? (And I know* it works for all Win32 platforms flawlessly....) Now do the count for the Linux-version:

--> http://www.nomachine.com/download_fil2.php?Prod_Id=16

It is 16. SIXTEEN! And I know these different builts are all needed at this stage, to make them work on their target platforms. That is just insane!


By Kurt Pfeifle at Sun, 2005/04/17 - 5:00am

"No, from an ISV point of view, the LSB (and its adaption) isnt there yet, sorry to disappoint you..."

That's the point. It never will be. ISVs are only going to support (and develop for) a whole system where they know exactly what software is in it and how it is configured. Given how fast things change, and the number of possibilities available on any desktop environment this is the only way of doing it. They're not going to support and develop for anything else, regardless of how many standards tests it passes.

The LSB and especially Freedesktop provide good avenues for collaboration between software projects, but unfortunately Waldo seems to think that standards from such bodies will solve everything in the software world. They won't, and they never have - hence the position Windows is in today.

"For one striking example, just look at the NoMachine [www.nomachine.com] NX Client software. Count the number of different *.exe files on offer for the Windows version (Qt-based, BTW):

--> http://www.nomachine.com/download_client_linux.php

It is one, right? (And I know* it works for all Win32 platforms flawlessly....) Now do the count for the Linux-version:

--> http://www.nomachine.com/download_fil2.php?Prod_Id=16

It is 16. SIXTEEN! And I know these different builts are all needed at this stage, to make them work on their target platforms. That is just insane!"

I think you have that round the wrong way there Kurt, but yer, that illustrates the point. Trust me. ISVs have a hard enough time fielding support calls and working out whether people have Windows XP, SP1 or SP2 installed - or worse in the case of Mac OS X. The above list of installation packages for Linux distributions is just totally unsupportable for any company.

I certainly applaud No Machine for trying, but with real widespread usage of NX on many different Linux distributions (in the way many ISVs have widespread usage of software on Windows) this is something that just isn't sustainable, or more accurately, will never get off the ground.


By David at Sun, 2005/04/17 - 5:00am

I think Waldo's point was that the more desktop environments implement functionality based on shared specifications and standards, the less differences are between them from the ISVs point of view.

Say for example that GNOME and KDE access the same addressbook data, a potential third party mail client could use either access implementation and does not have to know both.
The respective third party could even develop their own access mechanism if they think the additonal work has any benefit.

But usually the ISV wouldn't care about the standards in question as they are for matters below their level in the software stack.
They don't care and don't have to care about the details of the menu spec, they just need to know how the .desktop file is supposed to look and how to determine where to put it.


By Kevin Krammer at Mon, 2005/04/18 - 5:00am

"I think Waldo's point was that the more desktop environments implement functionality based on shared specifications and standards, the less differences are between them from the ISVs point of view."

My point though, is that ISVs can only realistically write for and support one implementation of that shared functionality, and for one desktop. If an ISV cannot write down the software that they will support i.e. you can phone them up and they'll help you, then they're not going to be able to do it.

"Say for example that GNOME and KDE access the same addressbook data, a potential third party mail client could use either access implementation and does not have to know both."

My point is that no matter how much shared functionality you have, there are differences. Software just isn't that simple, and you can't have standards and shared software for absolutely everything. ISVs are only going to support one way of doing this, for one desktop environment, that they can put into a document detailing step-by-step instructions, for example.

"But usually the ISV wouldn't care about the standards in question as they are for matters below their level in the software stack."

ISVs are only going to support and use one implementation they know works. If it works on anything else then that's great, but you're not going to get any encouragement or support from an ISV if you ring up or e-mail and ask questions.

I'm sorry, but you seem to think that standards and shared software will be OK and ISVs will just be able to handle it. They won't.

That's the way it is. Besides, the list of packages for different distros above illustrates my point. This situation will not change for years, potentially, until shared software and standards get implemented. Even then, as I've described, they're not going to work.


By David at Mon, 2005/04/18 - 5:00am

"My point though, is that ISVs can only realistically write for and support one implementation of that shared functionality"

I don't think I implied something else, but English isn't my mother tongue.

Before a standard exists an ISV either has to implement two/more subsystems for the same functionality or only support one and reduce the potential market.

Once a standard exists and is implemented by the base libraries, the ISV doesn't need to choose between this options, the market increased automatically.

"My point is that no matter how much shared functionality you have, there are differences"

No argue about that, despite all standards and reference implementations there are still differences in VCard parsers, yet most (all?) email clients allow to add attached VCards to their addressbook.

"ISVs are only going to support one way of doing this, for one desktop environment"

Well, some ISVs have started to offer their products for more desktops than Windows though.

I didn't mean to imply that standards or shared implementations complete remove the ISVs needs to choose between options, but they reduce the number of possible choices, optimally to a sane value.

Lets assume that currently there are three possible address stores on a user's system: KDE's, GNOME's and Mozilla's
Lets now assume the respective developers agree on a shared location for a VCard file or files and a concurrency handling method.

Before that a third party application support might get a question like "I clicked on a vcard in $BROWSER and it got added to the addressbook. $OTHERAPP can see it just fine, yours doesn't."

Afterwards the chance for this isn't eliminated, but greatly reduced.

"Besides, the list of packages for different distros above illustrates my point"

Does it?
So someone silently came up with a packaging standard which all distributions implemented?

Or do you mean that even if there were a packaging standard implemented by all relevant projects the ISVs would still, for some reason I just cannot imagine, create package for each of them?

Similar to having different downloads of Windows Software depending if you are running 9x or NT kernels despite the common knowledge that the API is extactly the same on both?


By Kevin Krammer at Mon, 2005/04/18 - 5:00am

I would argue that the development of AT&T, IBM and the others have been and are driven by the market mechanisms, whereas KDE advancements are much more driven by developers scratching itches and end users raising reasonable objections to specific functionalities. I don't see that stopping until we have a "perfect" KDE. I don't even see why it should slow down, even if, says, Gnome were to disappear.


By Niels at Mon, 2005/04/18 - 5:00am

Shared specifications and shared standards are an admirable goal as long as the "standards" are not acting as limitations to the advancement of a given technology. This was the problem that KDE ran into with the use of Corba. It was a open and shared standard used by KDE (and Gnome) in its early development. But we quickly discovered that it became a nightmare to manage/extend to the more advanced uses that we wanted to see KDE move towards. The decision was made (and lots of "shared standard" developers SCREAMED about the change) to switch to a custom KDE specification now known as KParts. History has shown that decision to use KParts was the correct one, as KDE would NOT have progressed to the level it has using Corba.

As long as the standard is good for KDE development and advances our ability to provide application solutions to users (and developers) then I am all for shared standards. But the moment those standards hold back KDE development in the interest of some “perceived” value from shared specifications. We can all agree on standards up until those standards have the net result of holding-back all of our development efforts equally.

Think of specifications as food for software. Good standards will help you (or your software project) grow strong and healthy. Bad standards will make your application bloated, lethargic, and will eventually be the cause of most of your application “sickness.” Standards are NOT more important than the applications (arguably they are part of the application, but a part is seldom more important than the whole.) Because they are NOT more important than the applications themselves, comments like this verge on being insulting.

The fact that KDE gets appreciated this much and that KDE is the market leader in UNIX and Linux desktops today is negligible compared to the extremely important effort to create a single specification of the free desktop environment.

Also, I think too many people get shared specifications confused with open specifications. KDE (and Gnome for that matter) will ALWAYS have open specifications because of the very nature of F/OSS. Open standards are very very important, shared standards are less important. One could argue that Microsoft DOC format is a shared standard because just about every office package in existence tries to write and save to it. That doesn't make it an open standard.


By brockers at Tue, 2005/04/19 - 5:00am

How does OpenOffice.org do it? I mean, I do not see as many downloads for the various Linux versions there are. Cb..


By charles at Sun, 2005/04/17 - 5:00am