Joomla vs. Drupal

An open source CMS shootout

by Daniel P. Dern,  February 14, 2011 http://www.dern.com

For many organizations (or individuals) with content to post and manage, blog tools like the highly popular WordPress may be more than adequate. But for companies with greater amounts of content, users, or complexity, including integration with ecommerce and also with other internal and external applications, a more comprehensive content management systems (CMS) is needed.

Here's a look at two popular open source content management systems: Drupal and Joomla! (the exclamation point is part of the official name, tsk tsk, but for punctuative simplicity I'm omitting it for the rest of this article). I've asked developers to weigh in on the strengths, weaknesses and unique features each offers, to help determine which is the best match for your organization's content needs.
 
Before we begin, it should be noted that both Joomla and Drupal keep getting updated -- e.g., Joomla 1.6 was released January 10, 2011, and Drupal 7 on January 5, 2011 -- and get more add-on modules. This is a good thing, obviously. But it also means that the opinions expressed in this article may become outdated or invalidated. As always. Ready? Let's get started.
 
The players
 
Being Open Source, the code for both Drupal and Joomla are free. In addition to the free core code, both have thousands of modules, extensions, applications, themes and other add-ons created by developers.
 
"Every Drupal extension is 100% GPL and free to download," says George DeMet, owner of Palantir, a Drupal based web development company (and co-chair of the March 2011 DrupalCon in Chicago). But the tradeoff for free is choice. "Drupal typically has one extension for a given function (e.g., for comments, Drupal Comments, for forums, the Forum module)," says Joomla co-founder Mitch Pirtle. By contrast, in Joomla, "you may find 15 alternatives, some open source, some commercial."
 
Some of the 6,876 (as of February, 2011) third-party extensions to Joomla cost money: "A typical extension is less than thirty dollars, and the vast majority are free," says Pirtle. "I've never paid for a third-party extension," says Pirtle. "For one customer site, I paid $45 for a Facebook connect extension."
 
But like a free kitten or car, acquisition of system code is only a piece of the TCO. There may be some cost to run Drupal or Joomla, (e.g., on a hosting service) and even if you're running free code internally, there are hardware costs. And, of course, there's the cost of in-house or third-party time to design and create the site, maintain it, and manage and administer content.
 
Claim to fame
 
Drupal's arguably best-known claim to fame is having been chosen in 2009 to power the relaunched WhiteHouse.gov website.
 
Extensions aplenty
 
As of February, 2011, there are a whopping 6,876 third-party extensions to Joomla available in the Joomla Extensions Directory
 
Marketshare
 
About 4.2% of all websites use either Joomla or Drupal. (Source: W3Techs.com)
 
Comparing and contrasting: Let the jousts begin!
Drupal, according to Target Info Labs' Zaki Usman, "is oriented for the developer rather than the designer. It's not good for small to medium traffic websites -- overkill for such a project. Drupal is really robust in creating scalable, reliable websites. Drupal will cost a bit to maintain, as it requires a team of developers to add new functionality. Drupal is good for sites that require interactivity."
 
Joomla, Usman says, "is more intuitive to use than Drupal, so the cost of use/training/implementation is lower than Drupal. Joomla is also very scalable, but is used in smaller sites than Drupal sites. Joomla is a good choice for medium sized deployments."
 
"You can use Drupal for just about anything," says Palantir's DeMet. "Especially with Drupal 7, the list of things that Drupal traditionally hasn't been as good at is smaller. For example, for the entry level client looking maybe for a personal website or a blog, Drupal wasn't the right choice for that. But there are now hosted services like Drupal Gardens that allow you to do it, like WordPress or SquareSpace do." 
 
Drupal is also good, says DeMet, "If you're looking to do something large and enterprise level, with integration with third-party systems. For example, we do a lot of work with higher education, and with cultural institutions like museums. With museums, we have to work with their digital asset systems and collection systems, systems that may have questionable APIs or need a lot of coding. And higher education organizations have course management systems, (e.g., displaying courses on the website). Drupal lets us pull the data out fairly easily."
 
The biggest difference between Drupal and Joomla is the way that the "communities are structured and operate," says DeMet. "Drupal is a big, large, open, chaotic community, and fairly decentralized. So a lot of stuff tends to bubble up. For example, for Drupal 7, there were about a thousand people contributing code to the release, not counting working on documentation and other things that went into the project. Versus Joomla, which has a much smaller core development team, and I think a more
hierarchical structure in terms of how the community is managed."
 
Another community difference: How the communities get together. "Drupal has two big conferences each year -- one in the United States, one in Europe -- each pulling in a few thousand people," says DeMet. "Joomla tends to have smaller, more regional events -- which Drupal also does. Having these big conferences lets Drupal developers get together and collaborate."
 
The entrance of Acquia onto the scene has solidified Drupal's place in the enterprise market, says Christopher Wells, a Member/Developer at Redfin Solutions, LLC. "This means that the 'big guys' have nothing to fear about implementing an open source project -- they can always get support for their Drupal installation, even if everyone in their organization who knew anything about the Drupal site left tomorrow. I believe this is what has helped pull in major sites like whitehouse.gov for Drupal."
 
Technology issues
 
