The fight over Open Source 'leeches'
June 2, 2009 2 Comments
Open Source “leeches” seems to be getting a lot of press lately, and this article is just one example:
Open source is supposed to be all about community, but as commercial open source becomes the norm, fewer developers are giving back. Is that hurting open source?
Your ear doesn’t have to be pressed to the ground for long to hear angry grumblings in the open source community about leeches, vampires, or freeloaders.
“The future of Eclipse is in danger,” Michael Scharf, a member of the Eclipse Foundation’s architecture council, said in an angry April blog post. “The problem is that there is no real pressure for companies to contribute back to the community and it is easy to use the Eclipse ‘for free’ for their own products. The Eclipse community should create peer pressure to prevent the freeloaders and parasites from getting away without punishment,” he wrote.
Scharf likens the lack of contributions back to the community to the “tragedy of the commons,” in which greedy individuals unthinkingly destroy a shared resource. And in an e-mail exchange, he put it this way: “The general mentality of the industry frustrates me; the attitude to take advantage of something like open source and not give back anything to the system.”
I see a couple issues with this mindset. First, a project initially has the right to pick any license they like. Later complaining that people who are following that license aren’t giving back seems a little disingenuous. If you want mandatory contributions, pick a license that requires that (keep in mind that as a result it will almost certainly not be Open Source software). Note that the issue is being confounded by the fact that some companies are violating licenses and therefore are leeches that need to be dealt with appropriately. Be careful not to confuse these two groups, they should be treated very differently. It should also be noted that a specific individual or group using but not contributing to a particular project does not really “destroy a shared resource”. Since that additional usage doesn’t deplete a finite resource, I’m not sure the tragedy of the commons really comes into play here.
Secondly, all too often I see “giving code” and “contributing” as seen as synonymous. There are many ways that some corporations contribute without code being involved in any way. There are the obvious cases such as documentation or having employees participate in support forums such as LQ. There are others that are little more subtle though. Employing people who tout their Open Source skills creates an ecosystem that creates further demand for a project and for Open Source. The more demand for a project there is, the more likely there will be demand for that projects commercial services or products.
There are many other ways to contribute to a project. From inadvertent promotion which helps create mindshare and awareness to finding bugs which helps create better software, I think we need to expand our definition of contribution in many ways. For many projects, having a large number of “non-contributing” users is what made the project itself interesting in the first place.
Look, I’m not saying that some companies aren’t leeches, they are. I’m also not saying that as a community we don’t need to find better ways to foster more and better contributions, because we do. The shift from purely idealogical almost dogmatic Open Source to a more commercial Open Source seems inexorable at this point though, and working through these issues in a pragmatic way should be seen as in the best interest of all parties. While we have to be extremely careful to preserve the ideals and beliefs that got us here and that make Open Source what it is, we also have to be cognizant that change isn’t always bad.