Why Drupal?

Drupal logo

Drupal gets considerable praise for being versatile, flexible, and open. At the same time, it is often criticized for being difficult to configure, with a large learning curve even for seasoned developers. So given the criticism, why do I use it? And why do I recommend it to clients? This article provides an overview of Drupal, and in doing so, explains why I stake my business on it.

What is Drupal?

Drupal is a content management system (CMS)--that is, a system for entering, organizing, and displaying the text and pictures kept on a web site.  The official Drupal site has a good overview of what Drupal can do.  I use Drupal as the underlying CMS for this site, and many other sites use it too.

Why do I use Drupal?

There are so many CMSs to choose from: why do I choose Drupal?

Free and Open Source

Drupal is free: free in that it costs nothing, and free in that you may use it, modify it, and extend it for your own purposes.  Since the source code is open accessible, it is possible to know exactly how it works.

Wide Adoption, Wide Praise

Drupal is one of the most popular CMSs in existence today.   Though statistics are hard to come by, this article on blogsweek.com shows the most visited CMS websites, and Drupal was 3rd on the list, behind Wordpress and Joomla.  Wordpress is specialized for the blogging world (and it is what I recommend for blog-centric sites).  Joomla and Drupal are both more flexible than Wordpress for creating special-purpose websites with a content management framework behind them.  There are several other up and coming contenders, such as Plone and Xoops, but if you are like me, it's difficult to look at more than 2 or 3 alternatives and make a reasonable comparison.

When I started looking at CMSs a year ago, I knew from the blogs I read, the podcasts I listened to, and the sites I visited, that Drupal and Joomla were both very popular.  So I decided to focus on those two (knowing already that Wordpress was probably the best choice if the site's main purpose was to be a blog).  This article (though dated now) was a big factor in my choice to use Drupal instead of Joomla.  Both CMSs have evolved considerably since the article was written, so you will need to make your own evaluation: which suits your purpose better?

Flexible for Many Different Purposes

The key factor in my choice of Drupal is its flexibile, modular architecture.  The Drupal community has contributed over 1000 modules to handle functions such as e-commerce, multimedia, event calendars, bulletin boards, wikis, blogs, and more.  And it is very easy to write your own module for your own needs.  The book Pro Drupal Development (VanDyk and Westgate) provides an excellent tutorial on how to do that, and more.

Active Community

Drupal has a large community of designers, developers, and users, many of whom can be found on the Drupal Forum, as well as on IRC channels #drupal, #drupal-support, and others on irc.freenode.net.  There are also local user groups, such as the Drupal group in Atlanta, which meets monthly.  With such a large community, help can be found instantly.

Extensive Documentation

Drupal is well-documented.  The Drupal documentation page is a good place to start, and the vast Drupal community has created tutorials on their own blogs and sites (just search for "drupal tutorials" and you'll get an idea).  There is also Lullabot, who offers consulting and training, and who publish news and information about Drupal through their blog and podcast.

Is Drupal the Only Choice?

Of course not.  But given all of the above, it is a worthy choice.  I have chosen Drupal and have been very happy.  I am convinced that I can do anything I want to with Drupal as the engine behind it. 

© 2008 Paul McKibben. Covered by a cc-by-3.0 license.



How much of PHP is required for Drupal

Hi Paul, I have been working with Java for the last 8 years.  The last couple of years, I have had to recommend a CMS app to my company and whenever I bring up a Java based CMS, I have been getting the same question - Why not Drupal?  Due to the lack of my PHP knowledge, I am not sure if I can recommend Drupal.  How much of PHP do you recommend one should know to work with Drupal?


Thanks for your response.



Hi Sharma, You can do much

Hi Sharma, You can do much with Drupal without knowing any PHP at all. You can choose from the many contributed modules and themes to achieve the functionality and look you desire. If you want to customize your theme, or even write your own, the PHP knowledge required for that is pretty simple. With your Java background, you would probably understand a lot of PHP just by looking at it.

Overall, it's worth giving Drupal a try. It costs nothing, and there is a large community of people to help answer questions.

Some resources:

Hope that helps!