Category: Content Management

Enterprise Content Management (ECM), Web Content Management (WCM), Document Management (DM). Whatever you call it this category covers market happenings and lessons learned.

Alfresco announces new CEO

Unless one of your New Year’s resolutions was to engage in a complete media blackout, you’ve undoubtedly heard the news that John Powell, Alfresco co-founder and CEO, has replaced himself with Doug Dennerline. Here are some of the places the news was covered:

John Powell has made public statements about a future IPO previously, but this is more than a comment during a keynote, this is a serious step toward that milestone.

Most of the coverage has either been about Alfresco’s decision to come to the US for what it sees as a market better-suited to tech offerings or about Doug’s extensive Software-as-a-Service (SaaS) experience and what that means for Alfresco’s continued expansion into the cloud. I (perhaps mistakenly) always assumed Alfresco would go public in the US market. And, although Doug’s experience will definitely be a huge asset as we push further into the cloud, the idea that we see our future in the cloud isn’t a lightning bolt either. Instead, my biggest takeaway from the news is what a class act John Powell is. It takes a real leader to objectively stand back, take an assessment of what is needed to achieve a particular goal, and then execute on that, even if it means taking yourself out of the role (especially when the company is doing well).

I definitely admire what John has done for Alfresco and I’ve enjoyed working with him–luckily, he’ll be keeping his board seat, so no sloppy goodbye is necessary.

By the way, if you are going to be in the San Francisco Bay Area on January 30, the Bay Area Alfresco User Group is meeting that night and both Doug and I are planning on attending. You should come to the meetup, welcome Doug to the Alfresco community, and share your Alfresco story.

 

Announcement: Apache Chemistry cmislib 0.5.1 now available

The Apache Chemistry project is pleased to announce that cmislib 0.5.1 is now available (home, docs). Developers can use cmislib to write Python applications against any CMIS-compliant repository such as Alfresco, SharePoint, Nuxeo, and FileNet. You can download the client library from the Apache Chemistry cmislib home page or use Setup Tools to install the library quickly and easily.

This release features support for renditions, so if your repository supports things like thumbnails, you can retrieve a list of those for a given object. The new release also supports passing in arbitrary HTTP headers. That is one way to enable authentication scenarios beyond basic authentication such as OAuth2, which is the authentication mechanism Alfresco in the Cloud uses.

If you are brand new to CMIS, here are a few links to get you started:

In addition, I’ve been working on an Apache Chemistry and CMIS in Action book with Jay Brown and Florian Mueller. The book is available now through Manning’s early-access program.

Alfresco forums refresh on its way

I want to give you a short heads-up on a change coming to the Alfresco Forums. In short, we are migrating the Alfresco Forums to a new platform. This is part of a larger initiative aimed at reducing the number of accounts required to engage with the Alfresco community, making it easier to fight spam and moderate the forums, and put us on a platform that will enable us to make the entire community experience better going forward.

Jeremy French is the developer leading up this effort, and he’s recently created a screencast that shows some of the new features:

If you watched the screencast, you may have noticed that we are consolidating our local language forums into one platform. This means that if you are participating in both the German forum and the English forum, for example, you won’t need multiple accounts and you won’t have to switch between the two systems. If you want to see forum posts written in German, change the language dropdown to German. French? Change the dropdown to French.

The new forums will have the same functionality you are used to, plus:

  • A new look-and-feel that matches the current alfresco.com theme.
  • A “folksonomy” of tags to help authors add additional context to their posts.
  • The ability to select a specific Alfresco version to associate with a topic.
  • Richer subscription options for both email notifications and feeds.
  • Gravatar integration.
  • Richer and more visible leaderboards.

The migration is about one month away. When we migrate, we will make sure that all of the data in the current forums comes across, including user accounts. As you saw in the screencast, URLs that point to threads in the existing forum will continue to work after the migration.

Immediately after go-live I think we’ll have a much improved forum system. But the whole reason we are going to the trouble is so that we can enhance it further with feedback from the community. So please do let us know if you have ideas we should consider for the backlog.

If you are coming to DevCon Berlin or San Jose and you want to play with the test forums, come find me or Richard Esplin and we’ll give you a peek.

What’s going on with Alfresco clustering?

I am way past due getting this blog post out. We’ve had multiple discussions on the topic in #alfresco on IRC over the last several weeks, but I want to make sure those of you who aren’t yet hanging out in IRC regularly are aware of some changes related to Alfresco clustering that have already happened with the 4.2.a release. In general, I would prefer to share this stuff way ahead of any release in which it takes effect, but that didn’t happen this time and I’m sorry about that. I promise to try to do better!

With that out of the way, let me shed some light on some recent changes that may affect some of you running Community Edition…

Until recently, clustering in Alfresco has been implemented using a combination of three main technologies: Ehcache, Hazelcast, and JGroups. If you’ve looked at it lately, you may have noticed that JGroups has been removed from the repository source code. What’s going on is that we are consolidating our clustering implementation on Hazelcast because it can handle everything we need to make clustering work. (On a side note, I believe this is one of those improvements that we’ve made to our on-premise software as a result of lessons learned running our own large-scale Alfresco implementation in the cloud).

