Thoughts on Content Management and Open Source.

Wednesday, June 29, 2005

Open Source Contribution Policy

Following up on an earlier post. When a company starts thinking about contributing back to an open source project, it is best to have a policy that set ground rules for contribution. Here is ours.

Results from Publishing Workflow Survey

The Content Wrangler has a posted some very interesting results from a survey on workflow. Some of the findings:
  • Bottlenecks continue to be a problem in workflow and many respondents feel that better automation would improve matters
  • The process is often hampered by people waiting on dependencies and then being rushed to complete their tasks.
  • Finding and distributing the right version of an asset continues to be a problem. Particularly in environments that practice content reuse.
  • On an unrelated note, many respondents never heard of some of the major CMS vendors. 26% never heard of Documentum.

Monday, June 27, 2005

Contributing GPL Licensed Code Back

Recently, I have come across a number of articles that made the point that you need to be careful of using GPL licensed code because you may have to contribute back your improvements. I wanted to clarify this assertion because, in most cases, it is simply not true. Still, even if you are not required to contribute back improvements to GPL licensed code, it may be in your best interest to do so but I will get to that later.

First a little on the GPL. The GPL, a.k.a. the GNU General Public License, is a product of the Free Software Foundation and it is considered the most restrictive of the many OSI Certified open source licenses. Many great open software applications including the Linux Kernel, are licensed under the GPL. Unlike some of the more laissez faire licenses, such as the BSD License, the GPL has a "viral clause" that says derivative works must be distributed under the same terms as the source work. So code based on GPL licensed code is GPL licensed.

Although this sounds scary, the "viral clause" is only triggered when the derivative work is distributed - as in sold or shared among a select group of entities. So if you extend Zope to add a new capability for your organization, and never share the code with anyone, you do not need to publish your improvement under the GPL rules. The trick is knowing what is considered distribution. Philip Albert wrote a great article in Linux Insider on this subject. Albert writes that sharing across certain corporate relationships, such as between subsidiaries or between a system's integrator and client, could be considered distribution. If you are working with a system's integrator on GPL code, you should be careful to structure the relationship as "work for hire." Otherwise, if you sharing the code with your consultants could be considered distribution.

Another factor is whether your code is a derived work or is considered a module or application that uses the GPL licensed application. Plugins and things of that nature are not considered derived work. In fact, software is often open sourced for the reason of expanding a market for non-open source software uses it. For example, SAP open sourced their database to make the value of ERP less about the database than the application sitting on top of the database. The Firefox browser phenomena is so interesting because it has the potential to create a market of extensions that work on the freely available browser.

I have talked about why you may not have to contribute back your improvements to GPL licensed code. Now, lets discuss why you may want to contribute back your improvements. You contribute code back when the competitive advantage of sole access is outweighed by the cost of maintaining it. When you contribute back, great things can happen. The code gets reviewed by really good programmers. The code becomes part of the core application so that you have less to worry about it when you upgrade. The contribution that you make also has the potential to grow into a new feature that would be useful to you. The application gets better and attracts more users which ensures its future.

Much has been written about strategies for using and contributing to open source. One of the more powerful models is Geoffrey Moore's distinction between "Core" and "Context" which he presented at OSBC 2005 in San Francisco. I have also found my colleague Stephe Walli's 2005 USENIX presentation Under the Hood: Open Source Business Models in Context to be helpful in understanding the benefits of using and contributing back to open source. The general gist behind these models is that a company has certain capabilities that give it a competitive advantage (Core) and a whole lot of other capabilities that it needs to keep the lights on or make the core stuff work (Context). That is not to say that the context stuff is not important. Companies need to pay their employees but having the best payroll system is not going to make one company a market leader.

Back to the world of content management. There are many content management features that are always context (storage) and many features that are frequently context (workflow) and occasionally there will be some features that are core (such as, perhaps, views of content that give new insight or knowledge). But, of course, it is the content that resides in the system which is really core to the company. Based on this breakdown, content management has high potential to attract cooperation and contributions from organizations that want solid systems and are not threatened by the prospect of their competitor having the same core capabilities.

Friday, June 24, 2005

JSR 170 Approved

I was catching up on my Gilbane reading and noticed an announcement that JSR 170, the specification for the Java Content Repository (JCR), has finally been approved. Thanks and congratulations to Day Software's David Nuescheler and the Apache Jackrabbit Team for pushing the JCR through this arduous process.

This news could not come at a better time for CMS owners and buyers who must be concerned with this latest round of M & A. The JCR will allow organizations to store their content in a standards compliant repository that will enable greater flexibility in the tools they use to manage their content. Now all we have to do is wait for a critical mass of CMS providers to support the JCR. The open source world is clearly in the lead with Apache JackRabbit, the JCR reference implementation and several open source CMS are using it. Day Software has a JSR 170 compliant JCR in Beta. Expect IBM to be the next company to release a commmercial JCR. Oracle appears to be dragging their feet and blew an opportunity to integrate JCR support into their new ECM product or their database.

Labels:

Monday, June 20, 2005

Alfresco Closes $2 Million Seed Round Financing to Build an Enterprise CMS

Alfresco, a start-up founded by John Newton (co-founder of Documentum) just got $2MM in seed round financing from Accel Partners. They want to become the MySQL of Enterprise Content Management and promise an initial release of the product for download on July 27th 2005. The web site is a little thin but some information can be found on the road map page and the architecture page. They have made a great selection of OSS components: Lucene search, Spring AOP framework, and JCR (Java Content Repository) support and the application will run on JBOSS.