Technology aspects may drive your choice, notes Mitch Pirtle. "The hosting company may not support PHP 5, which means you have to stick with Joomla 1.5, which is going into maintenance, or go with Drupal, which doesn't yet require PHP 5. If you're using younger PHP programmers, they'll probably get up and running faster in Drupal -- I think there's a steeper learning curve in Joomla."
 
Pirtle adds that "if you don't understand basic object oriented techniques like object inheritance, you'll have more trouble with Joomla. With Drupal, you can typically find the piece of functionality you want to change in one spot, and make your changes, where Joomla is more sophisticated in its architecture, and you have to work in multiple locations to fix something like a particular theme."
 
Palantir's DeMet prefers Drupal, for scaling and flexibility. "From a technical perspective, I work with Drupal because of the kind of sites we build. There's a type of site that Joomla is good for, but if you try to scale it up too much you can hit a ceiling in terms of capabilities." Also, says DeMet, "Drupal is more like a framework to me. It's in the middle between a CMS and a framework, with the flexibility of a CMS and the functionality of a framework. We can do tight third-party system integration with Drupal that wouldn't be possible with another system."
 
David Lohmeyer, Web Coordinator at non-profit Acton Institute, says, "With Drupal, it is easy to move a site and set up new sites quickly. It's even easier in Drupal 7 with the new sites.php configuration for staging/dev sites. It's great for multi-site setups by using pluggable folders under the "sites" folder so you don't have to maintain multiple installations of Drupal. 
 
Lohmeyer does ding Drupal with a few dislikes: "The 1 time out of 10 there isn't a Drupal module it's sort of a pain. It's easy to integrate your own script though and use Drupal as the "shell" for access control and other site features. Unless you have a preconfigured installation you use for sites, configuring a new site takes a decent amount of time. And the learning curve is high."
 
On the other hand, Lohmeyer chose Drupal for one site with over 3,300 content pages (migrating from a proprietary CMS), "because of the ability to provide all of the complex features like dynamic layouts, lots of menus, great SEO, and more," and for another site, "because of the Webform module. With some custom jQuery, Webform is able to handle very complex class registrations and prerequisites for a specific form."
 
Documentation, ease of use, orientation
 
Chuck Hriczko, an application developer at Accella, Inc., who worked on both Joomla sites and Drupal sites, says: "Generally, if I'm going to use one of these CMSs, I'll use Drupal. What I like about it, there's generally better and more documentation, and where the documentation is inadequate, the support community can provide the information -- generally, the documentation you'd need would be developer-specific (e.g. if you need to add a new module, Drupal has more info.).
 
"Joomla is geared more for designers, making it easier to do some things," says Hriczko, "while Drupal is more for developers, it has more extensibility, you have more power to create better modules. You have to figure out what your needs are. If you want the power to change it however you want: Drupal. But that requires being more of a developer. Joomla would be better if you want something that's easier."
 
In his Joomla Versus Drupal blog post (worth reading in its entirety), Joe Kemp, who has used both systems and built sites with them, says, "Drupal is more like a programming framework or language, while Joomla is like a program. Joomla is a good CMS if you are just starting out backend developing and your websites are not very ambitious. But after some time you will find it limiting and you will want something that is more general purpose."
 
However, Kemp notes, "Although I have put down Joomla, it's a good CMS to start with if you are new to the field. If you want to set up your own CMS with the least hassle and are not too worried about a custom architecture then Joomla is not a bad choice."
 
Making the choice
 
Justin Powell, who runs Twin Red Media, a small boutique agency that has standardized in Drupal, says, "We've used other CMSs as well, including WordPress and Joomla (and Joomla's predecessor, Mambo). While Joomla maintains an edge on ease of use, Drupal is much more flexible and scalable. We've deployed Drupal for sites where Joomla would work fine so the site would be 'future-proof' if the client later needed to deploy new functionality that Joomla couldn't easily support."
 
"We've been developing websites using Drupal (exclusively) for over five years," says Redfin Solutions' Wells. "We've built sites for corporations (PUMA North America), Universities (Harvard, UNH, Appalachian State), non-profits (New Hampshire Public Radio, the National Schools Public Relations Association, the Learning First Alliance), and many others in various sectors. "When we started years ago, we chose Drupal because at the time it was the most 'developer-friendly,'" says Wells. "We wanted the ability to build custom add-ons easily, tweak things we didn't think were quite right, and make sure we could extensively alter the look, feel, language -- everything! Today, Drupal is still this developer-friendly. I believe Drupal is still ahead of Joomla on the developer side of things."
 
"You often have a decision on CMS based on resources or business, not the technology," says Mitch Pirtle. "The good news is either way, you're picking a CMS that's more than worthy. Both are free, both have abundant 3rd party communities backing them up, both have a history of success."
 

And, Pirtle points out, "If neither Drupal nor Joomla seems a match for your situation, you've got lots more choices. For example, says Pirtle, "There's Plone, which is a CMS built on top of the ZOPE application server, which is a Python product with some C code; Radiant CMS from the RAILS community; SilverStripe; and Alfresco, a Java platform, which has a web services interface, and is aimed at the enterprise -- if you're a big publisher, you'd most likely go with Alfresco instead of Drupal or Joomla."