Log in

No account? Create an account
Previous Entry Share Next Entry
Frustration, thy name is trying to work on two projects
Last Tuesday I gave a talk at the Cape LUG about what I saw for the future of GNOME-Ubuntu relations. I didn't paint a pretty picture. A full half of my talk consisted of me moaning about how crappy it is that minor differences between the two projects are repeatedly being blown out of all proportion, resulting in the current river of bad blood we find ourselves wading through. (The other half was filled with my customary suite of bad jokes and incoherent rambling.) Interestingly, Mark Shuttleworth was also in town and dropped by [1] to listen and respond to some of my points. This was certainly welcome because it helped me to understand some of the decisions Canonical has made recently. Besides, it was a nice gesture.

Perhaps some context for what follows is in order. I'm an Ubuntu person who spends most of his time working upstream in GNOME. I do this because I think my work can benefit the wider community as well as Ubuntu users (and, erm, because I enjoy working on GNOME). It can be a bit crappy sometimes, though.

For starters, some [2] people in the GNOME community moan about how Ubuntu doesn't pull its weight upstream. They then make it difficult for Ubuntu-y folks to contribute things upstream. People within the Ubuntu community, Canonical employees included, have tried to make significant contributions and have been knocked back on several occasions [3], in most cases not for any particularly good reason I would judge. I've even heard stories about Canonical having to upstream patches via a third party because a GNOME maintainer wouldn't accept (identical) patches from them! (I know; citation needed.) There is an anti-Ubuntu (or at least anti-Canonical [4]) sentiment in parts of the GNOME community.

Equally, there is a frustration with GNOME in some quarters of the Ubuntu community. Rather than joining in on the GNOME side of things and developing upstream, people see the processes and dynamics of GNOME as hurdles to doing what they want to do. It seems easier to go off and partially reinvent the wheel than to try working with people who don't share your exact vision of the free desktop [5]. Of course, there is no middle ground to be had, and the "irreconcilable differences" which prevent us from working together on one thing or another often lead to "completely different" approaches being taken, like Unity and GNOME Shell [6]. This way of doing things is often a gigantic waste of time and reinforces the opinion of some in GNOME that Ubuntu isn't a team player.

To round-off this sketchy analysis of a complicated situation, I should also mention Canonical's role in all of this. Canonical are a for-profit company and intend to make money from the Free desktop. On paper at least, I think most people in the GNOME (and Ubuntu) community are happy for people to make money from Free software. The method you use to make that money is subject to intense scrutiny, however. Free software companies are already at a disadvantage compared to proprietary software businesses when it comes to making money [7], and insisting that all of their attempts to generate revenue fit into some warm, fuzzy picture of a benevolent cooperative for whom profit is incidental is unreasonable [8]. Sorry folks, but it's the 21st century - even charities are getting cutthroat when it comes to fundraising, because they realise you can do more good by playing the capitalism game whilst remembering to stop short of the excesses of Big Business.

If you want the Free desktop to be successful, to gain significant market share, to compete with some of the biggest, most ruthless companies in existence, you're going to have to throw away some of your ideas about how this should work in an ideal world and start playing hard ball. I think this is what Canonical are trying to do. And yes, that involves exploiting [9] the community to some extent, and of course people are upset about that. I don't think Canonical are hell-bent on milking FOSS for all it's worth, but they do require some freedom to operate. Having said that, if Canonical want to push the view that a pragmatic, corporate approach to Open Source is the route to success, then they're going to have to do a lot better at not making people feel used. Things like splitting Banshee's Amazon referrals and insisting on copyright assignment cause bad feeling without bringing in much dough, I would imagine.

My point is that the bulk of this bickering is counter-productive and unnecessary. Open source desktops are hardly swimming in market share, and I doubt chronic infighting will remedy that situation. I don't care who started it, or who is in the wrong. From my point of view, the whole situation is depressing and demoralising. If it continues, chances are I won't want to work in either community. But the differences are reconcilable! GNOME can understand and facilitate Canonical's commercial goals and can be more accepting of Ubuntu people and their way of doing things; Canonical can benefit from the fruits of the Ubuntu and GNOME communities' labour in a more sensitive way; and Ubuntu contributors can resolve to work upstream more. All it will require is for some people to swallow their pride and/or make small compromises [10].

