Ubuntu Membership and Contributions to Upstream Projects

There has been a lot (perhaps too much) discussion on the ubuntu-devel mailing list about (among other things) to what extent contributions to an upstream project should be taken into account when assessing whether a person’s application for Ubuntu membership should be granted.

Jonathan Carter has very properly added it to the agenda for discussion by the Community Council at their next meeting.

I’m posting my views here so that I can order them clearly, and also in case I can’t make that meeting.

There are two questions here. The first is whether upstream contributions should be taken into account when evaluating Ubuntu membership. The second is which projects are upstream projects, and which projects are part of Ubuntu. I think the first question is easy, actually, and I think people have overthought it a bit. In fact I am surprised that it is controversial at all, because I am fairly sure it has been discussed in the past. The second question is much more difficult.

First Question

Upstream contributions, whether in Canonical sponsored projects or not and whether in projects used by Ubuntu or not, should not be an important consideration when evaluating Ubuntu membership. The process is designed to convey a sense of belonging to the Ubuntu project, the privileges of which are association with the project and voting rights on certain governance initiatives in the project. For this purpose, direct contributions are the key consideration.

Drawing a line between which upstream projects have a closer association with Ubuntu and which haven’t is not a task that I would expect a membership board to have to undertake, and I think it is inappropriate. We as a project value immensely, and depend upon, upstream code and contributions for our existence. Ranking those upstream projects in order of “closeness” to the project is an impossible task: so many are crucially important. So Launchpad is an upstream project just like Debian, Gnome or the kernel. A contribution to those, while immensely valuable to Ubuntu as well as many other projects, is not a contribution to Ubuntu for the purposes of membership.

Participation in upstream projects could be tangentially relevant, in the sense that it shows an understanding of the free software community and the ability to work in a community. That can be helpful, but can never be sufficient to recognise someone as a member of the Ubuntu project on its own.

Question Two

The difficult question here is how we define projects that are Ubuntu projects, and which are upstream projects.

That is generally something that a software project will decide on its own, with the simple decision of whether it will be distributed in Ubuntu alone, or whether it will be distributed in many distributions. A key aspect is the level of integration between the project and the Ubuntu community.

The line gets slightly blurred sometimes where a project is primarily designed for Ubuntu, but also has aspirations of being distributed elsewhere. An example is Unity. Another controversial project seems to have been Ensemble/Orchestra.

Clearly the membership boards are having to take difficult decisions on this issue, and that is causing difficulties. It shouldn’t be necessary for them to have to take decisions like this. I propose that we put in place a process for clarifying the issue whenever there is uncertainty, on a case by case basis, by a referral to the Community Council. Frequently we would get the Technical Board involved as well to benefit from their greater understanding of the technical side of software projects.

So, those are my opinions on the two questions raised. I’m going to go on and give my view on the projects that have been controversial as well.

Unity

Unity is a difficult issue because Unity itself does not seem to be clear about whether it is an upstream project or not. Its Launchpad page makes out that it is an upstream project and its mailing lists are not on ubuntu.com. But its website is on ubuntu.com (albeit that it is there because of Canonical’s control of the domain, as opposed to any decision by the project itself, as far as I am aware) and has a big Ubuntu logo at the top. It uses the Ubuntu wiki. Planning decisions are discussed and decided upon at UDS. And both the latter two points are quite significant I think because they show a high level of integration with the Ubuntu community.

On that basis I’m personally of the view that Unity is part of Ubuntu.

Ensemble/Orchestra

Ensemble/Orchestra appears to have been something else which has created difficulties. I know very little about the project. I think that not knowing enough about how the project fits into the Ubuntu ecosystem is a key part of the problem. And if that’s right, what we are seeing here could be a good thing – this could improve how the rest of the Ubuntu community perceives the project and could help integration (if integration is intended). This is one of the big advantages of using project wide membership boards for granting membership, as opposed to individual sub-project Councils, and the main reason I have always been in favour of having all membership applications assessed by project wide boards (albeit that I recognise that I’ve been outvoted on such issues).

Orchestra appears to sell itself as a product for Ubuntu Server. But then again, any company could design and release a product for Ubuntu Server, and that would not necessarily mean that it is part of the Ubuntu project. What we need to see is integration with the Ubuntu community, the use of the Ubuntu wiki, and so on.

