Thoughts on Content Management and Open Source.

Thursday, February 23, 2006

The Apogee Project

French systems integrator, Nuxeo, makers of CPS, just announced a new project called Apogee. Apogee is an Eclipse RCP based thick client for ECM systems such as CPS, Documentum and Interwoven. I think this project has a lot of potential.

First of all, although everyone loves a web based client, there are some structural limitations of using a browser to manage files. For security reasons, browsers are designed to have very limited interaction with the underlying file system. Signed applets and ActiveX controls can circumvent this security system but users need to know what to trust and what not to trust. An installed thick client avoids this issue.

Training is a key issue in rolling out any content management system. If you can standardize on a UI, you may be able to lower your switching costs from one ECM product to another. Most ECM products have standardized on Windows Explorer as the interface by exposing the repository as a file share. However, this model has its limitations because Windows Explorer does not expose metadata and other functionality that makes an ECM system more than just a file system. There are work arounds. For example, Tortoise SVN and Tortoise CVS both give right click menu options for source control functions such as dif, check out, commit, and history.

For those who are not familar with Eclipse or Eclipse RCP, Eclipse is mostly used as an Integrated Development Environment (IDE) for building Java applications. However, it is designed as a framework for building many different other kinds of applications. Many big companies (such as IBM, BEA, Borland) that have their own IDE's contribute heavily to Eclipse. The idea is that there is core functionality that is common to many different kinds of business applications (navigation, editing interfaces, different views). Eclipse supports these basic services and the actual business applications are implemented as plugins. RCP is the core for building these plugins. For example, the open source reporting tool BIRT is implemented on Eclipse RCP. If you can get Eclipse installed on your users machines, rolling out Apogee and BIRT is very simple thanks to the Eclipse plugin manager.

It will be interesting to see if the major proprietary ECM vendors get behind this initiative. They could take the view that Eclipse contributing companies do: cooperate to reduce the cost of the delivering the basic core functionality and compete on the value-add differentiators. Somehow, I don't think that the big ECM vendors will have this perspective. One can always hope though.

Tuesday, February 21, 2006

Michael Sippey "dumbing it down"

Michael Sippey has a nice post annotating Tom Coates' slides on the future of web apps. Sippey adds to the dialog started by Jeremy Zawodny in a similar post by describing why Coates' rules matter. I think there are some good takeaways for the future of content in a Web 2.0 world.

Plone Roadmap

The Plone Blog just published links to a road map that describes the next three releases of Plone: a maintenance release (2.1.3), an infrastructure release (2.5), and the next major release (3.0). It looks like release 2.5 will take more of the configuration that is currently done in the ZMI and put it into control panels within Plone. There is quite a usability gap between the Plone administration pages and the underlying ZMI. There will be a new framework team setting the technical direction for Plone 3.0. The new team consists of Wichert Akkerman, Martin Aspeli, Rocky Burt, Raphael Ritz, Hanno Schlichting, Vincenzo Di Somma, and Helge Tesdal. Plone 3.0 is expected to have more AJAX based rich client functionality (LiveSearch, which was released in 2.1, is great), QuickEdit (which allows content to be edited a field at a time), and a number of performance enhancements. I was a little surprised that adding versioning to the core was not slated for this release. For versioning, the product that I like the best is PVSForPlone2, although CMFEditions seems to have the attention of Plone core developers.

Labels:

Friday, February 17, 2006

ECM as Infrastructure

A couple of days ago, I listened to an AIIM webinar presented by Stellent and DocuLab's Jeetu Patel. It has been a few months since I have listened to commercial ECM messaging and I have to admit that I was a little surprised. The key theme was ECM as Infrastructure. This concept is not new, Alan Pelz-Sharp nicely described the trend of Oracle, ECM, IBM, and Microsoft working their way into the content management market. The growth of several standards in content management (JSR 170, JSR 168, DocBook, and DITA...) shows that buyers now think the technology has reached a point where it is "good enough" and they will no longer stand for being locked into a single vendor's technology stack. Now that the basic functionality is widely available, companies can now make more strategic choices about their technology portfolio.

What surprised me was that the message was sponsored and endorsed by Stellent, a pure-play content management company. Moving content management into an infrastructure play essentially commoditizes the space and makes it even more accessible to the big hardware/software vendors and, you guessed it, open source. This reminds me a little of ATG. They used to have one of the better Java web development platforms. They were one of the earlier companies to have a certified J2EE application server and they pushed the envelope on Java Server Pages with their tag libraries. We all know what happened after that. Java application servers became dominated by BEA and IBM then open source (Tomcat (really a servlet container but frequently used as a web application server), JBoss, JonAS, and Geronimo) so ATG got out of it. Their repository layer was no longer special thanks to open source object-relational mapping technologies like Hibernate and Castor. Their "Nucleus" architecture is no better than open source Inversion of Control frameworks like Spring. Now they just keep their customers with their personalization and commerce functionality. The customers that don't use these features are drifting away from the technology. So will Stellent become a big infrastructure winner like BEA, IBM, and Oracle? Or will it suffer the same decline that ATG did?

