Monday, November 30, 2009

Diversity is not the only answer

Dave Carver started it and Pascal fed the fire. If you missed it, there are confusing and highly inaccurate statistics captured by the Eclipse Foundation that measure diversity in the Eclipse projects. Stats or not, there are a lot of projects where it's clear, there is one vendor paying a very disproportionate number of comitters that work on the project. And it's not always IBM.

But I think that misses the point. For open source projects to survive you need one key ingredient. Be OPEN! Simple, no? One reason that non-diverse projects suffer is that most of the decisions are made behind closed doors at that company. How many times has some feature or project just showed up one day, all the key decisions leading to their creation happening hidden in meeting rooms instead of out on the mailing lists. What kind of trust does that build?

A couple of Eclipse Summit Europes ago, I received the biggest insult I ever recieved working in open source. Having just joined Wind River, one of the attendees suggested that the CDT was just a Wind River project. After all the work I've done and career limiting decisions I've made to be as vendor neutral as possible in my work on CDT, I was hurt. But it drove home the point. Wind River was the elephant in the room, at least by perception, and that hurts trust.

I think Eclipse has a lot to learn from other successful open source projects. If we truely want to continue the success, we need to be real open source projects, not only in governance, but in culture too. That starts by dropping the vendor centric nature of the Eclipse projects and opening them up to everyone.

7 comments:

  1. Nicely said, Doug, and you know I agree [1].

    ReplyDelete
  2. Diversity is a two way street. A project can be very open. However, if there aren't people in the community who are willing to assign bugs to themselves, learn the code, and contribute time and energy to a project, our committer base doesn't grow. I think most projects at Eclipse would be very happy to have new committers to help with the bug backlog or Helios plan items. However, from my interactions on bugs, it seems that most people expect the existing committers to do all the work.

    ReplyDelete
  3. @Kim, I know that's what you guys would like to see, but you need to understand the perception. Until now, IBM has been doing all the work and been making all the decisions. That is a very difficult culture to overcome.

    My feeling is that the only way for this to succeed is for IBM to withdraw itself from the Eclipse PMC and have you guys work for the community. Then the perception that the Platform is controlled by IBM would have less wind.

    At any rate, that's where I'm coming from. This isn't about projects trying to become more diverse, it's about changing the culture to be more open and vendor neutral.

    ReplyDelete
  4. I think the crux of this issue is committer resources. If a company wants to do more work on Project X, Y or Z, they need to provide the resources to get the work done if it's not a work item that other companies are interested in pursuing. The Eclipse PMC is not entirely IBM today - there are representatives from three other companies. If there are plan items that other companies need, they need to provide the resources to implement them.

    I'm not being political. I'm being pragmatic :-)

    ReplyDelete
  5. @Kim: I think looking at a company perspective is the wrog tack. One needs to substitute "company" with "community". To that end we need to encourage the community, which means responding quickly to their needs, and putting the communities needs over our own at times.

    I think we need to stop looking at just Eclipse member companies and involve the entire community better than we do. There are plenty of individuals that may want to help, but we as committers overall need to do a better job engaging that community. A handful of us do, but the vast majority of committers, you never see anywhere besides the code they commit.

    ReplyDelete
  6. While I agree that perception of openness is very important, I don't see how IBM withdrawing from the PMC while funding developers would help since the developers are where the real power is. Plus, it's kind of unrealistic. IBM, like all other Eclipse companies, should work on things that are valuable to them, and which hopefully are valuable to others, while being good open source citizens.

    Now, IBM withdrawing all developers *would* increase diversity, since others would need to step in. Not that I'm suggesting that, but it is a fun thought experiment (more fun now that I no longer work for IBM or on Eclipse ;-> ).

    ReplyDelete
  7. Of course the whole IBM thing is in jest. The key point is to get everyone working in the open and visibly lose their vender-centric nature. We have a lot to learn from other open source projects which seem to work this way. And "seem" is the operative word. It's really all about perception and how that changes peoples' behavior.

    ReplyDelete