1 In a Darth Vader mask. Really. There are photos somewhere.
2 I would like to draw your attention to my careful use of the word "some" throughout this post.
3 I'm thinking of things like Zeitgeist, app indicators (which are a Free Desktop standard!) and so on.
4 I fully understand that Ubuntu and Canonical aren't the same thing, and that there are tensions between them. They often get tarred with the same brush upstream, though.
5 The decision to switch to Unity instead of GNOME Shell is symptomatic of this. I asked Mark about that decision and he said that attempts were made to get Canonical design people working with GNOME design people etc. etc. and no agreement could be reached. Despite this fundamental disagreement between the two camps, Unity and GNOME Shell are doing a great job of looking and feeling almost identical to one another.
6 Sorry to harp on about it, but GNOME Shell and Unity are extremely similar, to the point where hardly any of the differences offer tangible benefits to the end user. Helpfully, they're just different enough to cause massive problems for documentation and support people though. Working together on one new shell would have been possible on purely technical grounds.
7 By this, I mean that factors like the code being open mean that it can be more difficult to get users to pay up; revenue streams other than the obvious, directly selling the software, must be found. Of course, Free software has plenty of advantages in terms of reduced development costs, community contribution and the like.
8 To pick an example at random:
"I thought you understood the spirit of Free Software, but you're just another normal company that is first going after money."
9 An ugly word, but I think it's the right one. You're making money by taking other peoples' work and packaging it up, without offering them any reward for that work (monetary reward, at least).
10 I will be swallowing some of my pride by working on documentation for Unity and assigning the copyright to Canonical.

  • 1
This suggestion that GNOME makes it difficult for Ubuntu to contribute has been doing the rounds, but the evidence that is offered has never convinced me. Let's break it down:

* Libappindicator: totally at odds with GNOME's direction, and the attempt to have it included in GNOME was half-hearted. It was developed in house with no GNOME consultation and then dropped from a great height.

* Zeitgeist: does this even qualify as a Ubuntu project? Even it if does, its lack of acceptance into GNOME isn't the big deal that some people make it out to be: it's quite common not to be accepted first time round, and we've repeatedly encouraged Zeitgeist to apply again and to work towards technical integration with GNOME modules.

* Refused patches: I'll wait to see if any evidence turns up. I'd be surprised though: GNOME is usually crying out for patches.

* Design schism: I've been involved in GNOME design for a while and I've never seen a serious attempt by Canonical designers to participate or to influence what we're doing. Maybe this great divergence happened before my time, but everyone I've asked about it is baffled by such statements. Are there any public records of attempts by Canonical designers to change GNOME's direction? (That's an honest question: I've never seen any.)

I'm not saying it's easy to contribute to GNOME. Collaboration is never easy: it takes time and effort. But the idea that GNOME offers particular resistance to Ubuntu seems groundless (feel free to prove me wrong though). We *want* more contributions, after all, and those contributions that do come from Ubuntu/Canonical are welcomed with open arms.


Zeitgeist is not and never was an Ubuntu project and Zeitgeist wasn't even completely rejected. The integration of Zeitgeist into GNOME Shell was postponed. THAT'S ALL, dear PhilBull. In fact Zeitgeist is already partially integrated into GNOME 3.0. For now it's only in Totem (the movie player). Better integration will follow in GNOME 3.2.

Phil, you better get your facts straight. For examples look at the sponsors list on http://mhr3.blogspot.com/2011/02/my-work-zeitgeist-hackfest-2011.html
You'll see the GNOME Foundation and 3 others but no Canonical.

It's not an Ubuntu project but it is "Ubuntu-y". For example, the development is done on Launchpad (and this was apparently one of the reasons given for rejecting it: not using GNOME infrastructure).

I think it's fair to say that the Zeitgeist developers identify closely with the Ubuntu project. See this (old-ish) post from Seif Lotfy: http://seilo.geekyogre.com/2010/06/my-take-on-zeitgeist-and-gaj-not-being-in-gnome-a-personal-rant/. Seif cited a potential reason for the rejection as "our high affiliation with Ubuntu and Canonical". Whether this is justified or not is a separate issue; Zeitgeist is associated with Ubuntu, which is what I was trying to claim. So I think I'm vindicated on that count.

