Sunday, November 20, 2005

cooperation

i had a really interesting conversation with a fellow on irc the other night. he came into #kde-artists and asked if the oxygen icon project was planning on cooperating with the tango project. i asked which aspect of it and he said that oxygen should at least follow the icon specification on freedesktop.org. i confirmed that since we already follow this spec, and indeed helped author it, that oxygen would continue this trend.

this surprised him, and that surprised me. he explained that he didn't percieve KDE as a project that really did much in the way of cross-desktop cooperation and projects. i asked him to clarify why he felt this way and he brought up freedesktop.org again. i asked him to list some projects that were done in a cross-desktop manner that KDE had not taken a realistic interest in, qualifying that with the fact that it doesn't count if you write a specification or write a bunch of code without talking to anyone in the concerned projects about it and then try and call it a "cross-desktop effort" after the fact.

his first example was the cross-desktop human interface guidelines that had been attempted some time ago. i asked him why he thought KDE was the project that had been the weak link and he didn't really know why. i then asked him if he knew who had started that effort; again, he didn't know. well, as it turns out, that was one of my initiatives; call me crazy (many do ;) but i thought we should at least give it a try. lauri watts put a lot of effort into it, but in the end there was essentially zero interest on the part of GNOME. a couple of their devs subscribed to the mailing list and took part in some early conversation, but their main HIG guy professed complete burn out when it came to this topic (and i don't blame him; he worked his ass off on the GNOME HIG and had stretched himself quite a bit in doing so) and so noted he wouldn't be available for any more HIG work. and that was that.

this was news to the fellow on irc, and he was surprised that not only was this started by a KDE person, but that we put a lot of effort into it even though it did end up going nowhere. and he couldn't think of a single other example and then realized that he'd never really sat down and thought about it explicitly. he just always assumed that the opinions of others which he had read on various discussion boards and email lists must be true (and i'm sure he in turn added to this reinforcement of the concept by contributing to such discussions). so i offered a few examples where KDE has been involved, both within freedesktop.org as well as in other industry groups.

i also noted that there are a few people in each of the projects that are pretty anti-cooperation (statistically this is unsurprising), but most people are fairly unconcerned with the topic (mostly due to being overly busy with whatever their primary effort is) with a handful of people in each project being actively involved in such things.

he came away with a very different view on KDE and our efforts to work with the rest of the world. i wonder how many other people have a similar distorted (albeit innocently) set of assumptions.

i believe it is important that when we come across such people that we don't harass or accuse them of anything (e.g. of being anti-KDE, a troll or spreading FUD) but instead simply ask them the questions that will lead to a more reality conforming conclusion. most people out there lack malice, but only know what they've heard or read.

24 comments:

liquidat said...

Hm, I must say I had a similar feeling without knowing why. It was more that the most standards are build by gnome people and that they start in their position and not in the middle. So it seems to me that the word has to be spread that at least KDE is not a bad or lazy part in these subjects (but I think it's better to avoid blaming gnome for something, I don't like flame wars).

Some things I can recall why I have this feelings: The lsb seems a little bit gtk-centered. Qt-libraries are only discussed to be part of the next LSB, but gtk is already a fixed part in the plan.

Another thing is skome software at freedesktop.org's software corner: they list cairo as standard software - but where does KDE need this software? I thought cairo is something gtk-only?!
Others like scim (i18n input system) should be something like a standard, but they come with a gtk interface (and you have to build and download a external skim, which has a kde interface).

And, at last, I have different feelings about KDE4 in this case: it will be shiny and gloury, I hope so (very much), but: if there is a complete new way of desktop experience, how can this fit into standards? Will the standards draw the borders for KDE4, or will KDE4 be able to draw new borders together with the others?

But anyway, thank you for your post and especially for the examples, I would like to hear more of them just to have something when the next kde-is-non-standard-compliant-guy appears.

liquidat

Aaron J. Seigo said...

> It was more that the most
> standards are build by gnome
> people and that they start in
> their position and not in the
> middle

this is actually quite untrue. go look at the history of the specs on freedesktop.org and you'll see that gnome is not the dominant source of cross desktop specifications and efforts.

> The lsb seems a little bit
> gtk-centered.

when we are excluded from participation, how can we participate? we did try, and eventually we broke through.

in this case the resistance was primarily for political reasons, which is sad in its own little way. but we've (LSB and KDE) have moved on from that place into a more sensible location.

> Others like scim (i18n input
> system) should be something like
> a standard,

well, it's something of a defacto standard. and the fact that we support that via a KDE interface should be a good sign that we support that defacto standard, no?

> if there is a complete new way
> of desktop experience, how can
> this fit into standards?

these two things are not contrary to each other. we'll still support the standards, and in fact will be adopting a few new ones such as the notification spec (which will exist as a subset of our kde4 notification system, since our system does a hell of a lot more) and DBUS.

Anonymous said...

Ok, I'll admit that this post is kind-of off-topic, but I thought it was worth mentioning. I really like your last paragraph. I make this comment to point out that the skills necessary to ask such questions and bring about truer views of reality are much need in this world. They are needed in many more important aspects of life than just HIG design (not that HIG design or KDE isn't important, but they aren't "really" important).

Thanks for stating it so nicely.

Ramsees said...

Don't feel offended but it was you and Choimatt or whatever who where totally againts following FD.org you even wrote words like "It is a death parrot no its a FD.org" and CM wrote "FreeDesktop.org must die" now you sound lind of hypocrit to me, about DBUS, you are only embrasing it because TrollTech is embrasing it, many of you where totally againts it, there are many blogs that probes it.

What about the Clipboard demon that of FD.org that KDE is refusing to implement? what about other standar left, and what about words like "FD.org has been highjacked by GNOMERS" there are more.

If you words are honest Im with you but if you are saying all that because you are now employee of TrollTech then it would be so sad.

Ramsees said...

Sorry for the bad spelling, english is not my native languaje.

Anonymous said...

I appreciate this post; I too was under the impression that KDE was only loosely tied to freedesktop.org.

For myself, I guess I think that because I subjectively feel that GNOME people talk more about FreeDesktop than KDE people.

I don't know if I would go as far as ramsees, but I feel I must say: I have felt that there has been some negativity towards FD on Planet KDE. But then, there are always small but vocal minorities.

On the whole, very informative!

I work on migration software, and I've written Outlook to GNOME, Outlook to KDE converters. I've always been impressed by how easy it is to convert to KDE. You use pretty much straight iCalendar, vCard, mbox, xbel, etc., etc.,. GNOME work can be more difficult: building a custom BSD database to stuff vCards, for instance. I've been impressed (in these domains) by KDE's reliance on standards.

So it jives with what you're saying about FreeDesktop. I'm glad to hear it.

vladc6 said...

Part of the reason for this perception could be that GNOME devs are monopolizing Planet.FreeDesktop.org, giving the impression that they're the only ones who care enough to work on fd.o projects.

Recently, a KDE developer asked what was the criteria to be on Planet.FreeDesktop.org, but as far as I know there was no response from the maintainer...

Aaron J. Seigo said...

@ramsees:

i'll be the first to admit that my position is a complicated one. but here it is:

you say:

> What about the Clipboard demon
> that of FD.org that KDE is
> refusing to implement

and i say: if someone writes a spec or a piece of software on their own without working with anyone else then it is not cross-desktop. it is an individual effort. there is nothing inherently wrong with that, but it is certainly not cross desktop.

tango is one the more recent examples of this, btw. they didn't contact anyone except their own little cabal until after they went public. i was aware of tango in march of 2005, but only through unofficial channels. so for them to come out AFTER the fact and declare themselves a cross-desktop project is completely and utter hypocrisy.

and when people are hypocritical about the term "cross desktop" they then dilute the value of that term. so when true cross desktop efforts come along they have that much harder of a time gaining any credibility because others have degraded the value of that phrase.

so as someone who actually (as opposed to hypocritically) cares about cross desktop initiatives, i'm very, very, very unhappy and unfriendly towards those who would hurt that cause by co-opting the phrase and the movement to further their own selfish ends.

this is the position i've held since day 1 on the matter; you can go and re-read my past blog entries and see this.

and yes, i realize this makes me very unpopular in certain circles. but i happen to care more about the future and success of open source software than i do about a popularity contest, especially when it comes to being popular amongst those who care more about their own selfish agendas than that of Free software.

and now for this:

> if you are saying all that
> because you are now employee of
> TrollTech

i'm deeply offended you would think this. i can understand why you would, because many people do sell out and because of this fact it is rational to suspect that i too may sell out.

i hope that my ongoing behaviour will counteract any such suspicions, however.

hell, i've openly argued against trolltech employees on kde-core-devel since being sponsored by them.

and i think that tenaciousness may be part of why trolltech picked me. so i'm not going to give up on that.

Aaron J. Seigo said...

> I've been impressed (in these
> domains) by KDE's reliance on
> standards.

we try our best to stick to the standards. that's what they are there for. i'm glad to hear that it has a positive effect for those working with our technologies... makes it feel that much more worthwhile =)

Anonymous said...

> Another thing is skome software at freedesktop.org's software corner: they list cairo as standard software - but where does KDE need this software? I thought cairo is something gtk-only?!

You should actually read what the page really says. Not only doesn't it say anything about the software listed there being standard, on the contrary it actually explicitly says it is not.

> Don't feel offended but it was you and Choimatt or whatever who where totally againts following FD.org you even wrote words like "It is a death parrot no its a FD.org" and CM wrote "FreeDesktop.org must die" now you sound lind of hypocrit to me ...

The "It is a death parrot not its a FD.org" blog is not against fd.org it's against the widely spread misconceptions about it. Which all these comments just confirm. You should read what's actually written not what you think is written.

> What about the Clipboard demon that of FD.org that KDE is refusing to implement?

KDE is not refusing to implement it, it's just that nobody has found time to do it yet (since KDE doesn't need something like this so badly like GNOME does). BTW, do you know that previously there was a different clipboard-related spec at fd.o that GNOME "refused" to implement exactly the same way?

> what about other standar left

Just because somebody posts something at fd.o doesn't automatically make it a standard. Yet another misconception about fd.o .

Lubos Lunak

daniel borgmann said...

> tango is one the more recent
> examples of this, btw. they didn't
> contact anyone except their own
> little cabal until after they went
> public. i was aware of tango in
> march of 2005, but only through
> unofficial channels. so for them to
> come out AFTER the fact and declare
> themselves a cross-desktop project
> is completely and utter hypocrisy.

