The rather standard for this time of the year weather was followed by the web content management standards talk. David Nüscheler, the CTO of Day Software, presented his take on the top WCM trends for 2010 from the architecture and standards standpoint.
1. Ciao, Vendor Lock-in
The first 2010 WCM trend identified by Nüscheler was around Web CMS vendor lock-in as a business problem. He said the content users create and contribute back into a content repository should be protected from being locked into any particular vendor.
Introducing the Content Management cloud (that includes WCM, DM, DAM, RM, Social Collaboration and other CM aspects), Nüscheler pointed out that there are many different use cases there, yet very little agreement in this sphere. Worry not, there’s a light at the end of the tunnel.
All disciplines of content management do agree on, at least, one thing: the notion of a content repository (CR). They also agree on a feature set that should be found in any CR. And that is RDBMS (== transactions, queries, etc.) + file system (== binaries, access, etc.) + “other good stuff you always wanted” like versioning and unstructured content management.
With a quick tour in the past, Nüscheler gave an overview of the history of standards from the goodies and oldies like DMA and WebDAV to the newest ones like JCR and CMIS.
J. Boye '09 -- David Nüscheler Discussing Standards
Being the JCP spec lead for the now official JSR-283 spec (the successor of JSR-170), Nüscheler -- of course -- talked about JCR adoption and success tracking. JCR became synonymous to "content repository" over the past several years, but the adoption is not driven by how many vendors support the standard, but by how many applications are using the standard to build on top of.
Day CRX and Apache Jackrabbit were mentioned as some of the known compliant repositories along with many others like IBM, Alfresco, Interwoven, Vignette, etc. A considerable number of known JCR applications filled the next slide in the presentation.
Moving onto CMIS -- which Nüscheler is also working on in collaboration with several other content management vendors -- noted that JCR and CMIS are complementary to each other with different scopes and goals. Nüscheler, referring to himself as a liaison between JCR (a Java spec) and CMIS (a protocol spec), stressed the notion of CMIS, in essence really being DMIS, with its focus on Document Management, and JCR being a general purpose content repository model.
While there’s a compatibility framework between the two, the main differentiator is that JCR is a content repository infrastructure, whereas CMIS is more about integration and interoperability. However, let’s not forget the link between the two -- Apache Chemistry -- that automatically turns any JCR-compliant repository into a CMIS-compliant one.
2. Apps are Sites, Sites are Apps
In the past, there was a big gap between people administrating web apps and those managing web sites, but they need to come together, said Nüscheler. We need to see a seamless integration of web applications (be it portals, business or e-commerce apps) into web sites, should be able to mash it up with an ease of a drag-and-drop of any application into any web site.
3. WCM is About Agility
They keyword here is componentized deployment. What is the reason why you have a CMS? So that you can manage content, structure and application logic. But the application logic can be buggy, not durable and will become outdated pretty quickly. It is just a matter of time before your content model is going to be wrong, stated Nüscheler.
J. Boye '09 -- David Nüscheler Discussing Standards
Therefore, we need a versatile mechanism to update broken application logic. And componentized deployment should be able to do just that, including:
- Updating and patching your app at runtime
- Extending the app without any downtime
- Modularizing various apps
So, think of OSGi and data first. This is the mantra to be used in the Web CMS world.
4. URLs Matter
It is no longer 1999, and URLs are no longer important only from the SEO perspective. Nüscheler’s advice here is to:
- Learn to REST (the term coined by Day’s Roy Fielding , by the way) and do things the “web way”
- Stop making URL mistakes like including anything resembling ?id=12345 in them. Instead, think RESTful URL decomposition, where the URLs reflect a content repository path.
- Don’t build a RESTless app for content authoring.
5. Treat Surfers Like Users
Yes, they are all users are users are users. Organizations need to exercise the same diligence for surfers as they do for internal content authors. Every user has a profile, and this data (e.g. name, e-mail, segmentation, forms content, etc.) should be, ideally, stored in a content repository.
But with nasty things like XSS attacks that may come as part of social collaboration and untrusted user-generated content, we need to control UGC with flexible workflows and sensible escaping of HTML. In JCR, you have a built-in XSS Protection Library to help you with Social Collab components and your JSPs, whitelist or blacklist to your heart’s content.
6. I’ll Fry if I Want to, or It’s All About Online Marketing
Remember the days of WCM baking (a.k.a delivery of static HTML)? Well, they are long gone. Or, so they should be. It’s now all about frying (a.k.a dynamic content delivery) and use of analytics to improve online marketing initiatives. Segment your audience and deliver targeted, personalized campaigns.
This should be the way to go in 2010 and beyond. Use MVT to test your content and let your users decide what they want. Except, if you’re still baking, you will not be able to use MVT, which is only possible in dynamic environments.
7. Web 2.0 is the Style of Modern Web Sites
AJAX, Flash, Flex -- they’re all part of today’s web. Client-side apps need to be able to bi-directionally interact with a content repository. The problem here, however, is that the majority of CMSs were built in the age of straight publishing, without the ability for Web 2.0 apps of direct full access to the repository.
In 2010, the buzzwords will be ActionScript and AJAX support. Meaning not just mere storage of static Flash files in a CMS, but full direct access to a CR.
8. Cloudy is Good for Stormy Traffic
Hardware is a major headache, said Nüscheler. Every time someone in an organization says “”I need hardware to run a WCM system,” a million of questions arises. What size? How many CPUs? What about backup? Firewalled or not? Do we need a load balancer? And all these questions may take time (and then some more time) to get resolved. Quite a labor-intensive process.
And to the rescue comes the cloud! Cloud offers hardware for rent that is scalable depending on how much traffic you get and how much you want to extend your WCM architecture during those stormy high-traffic days.
In the End
From 1999 to 2009, one thing changed drastically. And that is web means business, and all businesses gravitate to the web. Work with it.