Jeetu's part of the talk was mainly about Service Oriented Architecture, which is also one of our practices. Our SOA practice lead, Adam Michelson has two excellent white papers ("Service Oriented Architecture and Open Source Solutions" and "Delivering Service Oriented Architecture") that discuss how to leverage open source in service oriented architecture. One of the key aspects that Adam really understands and is able to eloquently communicate is that SOA is more than just installing an Enterprise Service Bus (ESB). Success in SOA, like all previous generations of Enterprise Architecture, requires diligent planning and consideration for the organizational and political context. The technological plumbing is secondary. You just need to make sure that you are supporting the right standards, your components are reliable, and get into the right pricing model success (putting more applications on the bus) is not cost prohibitive. Adam also makes the point that it is difficult for a Service Oriented Architecture to cross divisional or P&L lines because of conflicting priorities and the inability to standardize. So maybe an enterprise-wide content infrastructure in a large company is unrealistic. I think Jeetu's talk, while very good, under-emphasized these issues. Still, I think that there is a huge potential to establish some core content services at the divisional level - which is where most I.T. decisions are really made anyway.

Other good points in the talk:

  • 80% of content is unstructured
  • 90% of content is unmanaged
  • This unstructured content grows at a rate of 36% per year.

Wow. I have to get to work!

Labels:

Tuesday, February 14, 2006

Joel Spolsky's Translations Wiki

Joel Spolsky, author of the very popular technical blog Joel On Software, is currently doing an experiment of using a wiki for translating his blog content into other languages. From his global readership, Joel definitely has the resources to do the translation, it was just the management and coordination that proved to be the problem:

Sadly, I fell down in face of the effort needed to maintain 30-odd local language versions. Such a job can't be coordinated by one person, especially when that person is me.
The translation wiki (powered by MediaWiki) seems to be having some success. Joel announced the wiki on January 27th and there are already 117 registered users generating a good amount of content. The Spanish, Greek, Hebrew, Japanese, Polish, and Russian sections have the most translations.

A wiki allows users to work directly with each other to sort out issues like "speakers of the Flemish dialect ask me to change it one way, then speakers of Netherlands Dutch suggest putting it back, and I have no idea what they're talking about!" What of the concern of vandalism? Joel feels confident that the community will work it out: "If you're feeling naughty, add some fart jokes to somebody's excellent translation. We'll see if the community spots it and fixes it." Fortunately, the Joel's readership is probably dedicated and smart enough to be up to the task. (BTW, there are two very good articles on Wikipedia in the Boston Globe here and here that talk about the culture of the Wikipedia). There is also a page that serves a place to discuss cultural reference and terminology questions. There is also a kind of logistics page and a guidlines page to mention best practices.

So what are the weaknesses of this format? The key one that I see is the lack of structure. However, it is really no worse than the source (blog entries) the only thing missing is a field for date and title. There is a guideline to link back to the source article so it may be possible for the translations to share this information with the original article through a very loose foreign key relationship. Using WikiText may make it easier to parse content than giving users HTML WYSIWYG editors. It is not too difficult to parse MediaWiki text. For example, "==" means a HTML heading level two (H2) tag. But in a WYSIWYG editor, you would most likely get some kind of font tag which would give you no clue that this was the heading of a section.

I will keep my eye on the Joel on Software translation wiki. It looks like it has all the ingredients for successful wiki: dedicated readership, good content, and community.

Thursday, February 09, 2006

AJAX: thick client feel in a thin client wrapper

Unfortunately, I missed Tuesday's Boston PHP User Group meeting because it was an excellent one. Our own Steve Zimmerman, along with Gabe Ricard from iMaxWebSolutions.com, Max Carlson from OpenLazlo, and Adam Peller from IBM all talked about AJAX. My colleague, Eric Shea, took notes and posted them on his blog.

California Holds Hearing on Open Source Software in Election Systems

Apparently the government listened to my assertion that I would only vote on an open source electronic voting system. This article reports on hearings within the California State Senate about using open source software in election systems. The article also points to several large companies that are actively using open source:

A number of private businesses, including Bank of America, Amazon.com, America Online (AOL), DreamWorks, Charles Schwab, IBM, and Merrill Lynch, have begun using open source software for some applications. Furthermore, the Department of Defense, the State of Massachusetts, and the California Air Resources Board have begun to migrate some of their computer systems from proprietary to open source software.

Wednesday, February 08, 2006

Joomla! Announces Developer Portal

The Joomla! project just announced the launch of their new Developer Portal. Joomla! already has the Joomla! Forge site which is a SourceForge for Joomla! add-ons and a very well managed and helpful user forum. The goal of the Developer Portal is to be a destination for the Joomla! community. Content includes the blogs of the core development team, the most recent forum posts, working group outlines, documentation, and IRC chats.

How Open Source CMS Fits into the Future of Digital Publishing

In his summary of the SIIA Information Industry Summit, John Blossom makes some interesting observations about the future of the publishing industry. His ideas were largely based by the presence of Craigslist CEO, Jim Buckmaster, and his measured customer focused approach to the content industry that appears to be so successful. Some of the points that John makes that I think are directly relevant to open source.

  • "Online publishing is swinging the base of the content industry back to small to medium businesses." I think that content is distribution is shifting focus from creating a content destination to a syndication model where you have many publishers that are aggregated in different ways. Using an open source CMS, many of which have syndication support built in, it is inexpensive to establish enough infrastructure to become a node on the content network. Success is determined by the quality of the content rather than the scale of the source. The extreme of this is a simple blog.
  • "Getting technology right is important, but it's not as important as building trust with your users. " To support this point the John talks about Craigslist with its primitive layout and simplicity. To quote further: "Identifying a core need and filling it in a way that people really like and trust takes just a smidgen of carefully developed technology in many instances." Identifying that core need often requires experimentation and agility that precludes making big bets on technology.

One of the key values of open source is that it is inexpensive to try an idea by putting just enough technology in place test for business value. If the idea is successful, the solution can be scaled and evolved to support additional requirements as they surface. Putting in commercial technologies that are targeted for feature focused "enterprise software selection" diverts attention from the original business idea to the elaborateness of the tools. I think this is a lesson that Web 2.0 has learned from the Internet bubble.

Labels:

Monday, February 06, 2006

Plone and Zope 3

Rocky Burt wrote a nice post on how Plone development is converging with the new Zope 3 architectural patterns through the help of the Five Project. If you are just coming up to speed, Zope 3 is a major change from Zope 2.x and introduces some modern architectual patterns such as content views in addition to incorporating some critical content management functionality from CMF (Content Management Framework, an add-on product on top of Zope) into the core. Here Rocky's summary of the benefits and risks:

Benefits
Of course further development, refactoring, and refining the base architecture generally provides a more robust solution to such an extent that businesses have to spend less time and effort managing and supporting deployed solutions. Having reusable components means less time spent developing new components and more time spent plugging in existing components which proves to take less time and thus less expense.

Risks
Migration of existing sites can get quite complicated. Also having to deal with switching frameworks such as making it difficult to maintain backwards compatibility with third-party products. Of course this gets easier as more and more third-party products adopt the same Zope 3 develop techniques which means education of this process moving forward is vitally important.

In the end, he concludes that committing to the Zope 3 architecture and development style is the right approach. I would tend to agree.

Labels:

Plone Symposium

I just got around to registering for the Plone Symposium in New Orleans March 8-10. It looks like an excellent program of talks and tutorials. Here are the sessions that I am thinking about attending.
  • Best Practices: Plone Development
  • Make Plone Go Fast
  • Enterprise Search
  • Introducing CMF 2.0
  • Open Source in Construction: Digital Plan Room
  • Mechanisms to Promote Free Market and Open Source Software Innovation
  • CASE STUDY: Fundable.Org
  • Applying Plone to Business
  • CASE STUDY: Disney, An Intranet Success

With the low airfare and hotel prices, it is hard to think of a reason not to go.

Labels:

Wednesday, February 01, 2006

James Robertson: Taking a business-centric approach to portals

James Robertson of Step Two Designs recently published an excellent article on portals. As usual, James has a very pragmatic and even perspective in evaluating the business value of the technology. In addition to helping to define the term "portal" (I would say that over half of the projects that I have worked on that were initially described as portals were actually not portals at all.), the article reminds us that portal integration is only one click deep and is not a silver bullet to the enterprise information problem. But, if executed properly, there is business value in having a central place that summarizes information managed in different places.

One peculiarity that I did notice, was that Jame's definition of customization and personalization are the reverse of what I am used to hearing.

  • Personalisation allows individual users to tailor the portal for themselves (such as what information is displayed).
  • Customisation involves the filtering of information and tools to target identified user groups or roles (such as delivering information to specific geographic areas).

Must be a hemisphere thing.