White Paper - Drupal for Open Source Content Management

In this article, we will talk about a real-world client experience in using Drupal (an open-source CMS). We will focus on the project needs, evaluation of various CMS in the context of these project needs, and finally our experiences with the strengths and weaknesses of Drupal. 

About the Project
 
The Sports Club/LA is a company that runs upscale fitness facilities in cities like NY, Miami, San Francisco and LA. They have over 40,000 active gym members, and offer thousands of fitness programs such as Yoga, Pilates and Personal Trainers. Despite a customer base that is increasingly web-savvy, the company had never invested in a significant web presence. Its new management decided that this situation had to change, and commissioned a new e-business website to drive online sales and generate leads through the web, and also reflect the upscale nature of the brand with an attractive design.
 
In particular, this project imposed the following requirements on a content management system:
  • Robust Low-Cost Content Approval and Publishing: The Company has clubs nationwide that publish their own content: local news, promotions and events, as well as activity calendars which must be kept up to date. This dynamic content is managed by dozens of administrators across the country. It has to be very easy to create, get approval, and publish to the website. However, commercial CMS such as Interwoven or Vignette are expensive and beyond the budget range for the project.
  • Extremely customizable User Interface: The Company intended to thoroughly re-brand itself, and reflect its own image in terms of images, layout and color. So, the CMS had to allow for absolute customizability on the front end.
  • Work well with Webservices: The Company interacts with its customers using the SalesForce CRM system, and it wanted all sales leads and customer feedback originating at the website to flow directly into SalesForce, eliminating the delays of batch feeds or faxes. This meant that the CMS had to work well with Webservices, which was essential to enable this business need.
  • Robust E-commerce modules: The CMS had to ideally have pre-built e-commerce modules that could be customizable.
  • Support for Mashups: As a large chain offering thousands of programs – Yoga, Pilates, personal training, aerobics, racquetball, swimming lessons, etc. – the company needed a robust scheduling system able to communicate event calendars for every club. Building such a system in-house would have been extraordinarily expensive. Although there are several low-cost vendors that offer this functionality, integrating their system into the website would have been unattractive and cumbersome. This meant that the CMS had to be able to provide Mashups capabilities.
  • PHP/Java/.NET: Although they were flexible on the choice of a technology platform, the UI design partner was more comfortable with PHP as a means for quickly and flexibly building modular user interfaces.
CMS Evaluation
 
Based on these criteria, we searched around and shortlisted four CMS mostly based on market leadership: Drupal, Alfresco, Joomla and Liferay. We then reviewed articles on the internet as well as conducted some internal tests, and came to the following conclusions:
 
Criteria
Drupal
Alfresco ( Not Free)
Joomla
Liferay
Content Publishing
Good
Good
Average
Good
Customizable UI
Average
Good
Average
Good
WebServices Support
Average
Good
Good
Average
Mashup Support
Good
Average
Poor
Average
E-commerce Modules
Good
Good
Good
Average
PHP Support
Good
Medium
Good
No support
Developer Community
Good
Good
Good
Good
Market Momentum
Good
Good
Good
Good

After reviewing the data, we felt that although Drupal’s ability to customize UI and support webservices was suspect, it did very well on other criteria – in particular PHP, the developer community behind it and market momentum as well.

Learnings about Drupal 

After having gone through several website implementations now, we wanted to outline some learnings that we have had on the strengths and weaknesses of Drupal:
  • Keep it Simple! Drupal’s standard version is quite easy to implement and go-live. But, be wary of extensive back-end customizations: very quickly you will end up needing expert Drupal help that is available on Drupal forums for a fee. Our development team did not have prior experience in Drupal, and we really did underestimate the effort it takes to ramp up on the framework, and it took us around 40% more time than anticipated to really get comfortable with the system. But, now that we are comfortable, we anticipate about a 30% savings in time/resources than building a purely custom website.
  • We were initially worried about the real customizability of the UI. However, we were pleasantly surprised by how easily we were able to achieve this. Drupal really works well in this regard.
  • Drupal provides a number of easily pluggable modules like those for ECommerce, SMTP email, blogs, news and SSL. This facilitates quicker implementation and going live with a site, significantly cutting on the time to develop, integrate and test the modules available in Drupal. But again: Keep it Simple! Be very wary of customizing any of these modules – especially ones like E-commerce.
  • We used the latest version of Drupal (V 5.2) for ourimplementations, largely because of better support for AJAX and Content Construction Kit (CCK). We used AJAX extensively on the website: dynamic form validations, enhancing the search with “recommend-as-you-type” functionality and CCKto enhance the forms available in Drupal.
  • Creators of Drupal chose innovation over backward compatibility that in turn gives it more flexibility. However, due to this reason, customizing and maintaining Drupal sites is not easy and warrants a dedicated and experienced team, and makes upgrading a site to a newer version of Drupal complicated and time-consuming.
  • Drupal has an exhaustive list of built-in applications like Blog, Chat, Classifieds, Contacts Managements, Data Entry, Discussion Forums, Document Management, Time Tracking, Weather etc, some of these are either not supported by others or will cost you something. This is a bonus.
  • Finally, we were pleasantly surprised by the number of Drupal hosting services available in the market that make it easy for clients to go live easily and quickly... This was a really nice thing about the Drupal ecosystem.
  • To summarize, we have had a great experience with Drupal, and we would definitely consider it for projects under $50,000 - $75,000. For some more of the complex projects, Drupal might not be a good choice…but it keeps getting consistently better, due to its strong developer community and ever-growing market momentum.
About Inkriti

Inkriti is a technology consulting company that delivers Web 2.0 Solutions for customer-centric E-business. Our solutions along with our global delivery methodology typically result in a 65% savings in IT costs, while reducing time-to-market and providing tremendous resource flexibility. Our customers include PCH, Redcats, Lillian Vernon, Time Life, Millennium Partners Sports Club, Toolking, Permission TV, Avitage and many others.

Inkriti is headquartered in Boston, MA and has a global technology center in India. For more information about Inkriti, please visit us on the web at http://www.inkriti.com or call (617) 233-7510.