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.
- 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.
|
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
- 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.
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.


