An Analysis of Acquia's Drupal Commons
Aug
19
2010
The Purpose of Drupal Commons
I talked to Jay Batson (vice president and co-founder of Acquia) while writing this article and he confirmed what Dries Buytaert himself had implied in a blog post: the goal of Drupal Commons is to compete with the likes of Jive SBS and Telligent. Jive and Telligent are expensive software designed to allow easily setting up a business-oriented social website. Acquia started working on Drupal Commons in response to inquiries from large, multinational companies who were frustrated with the limitations of the proprietary social enterprise software choices. They liked the flexibility of Drupal, and were willing to pay for it – but they weren’t comfortable starting with “just” a framework. They wanted a base on which they could build, something that they could market to their CEOs as “enterprise-ready out of the box” while still being easily extensible. These companies are the target market for Drupal Commons; they’re the ones who want to pay for the services surrounding it.
…the goal of Drupal Commons is to compete with the likes of Jive SBS and Telligent.Jive and Telligent have a 4 and 5-year head-start, respectively, and Acquia knows that it will need to keep working on Commons to displace them. But the very existence of Drupal Commons is enough to make its competitors feel the heat. Unlike Jive and Telligent, Commons is free as in beer. It’s also open-source and (because it’s based on Drupal) has a vast library of extensions that make adding additional functionality almost as easy as clicking a checkbox. Perhaps most importantly, it’s totally extensible. Drupal is a framework; it’s designed so that any part of it can be modified or replaced. According to Jay, much of the enthusiasm Acquia has heard about Commons is from companies ecstatic to be liberated from the restrictions of the very limited APIs that accompany proprietary software. No longer do companies have to be held back by a roadmap of features that will never get written; in the rare case that a Drupal module doesn’t already exist for the purpose, it’s possible to create a new one that does the job. Not so with Jive and Telligent.
It’s not as if Commons is lacking in default features, either. Acquia has focused on the right features to meet the needs of very large companies. The result is a solid starting point for large businesses to make the transition to building relationships with their customers over the internet. Drupal Commons provides a fairly complete business-oriented community structure out of the box.
Oh, and did I mention that it’s free? That fact alone dramatically reduces the risk of experimenting. The tech guys can install it on their local computer, test it out, let the manager play with it, and decide if it’s something that could benefit their company. That’s just not possible with Commons’ competitors, whose fees are prohibitively steep.
Social Networking vs. Social Enterprise
Drupal Commons is not designed to be a social network – it is designed to be social enterprise. Here’s the distinction: social enterprise sites are designed to be administered by a privileged group representing a company – a group that moderates posts and answers questions on a website devoted to discussing a brand or products. (Interestingly, Jay told me that Acquia had allowed all users to create and moderate groups until a few days before launch, when a number of beta-testing companies pushed back.) Norton’s Symantec community is a good example of an enterprise social community. In contrast, social networks are designed to be free-for-all sites focused on users and their content. Facebook is the pinnacle of social networks.So let’s be clear: Drupal Commons is not a social network like Facebook.The category Commons falls into is clear from the default User Roles alone: in addition to the standard Anonymous and Authenticated users, Drupal Commons provides a Community Manager and a Content Manager role. On a social networking site, all users would be content managers, and community managers would be global administrators.
What concerns me most about Commons is the gap between the audience it was designed for and some of the audience that will actually use it. Acquia is probably the most high-profile company in the Drupal community, so when they advertise a product as “social,” the large (but less lucrative) community of people looking for an easy way to build a user-oriented Facebook-style website will be attracted – and then disappointed. Jay assured me that if Acquia saw a demand at the business-customer level for a traditional social networking site, it would look into developing a solution – and while I believe him, I don’t think either of us really expect that to happen.
So let’s be clear: Drupal Commons is not a social network like Facebook, Twitter, LinkedIn, Flickr, YouTube, Buzz, Digg, Reddit, Care2, or TakingItGlobal. Drupal Commons is an enterprise social platform like Jive and Telligent, and it’s a fairly good one. There will be people who abuse that distinction, but no one will ever be able to stop people from misusing tools or not reading the documentation.
By the way, if you’re looking for a way to build a site like Facebook using Drupal, I can show you how to do it.
Flexible vs. Beautiful
There is a bit of a conceptual conflict inherent in Drupal Commons. Commons is designed to be something usable out of the box – something you can install and show your boss in under 15 minutes. At the same time, the incredible power (and in some cases, complexity) is still available, and that creates some interesting paradoxes.For example, Drupal Commons includes a custom theme based on the powerful Fusion base theme. It’s not very pretty, but it does have some customizations that make using Commons a little more fluid. According to Jay, the theme was intentionally designed to be flexible rather than beautiful so that companies could easily brand the theme in their own way. That wasn’t an arbitrary decision; it was something they got a lot of feedback on from the large companies testing the product. Some had tried OpenAtrium before (an out-of-the-box intranet based on Drupal) and had trouble customizing its default theme.
Drupal core is supposed to be “flexible rather than beautiful,” while Commons is supposed to be the awesome out-of-the-box experience.However, it’s an ironic choice. Drupal core is supposed to be “flexible rather than beautiful,” while Commons is supposed to be the awesome out-of-the-box experience. And Fusion is so amazing as a base theme that creating a separate Fusion sub-theme instead of forking the default Commons theme is relatively easy and practical. When I said this to Jay, he responded that I “spoke like a Drupal expert.” If Acquia was building websites using Commons, he said, they would probably create a subtheme of Fusion instead of modifying the Commons default theme. But because of Commons’ target audience, the people who will usually be branding a website’s theme will be the IT department at large multinationals. They will know enough CSS and HTML to play around with the default theme, but they won’t know enough about Drupal to create a new one. If they hire a Drupal company to build the theme, then that company should know enough to build a complete theme.
You’re probably beginning to see how much Acquia’s target audience influenced their design decisions. Luckily for smaller companies, and unlike with proprietary software, it’s easy to just switch out the default theme with one of the hundreds available on drupal.org.
Another interesting example is the actual decision companies have to make to use the Drupal Commons install profile rather than the Drupal core install profile. Acquia learned from Red Hat’s approach on this front. Commons, like RHEL, will attract business people – decision makers – because of the marketing language around it. Commons is billed as a Jive and Telligent competitor, which makes sense to executives. It’s presented as an out-of-the-box solution, which sells well to your boss. Acquia supports it, which the I.T. department appreciates. Drupal core doesn’t have that reputation, even though experienced Drupal developers can make any kind of website with it. As a result, the kind of developers that large companies with lots of money might hire might be able to scaffold the exact requirements of the business more quickly if they started from the core install profile instead of dealing with the assumptions Drupal Commons makes about the use cases of its intended audience. (Either way, companies will be able to build enormously powerful websites that do exactly what they want. It’s just a question of how quickly.) On the other hand, it seems to me that Acquia has pretty much gotten those use cases right, in which case building on top of Commons makes complete sense.
What’s Inside
Drupal Commons revolves around Organic Groups. A Commons-based website essentially consists of a bunch of groups, each of which can have their own forums, wikis, blogs, documents, polls, and activity stream. There are also userpoints, email notifications, bookmarks, user relationships, and a WYSIWYG editor (CKEditor, to be precise). Users and groups have pretty comprehensive dashboards that can be customized by administrators. Basically, these are the right features to have for an interactive corporate site, and they work as advertised. They’re also essentially the same features you would get if you installed the same modules as Commons on another site, albeit with some saner default settings.These are the right features to have for an interactive corporate site, and they work as advertised.Moshe Weitzman (the original author of Organic Groups) has a nice post analyzing the choice of modules, and I generally agree with him, although I’d like to reiterate two points. First, Heartbeat was an odd choice over Activity 2.x (and the much lesser-known Message). My theory about Heartbeat is that it was chosen because although Activity 2.x is fairly stable it doesn’t have a stable release. The way Commons uses Heartbeat, it is nearly functional identical to Activity 2.x, with the main difference being that Activity uses historical records while Heartbeat does not (a minor technical detail). I say that Heartbeat was an odd choice mainly because Activity has 5 times as many users and its code is more Drupal-y. They’re both actively developed although the Heartbeat issue queue is more aggressively maintained.
My second gripe is with the rules for which passwords are allowed. Weitzman wrote that “Password Policy should be classified as torture” – but this is not true. The Drupal Commons password rules are torture, yes, but the fault lies wholly with Acquia. Commons configures the password rules during installation to be inhumanly obnoxious. It would have been enough to require that passwords be a minimum of 5 characters long, which the Password Policy module can happily do. Luckily, the Commons defaults are not written in stone.
I’d also like to point out that the custom module Acquia wrote to display statistics to group moderators (called Quant, and now available on drupal.org) is pretty sweet. Thanks to my senior-year AP Statistics teacher Jason Smith, I’m fascinated by statistics, and I’ve tried and failed to write a comprehensive, extensible module to collect and display stats about a Drupal installation without writing dozens of complex SQL queries. To whichever Acquia engineer wrote the Quant module, please accept my hearty congratulations.
For more about what you’ll get when you install Drupal Commons (and why you should do it), take a look at the features and benefits Acquia lists. My favorite feature: “Oh, and it’s Drupal.” That implies security, quality, internationalization, extensibility, and scalability. Drupal’s greatest strength is its flexible API and module repository, so it’s easy to build on Commons to add additional functionality as you see fit. My favorite benefit: “Drupal Commons creates the online conditions that permit happy serendipity to emerge from your community members.” Okay, so it’s an arguable point, but “happy serendipity” reminds me of gumdrops and lollipops.
Final Thoughts
Before I got off the phone with Jay Batson, he said, “if there’s one thing I hope that you take away from this conversation, it’s that this is version one.” There were lots of features Acquia considered for inclusion in Drupal Commons and ultimately they chose to focus on the ones that were most important to their target audience and then get a release out the door. There will naturally be some growing pains, but there is an enormous upside for Acquia, Drupal, and Commons users. Acquia is committed to the continued evolution of Drupal Commons and the first version is a worthy launching pad. Future features will likely include group hierarchies (basically allowing sub-groups) and user-configurable dashboards. Other possibilities include document hierarchies, contact lists / newsletter ability, and tweaks to the Calendar system.Companies looking at Drupal Commons for a social enterprise solution can be assured that they will not be left in the dark.Drupal Commons has a few advantages over its competitors by virtue of being an Acquia product. There’s the technology – Drupal, of course – but there’s also Acquia’s hosting, support, and training services. Acquia will host a Drupal Commons installation for you, provide support to help you configure and maintain it, and train people in your company to moderate it through partnerships they refer to as the Community Roundtable. As a result, companies looking at Drupal Commons for a social enterprise solution can be assured that they will not be left in the dark.
As large companies embrace Drupal through Commons, the result will help Drupal become a better framework. They will fund features and patches (as they have already done through Acquia during the Commons development process). And these improvements will help the community grow.
It’s worth noting that Drupal Commons is built on Drupal 6. At the time of this writing Drupal 7 was still in alpha, and while the D7CX movement has done admirably well, not enough contributed modules have upgraded to make a Drupal 7 version feasible yet. Drupal Commons is also designed for stability, and Drupal 7 won’t be officially stable until the full 7.0 release.
Contrary to the hopes of some, Drupal Commons should not be mistaken for a user-focused social network. Instead, Commons is aimed at large companies, and it is a great choice for that audience. I also foresee Drupal Commons being particularly useful for in-house developers with less Drupal experience and for small- and medium-sized companies looking to use Drupal as a springboard for building better relationships with their users.
Acquia’s Drupal Commons provides a flexible social business platform out of the box. Version 1.0 is a solid foundation for future growth, but there’s plenty to like right now. Unlike its competitors, Commons is free and open-source, which means it’s easily extensible with custom code or the thousands of Drupal modules and themes. Commons is a fantastic contribution to the Drupal space – so go try it out!
Many thanks to Jay Batson for taking the time to talk to me about Drupal Commons and clear up a number of questions I had about it. I’m encouraged by this level of outreach and community participation – in keeping, of course, with the spirit of Drupal Commons.