We had used both systems in past projects so I have decided to do a write-up to compare them. I am coming from a web site builder’s perspective. I won’t get in too deep on the underlying technology of both systems because there is no straightforward answer on which one is a better technology. I just mean to help people to choose the right CMS when they build the next web application.
1. Administrator Module
Joomla’s admin module is a bit complicated. There usually seem to be different ways to configure the same feature. For instance, you can add a link to the article title by configuring the category containing the article or the article itself. Both approaches should make it work your way. If it does not work, you need to check both places though. To me Drupal’s admin module has a clearer user interface. The menu items are logically well organized so you can usually find an item easily.
2. Design templates
There are more ready-made design templates (or themes in Drupal term) for Joomla out there on the Internet. So you usually have more choices on templates for you or your clients. This is because Joomla is more popular than Drupal. Hence there are more companies that are willing to create templates for Joomla sites than Drupal ones. This may not be a problem though if you always design your own templates.
3. Blog and BBS
Drupal comes with blog and BBS functionality in the core system. With Joomla you need to install third-party blog and BBS modules to have these capabilities. However, these modules are not flexible enough as those on Drupal.
Drupal has an advantage on SEO over Joomla. The HTML codes that Drupal generates are simpler with a better structure. Search engine robots indexes web pages more efficiently when they see web pages with simpler codes.
5. Learning curve
Drupal takes longer time to understand and learn than Joomla. One of the reasons is that Drupal is more flexible, but this usually means configuration is more complicated. Some Drupal modules like Views work best if you have a basic understanding of the database structure of Drupal.
One instance of Joomla can only serve one web site. If you have multiple web sites you need to install multiple complete instances of Joomla. On the other hand, multiple web sites can be served by just one instance of Drupal.
In conclusion, if you are building a corporate web site that will display pages containing contents about your organization, and you just need functions like displaying photos in gallery format, publishing articles and let visitors write comments, then Joomla should be good enough. However, if you are building a video streaming web site with more complicated functions like integration with Paypal, and some videos are only available to members and not all visitors, you may want to use Drupal. In such case Drupal allows you to build your own functions if you can’t find the right module.