There I am slightly confused. The Orchestra wiki page is very bare, and if I go to the Ensemble wiki page I find that it redirects me to ensemble.ubuntu.com/ which looks like it is part of the Ubuntu wiki (because the theme and logo is the same) but is in fact a separate wiki. I find that difficult to understand. And again, it has a sub-domain of ubuntu.com because Canonical controls that domain. But more importantly, browsing around I find very little instructions about how to contribute to the project as a volunteer or member of the Ubuntu project.

Having said that, I can see that Dustin has stated that Orchestra is part of Ubuntu (https://lists.ubuntu.com/archives/ubuntu-devel/2011-August/033894.html) so clearly the people driving it believe that.

I think that ultimately the answer to this will also be that Orchestra is part of the Ubuntu project and a contribution to it is a contribution to Ubuntu. But I would very much like to develop a discussion further with those involved in Ensemble/Orchestra about how it fits into the Ubuntu project, and how it plans to develop a community and encourage volunteer contributions.

Conclusion

In my opinion:

  1. Contributions to upstream projects are not contributions to the Ubuntu project for the purposes of membership.
  2. Where it is unclear whether a project is upstream or part of Ubuntu, that can sometimes be a difficult issue which highlights a weakness in how that project defines itself, which should be clarified by the CC on a case by case basis.
  3. Unity and (albeit slightly less clearly) Ensemble/Orchestra appear to be part of the Ubuntu project, but some discussion could be beneficial about how those projects, particularly Ensemble/Orchestra, integrate with the Ubuntu project.
  4. Discussions like this are a good thing because they will improve everyone’s understanding of different parts of the project.

4 thoughts on “Ubuntu Membership and Contributions to Upstream Projects

  1. Iain Lane

    I said this in private mail, but it warrants saying here too.

    I think this approach is missing the point. Someone can just as well contribute patches to these “Ubuntu” projects without caring about Ubuntu at all. For example, I’m planning on working with pkg-ayatana in Debian to get some of the Ayatana projects uploaded and useful in Debian too. I wouldn’t expect any patches I make to these projects to count towards Ubuntu membership as they are purely concerned with increasing portability to other distributions.

    Someone may contribute patches to Orchestra that work around edge cases in their corporate environment. They are not concerned with contributing to Ubuntu.

    On the other hand, I may notice that Unity exposes particular bugs in Compiz, for example, and work up some upstream patches to resolve this. This should count as a contribution to Ubuntu for membership, IMO.

    Membership boards should be looking at motivation. If an individual understands what the project is about and is contributing code to an upstream project with a primary view to improving the Ubuntu project then this should be allowed into the mix when they apply for membership.

    Cheers,
    Iain

    Reply
  2. matt

    Iain,

    You make a good point, but actually I’m not so sure that it is inconsistent with what I’ve said.

    The membership boards have to take decisions all the time about specific cases and different types of contributions to different parts of Ubuntu. I don’t think that we can prescribe for them how to evaluate such things – there is a wealth of different types of contributions, all of which deserve different weight and the examples you have made are good ones, and I agree with your opinion on all of them.

    I also agree that motivation is important. And also I would add to that a level of integration and interaction with the Ubuntu community is a key part of becoming an Ubuntu member.

    But what I’m addressing in my post is a slightly different issue. It’s the issue of whether direct contributions made by a participant in an upstream project (e.g. a Launchpad documentation writer, a Unity developer, or a kernel hacker) should be considered to be contributions to Ubuntu. Again the issue is not exactly “black and white” and there are smudges around the edges that we need to trust the membership boards to iron out. But I do think that on this issue we need some clear guidance and to make a clear distinction, because otherwise unsatisfactory situations like the one we are experiencing at the moment will keep cropping up.

    Reply
  3. Iain Lane

    Thanks for your response.

    Your clarifications make it clear that we are perhaps saying the same thing. I am mainly making the point that I don’t want to see an “approved list” of projects. All contributions to any project should be able to be considered, if the individual is motivated by improving Ubuntu.

    And I do think it would be fair to ask for some Ubuntu community interaction too.

    Reply
  4. ScottK

    I think there’s at least one other very important consideration in trying to decide what is an Ubuntu project or not. That is copyright assignment or copyright license agreement (CLA) requirements.

    AFAIK, Ubuntu has never required any kind of formal contributor agreements. I think this is a very important project value that keeps it open and welcoming to new contributors. Some (perhaps all, I don’t know) of the projects you mention require contributors to sign a Canonical CLA. I believe that if Canonical is requiring such an agreement between Canonical and contributors the project is clearly a Canonical corporate project and not part of Ubuntu.

    I would hate to see this change.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>