This is obviously just a matter of definition. If we consider Firefox a cross-platform application, why can't we consider Tango a cross-desktop project when it is developed with more than one desktop in mind? Tango for KDE will exist anyway, whether the KDE project officially adopts it or not.

Your definition of the term apparently differs, but that doesn't make it an utter hypocrisy.

Aaron J. Seigo said...

@daniel: the issue is not with something being "cross-desktop" in the manner of something running or being usable/useful on more than one desktop. in that term, all of our software is "cross-desktop".

however, what Tango is attempting to create is a set of cross-desktop standards. that is a rather different thing.

for instance, they state that one of their goals is to create cross-desktop humane interface guidelines. i think this is a laudable goal. however, such a HIG requires the involvement of all projects that will adopt this "cross-desktop" guideline, since it requires deep and fundamental adherence in the creation process of the software.

they currently are working primarily on adding naming standards to the icon standard. this is a good thing and something KDE will most likely pick up because it makes sense.

however, it is not possible to create real standards (as opposed to "paper" standards that aren't really used across the board) without involving the stakeholders.

what some projects do (and it seems tango is among them), is create some technology or spec and then label it after the fact as being a cross-desktop standard / specification with the idea that this will help ensure acceptance. after all, a thing labeled or hinted as a standard must be adopted, right? *sigh*

and that is a fair expectation given the meaning of the word "standard" as used within our industry.

now, according to miriam-webster, hypocrisy is defined as "a feigning to be what one is not or to believe what one does not"

so when a project says they are cross-desktop, but don't bother to discuss things with the projects that define the term "cross-desktop" then yes ... that's hypocritical.

daniel borgmann said...

Oh well, we just disagree then. All I can say is that I wouldn't mind if KDE would propose standards or develop cross-desktop technology even without consulting anyone from GNOME first. If it's useful for others then this is great, if not then nothing is lost. That doesn't mean that collaboration shouldn't be encouraged of course.

There is nothing I can say to counter your claim that it is merely done for the sake of driving acception, but I think it's unfair. Heck it isn't even a given whether Tango will be adopted by GNOME (although that seems rather likely). It doesn't pretend to be anything but what it is. Take it or leave it.

Jakob Petsovits said...

> i asked which aspect of it and he
> said that oxygen should at least
> follow the icon specification on
> freedesktop.org. i confirmed that
> since we already follow this
> spec, and indeed helped author
> it, that oxygen would continue
> this trend.

I believe the one meant the icon naming specification instead of the general icon specification. (As this is actually something created by the Tango project, and one can easily confuse this)

And I'm especially glad that, after the initial confusion about what's cool with Tango and what's not, there is the will to implement or even work on the icon naming specification. I think that's quite important, at least for cross-desktop icon themes.

segedunum said...

I have been on quite a number of forums and mailing lists, sometimes not commenting, just observing, and the general attitude that has come down to various people can be summed up as:

"KDE doesn't adopt cross-desktop, freedesktop standards and software that are actually geared for, and designed around, other open source software projects, that KDE did not start and had no involvement in whatsoever, so therefore KDE has a not invented here syndrome."

Put simply, that means that KDE should somehow adopt technology and standards that they had no part in and were developed in complete isolation by other people otherwise they're letting the side down.

Personally, I couldn't care a less about what happens with the LSB to be honest quite apart from all the political bollocks. The standard is next to useless for ISVs. The only practical way to guarantee compatibility between distributions in that way is to have the same binaries. Ulrich Drepper had that one right.

I am extremely appreciative of David Ransome, and other people like Zak Rusin, who started the GTK-Qt theme engine. This means that when I run VMWare on Suse 10 the application fits fairly nicely into my desktop, albeit with some caveats that don't really matter. There is even a whole lot of scope for KDE applications to be integrated into Gnome fairly nicely with it, but they just don't want to do it. Rather than accommodate quality applications like TaskJuggler they basically want nothing else other than their stuff in their desktop.

Let's all just face it - Tango is a rip-off of the Appeal project. I suppose having the opportunity to call something a cross-desktop standard gives them the opportunity to label their project as something politically correct.......

Alan said...

> I believe the one meant the icon naming
> specification instead of the general icon
> specification. (As this is actually
> something created by the Tango project,
> and one can easily confuse this)

The naming spec is the really important infrastructure part of Tango. I see the artwork as necessity to generate interest and give people more of an incentive to use and improve the spec for common stock icons but not the true purpose.

Tango doesn't seem as fixed as I first though and I believe a lot of it can be adjusted to better accomodated Oxygen if people are willing to ask, but the point is well taken that Tango should make the effort to get other invovled and solicit these opinions instead of hoping others will get involved.

Aaron brings up an interesting point, the techincal successes of KDE of sometimes taken for granted and other things get the attention. Hopefully new marketing efforts will better champion the work being done and help clear up some of the misconceptions which have been allowed to spread.

segedunum said...

I am extremely appreciative of David Ransome and other people like Zak Rusin

Whoops, that should be David Sansome and Zack Rusin! Have other peoples' names in my head at the moment.

Aaron J. Seigo said...

> there is the will to implement
> or even work on the icon naming
> specification.

yes. this makes a lot of sense and is something that people from multiple projects (GNOME, KDE, etc) have been talking about wanting to do for some time.

the fact that someone (Tango project) stepped up to start this is a great thing. and yes, as a project that cares about standards that make sense we're in like a dirty shirt =)

Jengu said...

When I first came over from Windows, I felt more comfortable in KDE than in Gnome, because KDE felt a lot closer to what I was used to. I ran some GTK apps (notably, I prefer Gaim to Kopete and Firefox to Konqueror).

Pretty much the only usability issue that actually frustrated me was the difference in ordering of yes/no buttons in confirmation dialogs. A full cross-desktop HIG maybe a pipe dream, but there should at least be a list established of 'inconsequential crap we can agree on'. Seriously, are there any compelling usability arguments towards either ordering? I doubt it. Even if there are, are they significant enough to warrant arguing about it? I highly doubt it. What's important for me is to be able to develop a muscle memory for where to click without getting surprised.

With KDE 3.5 just about out the door, there isn't going to be a large release for a long while. KDE4 will take quite some time to develop. Gnome is currently hacking away at a development branch. Smells like a great time for someone to come forward and standardize this across the desktops. I even propose a python script to settle the matter:

import random
if random.randint(0, 1) == 0:
print "Gnome wins!"
else:
print "KDE wins!"

Both sides need to come to terms with the fact that the other side will continue to exist. Then maybe there will be motivation to cooperate...

Aaron J. Seigo said...

@Jengu:

button order in Gtk+ has been configurable for a release or 2 now, and in KDE it's been configurable since some time in KDE2.

liquidat said...

Thanks for the detailed answer.

liquidat

Illissius said...

Correct me if I'm wrong, but the last time I tried configuring the button order in KDE, I had very, *ahem*, mixed results. In some places it did get reversed (I assume in places where KMessageBox/KDialogBase/something of the sort is used?), but in very many others (I don't trust my memory on this as it was long ago, but I seem to remember configuration modules as one of these), it did not.
Needless to say, having an inconsistent button order even within the same desktop environment is of not much practical value...

Jengu: I believe the arguments pro and contra are that you always have a Cancel or Close button, while all the rest can vary, so it makes sense to give the privelege of the special spot in the corner to these (whereas which the default "yes" action is can be ambiguous); on the other hand, your eyes are naturally drawn to the bottom right of the window (as that is the direction you read, I presume), so it also makes sense give the special spot in the corner to the action the user most likely wants to perform.

Personally, I lean slightly towards the latter, as one of my greatest dislikes is the computer/OS/DE questioning what I want to do -- the unending stream of 'Are you sure? Really absolutely certain?' dialogs for one, and making 'Cancel' the most easily accessible button also gives a bit of the same impression. (Consistency is a far greater concern, however; and I would gladly sacrifice my preference for its sake, if ever it came to that -- which it won't.)

Jengu said...

Are any distros shipping with them configured to be the same? I must be missing them.

Anonymous said...

Jengu: You can't "configure" KDE and GNOME dialogues to work the same way. It has never been a matter of "button order". It's a legitimate design difference, and one that can't be summarised or configured away.