The conflict between Banshee and Canonical over what should be done with Banshee's Amazon Store revenue stream, while it was finally resolved, was not Ubuntu's most shining moment. At the matter's conclusion, Banshee developers were not happy with the results. This is not how open-source communities should work together and no one knows that better than Mark Shuttleworth, Canonical, Ubuntu's parent company, who wrote, "We made some mistakes in our handling of the discussion around revenue share with the Banshee team."

In his blog, which Shuttleworth often uses to discuss matters of importance to Ubuntu, open-source, and Linux in general, he started, "Money is particularly contentious in a community that mixes volunteer and paid effort, we should have anticipated and been extra careful to have the difficult conversations that were inevitable up front and in public, at UDS [Ubuntu Developer Summit], when we were talking about the possibility of Banshee being the default media player in Ubuntu. We didn't, and I apologize for the consequential confusion and upset caused."

Shuttleworth then explained where Canonical comes from in creating its policy towards handling revenue from its distribution and the open-source programs that it's made from. "The bulk of the direct cost in creating the audience of Ubuntu users is carried by Canonical. There are many, many indirect costs and contributions that are carried by others, both inside the Ubuntu community and in other communities, without which Ubuntu would not be possible. But that doesn't diminish the substantial investment made by Canonical in a product that is in turn made available free of charge to millions of users and developers."

He continued. "The business model which justifies this investment, and which we hope will ultimately sustain that effort for the desktop without dependence on me, is that fee-generating services which are optional for users provide revenue to Canonical. This enables us to make the desktop available in a high quality, fully maintained form, without any royalties or license fees. By contrast, every other commercial Linux desktop is a licensed product--you can't legally use it for free, the terms for binaries are similar to those for Windows or the Mac OS. They're entitled to do it their way, we think it's good in the world that we choose to do it our way too."

At the same time, "We know that we need a healthy and vibrant ecosystem of application developers. We think services should work for them too, and we're committed to sharing revenue with them. We want to be entirely aligned in our interests: better code means a better result for both of us; better revenue means more resources to do what we love even better. Our interests, and upstream interests, should be perfectly aligned in this. So we have consistently had the view that revenue we can attribute to a particular upstream should create a revenue share for that upstream. We support Mozilla in this way, for example. The numbers are not vast, but nor are they insubstantial, and while we are not obliged to do so, we do so happily."

To sum up, "Canonical seeks to earn revenue from services delivered to Ubuntu, and we will share a portion of that revenue with relevant projects who help make that possible. Our interests, and those of the projects, should be aligned to the greatest extent possible."

So what happened? Shuttleworth explained, "In engaging with Banshee leads at UDS, we should have been absolutely clear about our expectations and commitment. Apparently, we weren't, and for that I apologize. There was certainly no conspiring or maliciousness, it apparently just never came up. But it was my expectation that we would share revenue with Banshee, I mentioned it briefly to someone closer to the conversation, but I failed to follow up until I heard rumours of a potential disagreement on the subject in recent days."

As it happened, I was at that UDS. I wasn't present for the Banshee and Ubuntu discussions, but I did speak to both Ubuntu and Banshee developers immediately afterwards about this and other changes to the forthcoming Ubuntu 11.04 release. At no time did anyone mention any details about revenue sharing between the projects. I strongly suspect that Shuttleworth is right in saying that the matter just never came up.

That may sound amazing to business people, but I assure you it's not surprising at all. In their heart of hearts, Canonical and Banshee are both made up of programmers, not accountants. These are people who think of code first and second and business contractual relationships, if at all, last. This serves as an object lesson about why, even with the best intentions in the world, open-source projects need business-savvy people around to make sure this kind of mistake isn't made and then allowed to snowball.

Page 2: [Resolving the Ubuntu/open-source project developer problem] »

Resolving the Ubuntu/open-source project developer problem

Shuttleworth continued, "We also made a mistake, I believe, as this blew up in private conversations, when a well-meaning person presented a choice to the Banshee developers, who then of course made a choice. But our position isn't at all what was communicated. Our position is that we'll deliver the best overall experience to users, we'll derive services revenue from that, and we'll share it with upstreams where we can attribute it efficiently. It wasn't in the mandate of that person to offer a choice outside of that framework, but it was an honest mistake."

So what does this mean for open-source developers working with Ubuntu in the future? Shuttleworth said, "Canonical would like you to succeed, would like to make it as easy as possible for many, many users to adopt your software, and is willing to share the benefits of that with you. Whether your software is promoted as the default in Ubuntu, or simply neatly packaged for easy consumption, we'd like our interests to be well aligned. We have a bug tracker that helps us pass issues to you if they are reported in Ubuntu first; we have a revenue model which matches that with passing through a share of revenues, too. And that goes for any kind of revenue that we can attribute to your project; for example, if we offer a support service specially tailored to people using your code, you can reasonably expect to agree a revenue share of that with us."

Besides a share of the revenue, open-source developers will also get the advantage of being able to easily reach the large Ubuntu Linux user-base. "Canonical invests heavily in creating a big, addressable ecosystem that you can easily reach. That's worth something. We also want a big, vibrant upstream community that innovates and makes its own investments. We know that contributions come both from volunteers and paid staff, and it's good to be able to have a bit of both in the mix, for the sake of both the volunteers and the paid staff!" added Shuttleworth.

Shuttleworth also admitted that, "Documenting this position is obviously a priority; we should have done so previously, but we just relied on internal precedent, which is a dumb idea when you've grown as quickly as we have in the past few years. So we'll do that."

Specifically, in regards to Banshee, he suggested that they use the Amazon Store revenue stream "to make Banshee even better. That's what it should be for. Don't be shy; don't be nervous of taking the money and using it for your own project. Canonical has already provided much more in the way of funding to the Gnome Foundation than this is likely to, through initiatives like the bugzilla.gnome.org work that we funded, and many other forms of support. I think money generated by an app should go towards making that app rock even harder. But the offer stands for Banshee devs to take up if they'd like, and use as they'd like. If they don't want it, we'll put it to good use."

I'm not sure that suggestion will go over that well. The Banshee developers decided a while back that they wanted to support GNOME. I doubt they want even well-meaning suggestions on what they should do with their funds from Canonical at this point.

Shuttleworth concluded, "This certainly won't be the last word on the subject. I expect these situations to become more common, not less." He'll get no argument from me on that count. "But I think that represents a great opportunity to see sustained investment in desktop free software, which we have been sorely lacking. I think our model gives projects a nice, clear road-map: build awesome stuff, partner with Canonical and be confident you will share in the success of Ubuntu. This is the model which catalyzed the founding of Ubuntu, seven years ago; this is what we're here to do: make free software available freely, in the best quality, to the widest audience we can. That's an opportunity for every project that cares about how many people get to use their stuff, and under what terms."

It sounds good as far as it goes, but the devil will be in the road map's details. It would be nice to rely on good intentions alone, but as the Banshee situation showed, you can't do that. To avoid these kinds of mis-steps in the future, Canonical will need to spell out exactly what it offers revenue-creating open-source projects. Open-source software, you see, is more than just a development path or idealistic notions, it's also a business model and it needs to be treated that way.