Again, a lot of the baggage here is contextual and not attributable to bias. Even Seif has more recently apologized for statements he made that made the relationship difficult.

And more to the point. GNOME has a category for external dependencies. It was established as part of the conversation concerning the discussion of the GNOME Journal that zeitgiest would fit well as an external dependency once one of the GNOME modules relied on it. Using launchpad for an external dependency is not contentious. Just as using freedesktop.org infrastructure for an external dep is not contentious.

The only issue of merit in the zeitgiest discussion was how to appropriately expose zeitgiest functionality in the GNOME 3 interface...specifically Shell. Everything else was unfortunate theatrics with got in the way of that work. But we are past that now and people are collaborating on the design and technical issues in the scope of GNOME 3.


I'm not saying that GNOME as a whole makes it difficult for Ubuntu to contribute, just that there are people in the community who *are* biased against Ubuntu/Canonical who I think may have made it more difficult for Ubuntu people to contribute. These people do exist - I've met them! Whether they have acted against Ubuntu consciously, or even significantly, I don't know, but you must admit that it's a possibility.

I fully admit that the specific examples I gave are far from clear cut, and my accusations in these cases *could* be entirely groundless. But they could also be justified examples of situations where some degree of bias led to unfair treatment. It's hard to figure-out peoples' motives from mailing list archives. Some people (mostly on the Ubuntu "side") think that these are examples of unfairness, and some people (mostly on the GNOME "side") think that they aren't. Whatever the truth of the situation is, you have a problem right there - both "sides" are accused of acting in bad faith.

I suppose most of my point here is that biases can have an negative effect on interactions between the communities whether clear-cut documentary evidence is available or not. We're talking about feelings and perceptions here: why do some people feel alienated from GNOME when others don't think they are?

Hey Phil,

Thanks for the response. I appreciate your effort to try and clear the air here. You're putting a lot of work into keeping the discussion going.

Honestly, I really think the module inclusion decisions that you've cited are nothing to do with anti-Ubuntuism. Our release team is a responsible outfit, and the justifications given for each decision make total sense: I don't think anyone was shocked by either of them. So it's frustrating to hear those two decisions constantly brought up as examples of GNOME behaving improperly.

Why do people have the perception that these decisions were wrong? Now, that is a question worth asking! A few reasons, I think:

* Many people don't understand how GNOME works. What does it mean for a module to be accepted (or not accepted)? What are the current GNOME modules? What are the inclusion criteria? I doubt many people who feel that GNOME is closed to Ubuntu know the answer to those questions.

* There's a lot of enthusiasm for Zeitgeist within the Ubuntu community. The Zeitgeist team, particularly Seif, was publicly angry and upset about the decision that was made. And people didn't understand why GNOME had made the decision it had.

* Major Canonical figures like Jono and Mark have repeatedly made the assertion that GNOME has rebuffed attempts at contribution. I'm not sure why they have done so. Maybe they don't understand how GNOME works. Maybe they think GNOME should work differently. Maybe it's tactical subterfuge.

Why have these things hurt us? One big factor is that GNOME doesn't do a good job at explaining what the project is doing or how it works. We're primarily a development project, and we don't traditionally do user-facing communications. And this is because a) GNOME doesn't have vocal or particularly prominent leaders and b) it doesn't have the resources to employ permanent public/community relations staff.

So, to answer your question: some people feel alienated because GNOME doesn't have the resources to get its story across.

Hmm, I think I need to explain that answer a little bit.

'Some people feel alienated because GNOME doesn't have the resources to get its story across.'

When I say resources, I mean: people who can stand up and explain what GNOME is about, how it works, and give commentary on events as they happen. Those people might be 'leaders' but they might also be hired marketing/community management people.

If GNOME was able to communicate more effectively, there would be less opportunity for people to misrepresent events like the module inclusion decisions that you've mentioned, either deliberately or by accident.

(This is still Allan, btw. :) )

  • 1