So that explains what’s going on with clustering in the Enterprise Edition. But if you looked closely at the Community Edition source code, you may have noticed that Hazelcast is no longer included at all. In fact, all clustering related code (org.alfresco.repo.cluster.*) has been removed, including configuration files like cluster-context.xml and hazelcast/* and some changes to existing Spring configuration.

Now, at this point, some of you are probably thinking, “There was clustering code in Community Edition? I didn’t think clustering was supported in Community Edition.” You are correct. Clustering has never been supported in Community Edition. Community Edition is not commercially supported by Alfresco at all. But a lot of the pieces you need to make clustering work in Community Edition have been available until now, and there may be people out there who chose to get it working themselves rather than pay for an Enterprise subscription that includes support for clustering. These recent changes make it much harder to do that.

What I want to make sure everyone is clear on is that the removal of the ability to cluster Community Edition does not represent a shift in our philosophy on what should be in Community Edition versus what should be in Enterprise Edition. The principles John Newton outlined in his blog post, “Building a stronger open source product” back in 2009 still apply today. In short, functionality that supports large-scale rollouts (like clustering) or that depend on paid “Enterprise” software (like Oracle and WebSphere) should be Enterprise-only while everything else should be available to the community.

So rather than a change in philosophy, the removal of the clustering code from Community Edition simply implements the existing philosophy more explicitly. To be blunt, if your implementation is critical enough to require the 7×24 up-time an active-active, multi-node cluster provides, you should be able to justify an Enterprise Edition subscription. If you have high availability requirements but your rollout is relatively small or cost is an issue, perhaps Alfresco in the Cloud will be a fit.

Of the estimated 100,000+ installations of Community Edition currently up-and-running, my hunch is that this change affects only an infinitesimal fraction. But if you have feedback on this change, please do let your voice be heard, either here or by sending me email directly at jeff dot potts at alfresco dot com.

 

 

Screencasts of my favorite Alfresco 4.2 Community Edition features

I wrote up a list of some of my favorite new features in Alfresco 4.2 Community Edition in this blog post over at socialcontent.com. But I saved the best stuff for you, my loyal ecmarchitect.com reader: Screencasts showing those favorite features in action! Don’t worry, these are short and to the point. Hopefully just enough of a taste of each feature to get you to download Alfresco 4.2 Community Edition and try it out for yourself.

So without further ado, here are screencasts of my favorite new features in 4.2 Community (be sure to switch to full screen to enjoy their HD splendor)…

The new and improved Google Docs integration is very cool. I have a feeling this is going to be popular.

And how about that new Rich Media Gallery view in the document library? This is just one of multiple new document library views coming down the pike if I’m not mistaken. You can use the same extension points Ray used to create your own custom document library views.

There are a few new dashlets (Saved Search, Site Search, My Discussions) and some enhancements to existing dashlets (Image Preview, My Tasks).

Here’s one I’ve heard requested multiple times: Can I select multiple documents and download them as a zip? Boom. It’s in there. Another new document action is “Quick Share” which Alfresco in the Cloud users have been enjoying for some time. Now it’s available on-premise.

All of these screencasts were based on an October 8 nightly build using the binary installer. There may be some differences between what is shown here and what is in the final release.

So there you go folks. Download the new Community Edition release, try it out, and give us your feedback. I believe the plan is to have at least one more Community Edition release before DevCon. So you should definitely make it a point to try it out before you show up in Berlin or San Jose in November. That way you can slap these Engineers on the back for all of the great work they’ve put into this release!

The Public Alfresco API is Now Live: How to Get Started

At JavaOne this morning, Alfresco announced the general availability of the public Alfresco API. The public Alfresco API allows developers to create custom applications (desktop, mobile, or cloud) that persist content to Alfresco in the Cloud. The API includes CMIS plus some Alfresco REST calls that provide functionality CMIS does not cover.

Eventually, this public, versioned API will work against Alfresco in the Cloud as well as Alfresco running on-premise. For now, it is only for Alfresco in the Cloud, although the CMIS calls will work against both. (For example, on my flight to California I worked on an example using CMIS and my local repository. When I got to the hotel, I added in the OAuth authentication and my example worked against Alfresco in the Cloud).

To use the Alfresco API, all you have to do is become a registered developer at http://developer.alfresco.com. Once you’ve verified your email address, you can add applications to your profile. Each application has a unique authentication key and a secret. OAuth2 is used to handle authentication.

Once you have your authentication key and secret, you can start making calls against the API. Calls that hit the Alfresco REST part of the API return JSON. Calls that leverage CMIS return AtomPub XML. If you already know how to make CMIS calls, you already know how to use the Alfresco API–just grab the latest version of your favorite CMIS client, like OpenCMIS or cmislib, and pass in the authorization header. I believe you must use the 0.8.0-SNAPSHOT of OpenCMIS. If you are using cmislib, you’ll definitely need 0.5.1dev.

Here are some resources to help you get started:

If you want to discuss the public Alfresco API, use this forum and any of our other normal community channels like #alfresco on IRC or the Alfresco Technical Discussion Google Group.

Of course we’ll be talking about the API at DevCon in both Berlin and San Jose this November, so don’t forget to register!

Also, Peter Monks and I will be doing this month’s Tech Talk Live on the new API, so if you weren’t lucky enough to be in San Francisco for our session at JavaOne or our booth, you can catch the details there as well.

My New Book: CMIS and Apache Chemistry in Action

I’ve been working on another book project along with Jay Brown from IBM and Florian Mueller from SAP. It’s called “CMIS and Apache Chemistry in Action” and we intend for it to be the definitive guide to CMIS. I’m having a great time working with Jay and Florian who are two guys who have been heavily involved with the CMIS spec and Apache Chemistry from the beginning.

The book is being published by Manning and should be out in April of 2013. Today it has just been made available through the Manning Early Access Program (MEAP). We’re excited about having the book on MEAP because it means you can buy the book today and get the chapters as they are written. This gets drafts of the chapters in your hands quickly so you can apply what you learn to your projects immediately, but, even more importantly, gives you a chance to give us feedback that we can incorporate into the book.

I hope that everyone who wants to write content-centric applications on top of repositories like Alfresco, FileNet, SharePoint, Documentum, and so on, will benefit from the book, whether you are writing those apps in Java, Groovy, Python, PHP, JavaScript, C#, or Objective-C. The book starts out with an intro to CMIS and then moves through a real world example–a CMIS-based music mash-up application–built step-by-step. Once we’ve sufficiently covered the client-side stuff we move on to the server-side for those that need to know how to implement their own CMIS repositories.

The book covers the current 1.0 specification as well as the forthcoming 1.1 version of the specification.

We’ve still got a lot to write, but it feels great to reach the MEAP milestone. I look forward to hearing feedback from all of you as we continue to knock out chapters this Winter.

If you want to buy the book (MEAP or print, when it is available), you can use this code to get 37% off: 12cmisal.

Two oldies but goodies: Screencasts showing Alfresco, Drupal, and Open Atrium

Back when I was at Optaros and CMIS was first showing up in Alfresco in draft form, we developed the Drupal CMIS module. We had a few customers interested in combining the two technologies but I think we were a few years ahead of our time. Now it seems I come across people wanting to combine the two nearly every week in IRC, the forums, or in internal discussions. Alfresco has contributed additional modules for Drupal integration. And multiple partners have full-fledged solutions or service offerings built on top of both.

Optaros has changed their web site a bit since those days and a couple of screencasts I recorded back then have been removed. Because so many people are still interested in this topic, I’ve posted them on YouTube, with Optaros’ permission (thanks!).

So, if you want to see some examples of Drupal and Alfresco working together, here are a couple of screencasts from the archive…

Drupal Plus Alfresco (Original post, 4/7/2009)

Open Atrium Plus Alfresco (Original post, 10/13/2009)

Drupal, Open Atrium, the CMIS modules, and Alfresco have all progressed since then, but the general gist is the same.

Thanks to Optaros for letting me make these available!

New Dashlet Challenge Deadline: 10 September

Multiple people have asked for an extension of the Dashlet Challenge deadline. So let’s extend it to September 10, 2012 at 12:00 BST. That gives you this weekend and next weekend to get your entries submitted.

That’s also the last day of DevCon early-bird registration. Because some of you might be waiting to see if you win DevCon passes for your submission, it means you are risking missing out on the early-bird discount. I don’t want this to happen, so if you submit your Dashlet Challenge entry by the new deadline, I’ll make sure you get early-bird pricing if you don’t win a DevCon pass. Sound fair?

Now get to coding!

DevCon Hack-a-Thon & Activiti Day

Just a quick note about recent DevCon goings-on in case you’ve missed this via other channels…

Early-Bird Registration Ends 10 September!

Just a friendly reminder: You can save some money if you sign up before 10 September, so do not wait to sign-up.

DevCon 2012 Promo Video

Includes a few quotes from the Alfresco community’s colorful cast of characters.

http://youtu.be/-bL1wZ1k22k

DevCon 2012 Hack-a-Thon

We’re going to be doing a Hack-a-Thon the day before the main conference starts in both Berlin and San Jose. This will run concurrently with the optional Fundamentals and Advanced Training classes. So if you are an Alfresco old-timer who doesn’t need Fundamentals or Advanced training, show up a day early and join us in the hack-a-thon. We’re still deciding which projects we’re going to work on that day. More info will be posted on the DevCon Hack-a-Thon page as it develops.

Activiti Day Berlin

If you are attending DevCon Berlin and you have any interest in Activiti, you should plan on staying an extra day and joining us for an Activiti Community reception the night of 7 November and then an all day Activiti Community event on 8 November. See the DevCon blog for more details.

DevCon Lightning Talks Debut

We’re planning on having two lightning talk sessions, one on each day of the main conference, at both DevCon events this year. We are planning on using the Ignite format, but if that is holding a significant number of people back, we may decide to relax that requirement. If you want to give a 5-minute talk at DevCon, sign up now.