It is unclear if/how an external community will contribute to the project - that area of the site is not yet live. However, none of the people listed on the team page have a history of open source project leadership so it is possible that development might be limited to Alfresco engineering staff.

I am looking forward to trying Alfresco. There are few major open source CMS projects focusing on document management despite the fact that document management represents a major part of the content management market.

Friday, June 17, 2005

Zope Foundation

The Zope Corporation recently announced the creation of the Zope Foundation which is to be launched in October 2005. The Zope Foundation will be a non-profit that will oversee Zope community projects including Zope 2, Zope 3, and CMF. Copyrights of the Zope code will be transferred from Zope Corporation to the Zope Foundation. The Zope Foundation will also get a perpetual license to the Zope trademarks and take over management of zope.org.

For more information, you can join an IRC Session:
- Who: Zope Corp and Zope Community
- What: IRC session to discuss the Zope Foundation
- When: Tue, 21 Jun 2005 10a - 12p (US EDT)
- Where: irc.freenode.net #zope

Creating a foundation is a frequently used (remember, TYPO3 recently announced the TYPO3 Association) and effective strategy for open source projects. Doing so makes the governance of the project more public and reduces the perception that contributions are benefiting a specific company. Other examples of this trend include Wyona moving the Lenya project over to the Apache Software Foundation, and Mambo moving out from under Miro International. In both cases, the project enjoyed increased attention and participation.

Labels:

Thursday, June 16, 2005

New Article on ECM

My article on ECM for Cutter IT Journal just came out and is available here. I am sorry to say that you have to register on the website to read it but there is a no email option if you are worried about the spam.

The thesis of the article is that the ECM vision of having one centralized CMS to manage all kinds of content is dead - or at least misguided. Instead, companies are looking at ways to integrate best of breed CMS solutions into a more federated architecture that shares content. If you read it, I would love to hear your feedback: sgottlieb (at) optaros.com

Labels:

Open Source CMS and Google Summer of Code

There are a number of major open source CMS projects that are participating in the Google Summer of Code program. For those of you who are out of the loop, Summer of Code is a program where software developers are given a project and are given a $4,500 reward if they satisfactorily complete the project on time. Organizations can volunteer to be mentors which means that they assign a project and evaluate the results.

Here are the proposals from the open source CMS projects:

  • Apache Lenya: Search enhancement, improving the integration with WYSIWYG editors, workflow engine improvement.
  • Bricolage: Porting to Apache2/mod_perl2, porting to other databases (currently supports PostgreSQL only), improve WebDAV support, improve Subversion integration, improve the installation process (amen), site tagging and rollback, improve Unicode support, improve the bulk edit interface, bulk upload of media documents.
  • Drupal: Drupal automated test suite, Quiz module, workflow engine, social context of content, REST API implementation, AJAX (buzzzz), subscriptions for module core.
  • Mambo: XHTML Compliance, virtual filesystem library, AJAX library, rich internet application for administration.

This looks like a great idea to get people involved with open source and a great way for Google to identify top technical talent.

Labels: ,

Monday, June 13, 2005

New Plone Book: PloneLive

There is a new Plone Book available: PloneLive 1.0 by Michel Pelletier and Munwar Shariff. What makes PloneLive really interesting is that it is a LiveBook that is constantly being updated. You can buy it print on demand for $44.95 from Amazon or a year's subscription for $29.95. The PloneLive Site also has a blog and other content. The authors and SourceBeat (the publisher) make a good point that traditional publishing mechanisms may not be able to keep pace with rapidly changing open source projects and dynamic books are the best way to document. Unlike a project wiki, the authors are compensated for their content. It will be interesting to see if this publishing model takes hold.

Unfortunately, the authors made a bad choice in selecting a sample chapter so it is difficult to tell if the book is any good. The sample chapter just superficially covers what a content management system is, what Python is, and how to install Plone.

For an excellent book on Plone, check out The Definitive Guide to Plone by Andy McKay. Almost the entire book is available on SourceForge but I would not do without my paper copy.

Labels:

Two articles on the State of OS CMS

There are two recent articles on the state of OS CMS: "The State of Open Source CMS" by Gregor Rothfuss in the Cutter IT Journal which you need to subscribe to read; and "Straight from the Source: Open Source Content Management" by John Harney in inaugural issue of Enterprise Open Source Journal.

Writing on this topic is a daunting task because the space is so expansive and dynamic. These authors have both done an excellent job of introducing the "market" and describing some of the trends that are happening.

Gregor Rothfuss is very qualified to write on this topic. Not only is he a committer on the Apache Lenya project, but he is also an officer of OSCOM - the organization of open source CMS projects. One of Gregor's more interesting points is that the OSCMS space is overcoming a history of fragmentation with no clear market leader. One of the developments that may change this is the Java Content Repository (JSR 170) which will lower switching costs and allow different CMS to become more interoperable. Open source CMS projects are outpacing their proprietary counterparts in adopting the JCR partly because vendor lock-in is not on their agenda.

John Harney's article is a good introduction to content management and open source. In it, John discusses base content management features that are supported by open source CMS and the advantages and disadvantages of adopting an open source solution. There is particular attention paid to Zope with mentions of OpenCMS, Mambo, TYPO3 and WebGUI.

Labels: