Current State of CMSs
Most of the stuff on the internet that doesn’t involve transactions fits into a nice generic bucket: Content. Content that is provided by individuals (primarily on social networks and blogs) and then of course, media outlets and companies (primarily websites with supporting social media presence).
The market for providing Content Management Systems (CMS) is a competitive landscape that includes titans such as Adobe and Oracle. However, the market is big enough for a ton of players, especially for the SMBs (Joomla, Drupal and Alfresco to name a few…).
Unfortunately, everybody does stuff differently and switching between systems is a nightmare for all.
Standardize The Chaos!
Creating standards across all of these platforms would ease the data migration and alleviate vendor lock-in. There are two standards that have been developed to address these issues:
- Java Content Repository (JCR) (based on JSR-170) with Apache JackRabbit as its reference implementation
- Content Management Interoperability Services with Apache Chemistry as its reference implementation
JCR has been around for longer but wasn’t able to get the job done (partially due to politics within the steering committee and the spec’s tight coupling to a specific language: Java). CMIS addresses the issues better and aims to tackle the same issue of interoperability.
Hurray! Mission Accomplished!
Not so fast! If you take a look at the CMIS adopters, there are a lot of significant players with large market shares that are missing from the list.
If they already have a loyal customer base, what value do they get by providing their customers an easy path to migrate off of their systems?
I don’t see CMIS doing what it was meant to do, especially for the larger systems as there may be little incentive to adopt the standard and there is no cross-platform CMS governing body that can require and enforce all providers to adopt a standard.
If anything, customers could be made aware of the specification as the gold standard for interoperability so that they look for it from the get-go instead of as a line item in a complex RFP where interoperability gets a sufficient score for a crappy SOAP service.