Back in September I wrote a post about open source software driving the re-birth of “Shadow IT” outfits. Here’s a post that backs me up. Dion Hinchcliffe over at ZDNet cites examples of firms where wikis are proliferating un-checked. While his post is about Enterprise 2.0 and mine was about open source software more generally, the conclusion is the same: IT departments need to move now to facilitate the adoption of these tools or they will be faced with seriously fragmented technology footprints and data silos a-plenty.
John Newton, Alfresco CTO and Chairman, comments on Documentum CEO, Dave DeWalt’s recent departure on his blog. John worked with Dave when he was at Documentum.
As a side note, I’ve met Dave on a couple of occasions–one was a surreal experience in which Dave, Joe Tucci, one of my clients and I threw beads at conference goers from a mini mardi gras float (post). I was impressed with his desire to make a connection with as many conference attendees as he could. Rather than being ushered in and out of a large conference hall never to be seen again, Dave walked amongst the crowd and genuinely listened to feedback from his customers.
I also know he had developed sort of a cult following amongst Documentum employees. From a culture perspective, his departure from EMC seems like a huge loss.
Over thirty people showed up for the first-ever Alfresco Meet-up today at the Christian Science Monitor in Boston. Russ Danner, Christian Science Monitor developer, opened up the day with a short overview on Alfresco. I then led a short discussion on Alfresco as a platform which included talking about what Alfresco should and shouldn’t be used for. (Here‘s my deck. I’ve made small tweaks for clarification purposes.) Sumer Jabri, a consultant from D.C.-based Rivet Logic, drilled down on the Alfresco architecture. Sumer did a great job.
As is often the case, the most valuable tidbits came up during the roundtable discussion at the end of the day. Russ led the discussion but several others, including both integrators (Optaros, Eyestreet, Rivet Logic) and end-users (Shimano, MIT, Harvard, Kaplan), participated. The liveliest topic was why Alfresco WCM was rolled out without a practical static content deployment approach. Other topics included Liferay-Alfresco integration, JCR, and plans for future Meet-Ups.
Multiple participants said they were interested in seeing more case studies from production implementations. Everyone agreed the session was valuable. Thanks again, Russ, for putting it together.
Alan Pelz-Sharpe noted in a recent post at CMSWatch that it is becoming harder and harder to find talented Documentum and, more generally, ECM skills in the marketplace. This is yet another datapoint in a trend that has been building over the last few years. (In a post last January, I asked Documentum to open up the WDK. The resource shortage was one reason.).
In my opinion, this problem is only going to get worse, at least until open source ECM solutions unseat the proprietary vendors. Developers in the ECM space are much more excited about investing their limited
resources in open, standards-based platforms.
Becoming a guru in a proprietary solution within a rapidly commoditizing market may yield short-term gains but is a dead-end in the long-term. Ironically, it’s those short-term gains that make the problem worse–the people currently enjoying those short-term gains are more likely to continue riding the wave than they are to move into an IT shop.
So I see open source ECM solutions as helping the ECM market with the resource availability problem in two ways: (1) by being built on the frameworks today’s developers are interested in learning and (2) by removing the primary barrier to entry (software license and cost) thus exposing more developers and companies with ECM solutions.
Regarding the first point, when you compare a developer who’s built expertise around Documentum’s Web Development Kit (WDK), a JSF-like framework for building Documentum web apps, with one that’s invested in Alfresco in which the development model is based on JSF/Spring/Hibernate, the Alfresco developer has a better foundation of transferrable skills, whether that’s to pure web application development or other open source ECM solutions built on a similar stack. Developers spend time learning stuff they are interested in and they pay attention to transferability.
As for the second point, freely-available open source ECM solutions are more likely to find their way into the hands of developers (and the servers of enterprises, see this post) because there are no barriers to entry. This should result in a larger pool of resources experienced with working with ECM, in general, as well as specific open source solutions.
As a thought exercise, think about what the resource pool would look like if closed-source, proprietary vendors were the only game in town? The demand would have to be much greater and the solutions much more interesting to develop any sort of resource base interested in specializing. (SAP seems like a real-life example. SAP folks are expensive and hard-to-find and I don’t run into too many up-and-coming developers begging to be sent to SAP training at this point).
So if you are an enterprise struggling to staff your ECM “Center of Excellence” or maybe you can’t even keep the lights on in your server room, maybe it is time to take a long, hard look at open source ECM.
Have you checked out the Apache Solr project yet? It’s pretty cool. It’s essentially a search server (deployed as a web app into a servlet container) that sits on top of Lucene. Solr makes it super easy to get content into and out of Lucene via its HTTP and JSON APIs.
Recently, for a prospective Optaros client, we put together a little demo to show how Alfresco WCM could integrate with Solr to provide search and personalization for a web site managed within Alfresco. Here’s what we did at a high level:
- Create an Alfresco web form and XSLT for my web content as usual.
- Create an additional XSLT (or Freemarker) template to convert the XML content to the Solr format. This gets configured as an additional presentation template associated with the web form.
- Wrote a JSP to aggregate the Solr XML for all of the published content.
- Wrote a servlet to call the JSP every X seconds. It takes the response and posts it to Solr. That’s how the Alfresco content gets into the index.
This setup allowed web content to get indexed by the Solr search engine upon its creation. Web site users (either using the web site in the virtualized sandbox or on the production web site) could then query the content.
The web site was a mix of static HTML and JSPs. The JSPs used custom taglibs to call “Solr Search” widgets in the right spot on the page. This was the first time I had used Alfresco’s virtualization to run a real web application (as opposed to static content). The preview release of 2.0 I was using seemed to have some significant cacheing issues. Hopefully those are resolved in the production release. Other than that, it was easy to see how technical and non-technical content managers could leverage Alfresco virtualization to collaborate together to develop and manage a dynamic web site.
Before using this approach in production, I would need to think about the best way to handle deletes. In the demo, once content got into the index, it didn’t come out if the associated content was removed from Alfresco. As far as Solr goes, it is easy to get the content deleted from the index–it’s a simple HTTP post. The trick is where in Alfresco to put that call.