The next time you see the phrase "open source" used in association with some software, be advised that you'll need to take that claim with a grain of salt. This was a statement made last November by ZDNet blogger David Berlind.
As the concept of Professional Open Source gains momentum and more vendors jump on this boat, its becoming increasingly important to have some reliable indicators of what a real open source effort looks like.
In a recent post, blogger Dion Almaer rightly suggests that there is more to open source software than the license or the availability of source code.
According to Mr. Almaer, an open source product in the absence of a diverse community around said product is not truly open source. But how can an open source application provider determine if their community makes the grade? Mr. Almaer provides the following criteria:
- If you don't have any committers from outside of your company. You probably aren't community driven.
- If you didn't spend time cleaning up documentation for the community when you opened it up. You probably aren't community driven.
- If your users haven't helped with the documentation if it is lacking. You probably aren't community driven.
- If you do not have some kind of forums/lists where people help each other out. You probably aren't community driven.
- If you aren't willing to put in a lot of effort to build your community to get true benefits. You probably aren't community driven.
Obviously a leader who is tuned to these sensibilities Nuxeo CEO, Stefane Fermigier, responded with a blog post of his own where he addresses each of the criteria in turn. Unsurprisingly, but also we believe genuinely, Fermigier finds that Nuxeo Document Management meets or exceeds Almaer's criteria.
In his blog post Fermigier claims that more than 50% of the contributors are non-Nuxeo employees. In a recent conversation with CMSWire he stated that somewhere around 20 to 25% of the "commits" are done by the community. Contributors are one thing, actual commits are another, probably more accurate measure of community energy.
First of all, its commendable that the Nuxeo CEO is responsive in this fashion. Yet as notable as Stefane Fermigier's response is, the content of the post -- particularly the closing paragraph -- is even more important. The key here is Fermigier's focus on what O'Reilly called an Architecture of Participation. To quote:
We have designed the Nuxeo software with the explicit goal of creating an Architecture of Participation [...] Our creation of Nuxeo Runtime, the OSGi-based plugin system (inspired by Eclipse?s), our use of a component framework like JBoss Seam for our webapp, are consequences of this vision, which comes from years of experience working with system integrators and ISV.
Compare Nuxeo's approach to their primary competitor in the open source enterprise content management space, Alfresco, and you will see many similarities but importantly some rather striking differences. Let's take a look:
- Software Licensing. The Nuxeo Core is LGPL, which is broadly described as "business friendly" and is the same license successfully used by projects like JBoss. John Newton claims that LGPL is untested in a court of law and thus risky. Alfresco's Community Edition, previously licensed under a modified (non-OSI-approved) MPL, is now GPL. Alfresco's Enterprise and OEM versions are commercially licensed (non open source). A key point here is that with Nuxeo's LGPL license, one can freely embed the Nuxeo Core in a commercial product. On the contrary, with Alfresco Community edition's GPL licensing, a derivative work would have to adhere to the GPL license. Alfresco does offer a FLOSS exception for non-GPL open source projects, but states that derived commercial works must purchase a "flexible OEM Commercial License."
- Source Code Access. Alfresco's Community Network edition repository is wide open, but their commercial Enterprise Network edition is not. Nuxeo has one repository for the Enterprise Platform and it is open to the public.
- Access to Fixes. Related to the second point, with a repository that is shared by Nuxeo developers and the Nuxeo community, it follows that all Nuxeo fixes are immediately available to anyone in the community that can make a build. On the other hand, the Alfresco community must wait for any Alfresco Enterprise fixes to be merged from the Enterprise to Community repositories. This is a process that can take time. There's a big difference here. The Nuxeo community immediately benefits from the support activities related to paying customers. The Alfresco community does not.
- The Price of Support. Both companies derive significant percentages of their revenue from providing support subscriptions. Alfresco charges something like US$ 10,000 per CPU while Nuxeo charges on a per "application" basis, with a tiered program that starts at about US$ 15,000 per application. So depending on your scale and the support requirements you have, annual support costs could be significantly different. These parameters can vary a lot, so its not clear there are real cost differences here. However it would seem that on average a customer will pay more to get started with Alfresco.
Despite all the wonderful things that Alfresco does as part of their community building and enabling efforts, we can't but help interpreting some of the above differences as a bit antagonistic towards the open source flavor of their offering. The two obvious items are the lack of a shared repository and a block on commercial derived works.
Nuxeo may not at this time bring the same resources to bear, but they seem structured in a way that delivers fair value to clients and community alike and they seem strategically engaged and dependent on building a vibrant community.
Alfresco's CTO John Newton, an extraordinarily avid blogger, weighed in on open source business models in general and more specifically on Alfresco's choice to move to GPL and to focus on a support-driven business model. However, to our knowledge he has not spoken directly to the questions raised by Dion Almaer, nor to the points we've raised here. This writer, for one, would love to hear Newton's response.