PHP CMS comparison
Best CMS for ACL
Drupal used to be far better for ACL, and also handles high page numbers better - but now Joomla has ACL, the competition has hotted up considerably. Drupal is generally a better choice for enterprise use, as it handles things like versioning better. It will also behave better when subjected to very high loads when extended.
Best visual CMS
One thing that needs to be flagged up because we are talking about a visual medium when discussing websites: Joomla is the best visual CMS around. Nothing can beat it in the appearance stakes, unless you go to a full-custom CMS like Umbraco or Radiant and spend a fortune on graphic art and developers. It's quicker and easier to get a great-looking site up with Joomla than with almost any other solution (in the world of full-feature CMS) - there is a choice of thousands of templates, which can be altered and customised without too much effort if you know some CSS. With a knowledge of CSS for CMS, and some gfx tools such as a colour picker and an app that can create jpeg and png artwork such as gradients and textures, you can rebuild a template to make it unique - and more easily than with any other popular template-based CMS.
In contrast, Drupal templating doesn't win any prizes. The free templates available aren't great and there isn't a big choice in commercial ones. Modifying them is hard and you come up against issues like different template engines in different Drupal versions (which is the same as many CMS including J of course).
Best CMS for ease of use
The best of all in terms of admin usability is WordPress, but of course it's a micro-cms and not a full solution. For fast, simple web publishing it's just about unbeatable but a full CMS does many other things. The easiest full-feature CMS for the end-user* (the site owner or webmaster) is Joomla - the admin usability is unbeatable. Drupal is not so good, and becomes much trickier to manage when any kind of ACL is used, as that always obfuscates things to a certain degree.
* The end-user of a CMS is the owner, not a website visitor - they just use the materials created by the CMS. It's exactly the same as a printing press: the end-user is the publisher, not a reader, as the publisher uses the tools every day and the readers just get to see the result. A reader might only ever see the result for a few seconds, but the publisher lives with the tools. Therefore CMS usability refers to admin usability, which is a completely different concept to website usability. A good or bad website for web usability (usability for visitors) can both be created by the same CMS as this is a design issue.
Most stable CMS
Drupal is the winner here because it scales well and is rock-solid under heavy load. When the server is pushed beyond its capacity, Drupal shuts off gracefully and doesn't crash. As soon as the server is back within its traffic capability, Drupal will handle all requests smoothly again. In other words, if your dedicated server can handle a maximum of 40,000 visits per day running Drupal, but some front-page exposure on a mega site gives you a big traffic spike to 60k on one day, then your server will be overloaded. This is not Drupal's fault, and it shuts off gracefully, meaning some requests are refused and receive a 'server overloaded' message. As soon as traffic goes down to within the server's capacity, the CMS accepts all requests again.Joomla can handle heavy loads of course, but does not scale as well. The description 'most stable CMS' implies the one that scales best, ie handles large numbers of plugins, high page numbers, and heavy loads best. Joomla is not as stable when heavily extended (lots of plugins).
Every CMS will slow down when heavily extended, so for max speed you keep a very close eye on the plugins. The more plugins you add, and the more complex your content (for example lots of videos, long pages of mixed content), the sooner you need to add another server. The fastest CMS has a few simple plugins and short pages of mainly text. High page number is not normally a stability issue by itself, only when combined with other factors.
Joomla isn't good at handling high page numbers due to the management controls [but this has improved in the new 1.6 version], but a Joomla site with 50,000 pages and high traffic is not in itself a problem. However if you combine this with a high content load (types of content that are not served easily and quickly) plus large numbers of plugins, the site will need servers adding more often than Drupal. And since it is easier to add 'high load' content to Joomla than to any other CMS, it follows that high-traffic Joomla sites may well have more high-load content than others.
Best CMS for high traffic
Load-balancing or the quality of a single-server solution are critical here. A single high-quality dedicated server of basic specification with 1GB of RAM will handle 33,000 visits a day running Joomla or Drupal. If your dedicated server will not handle this load there are two issues: the CMS is built or managed wrongly (or perhaps running as a super-extended solution), or the hosting is poor. It's not down to the CMS. For example a really well-managed single server running Drupal can handle over 100,000 visits a day - but this requires top-in-class server admin ability.
One fact you will learn when you have managed many CMS sites at many hosts is that there are a lot of hosts but few who are really good at hosting high-traffic dedicated servers for CMS; and high cost is absolutely no indicator of ability. Highly loaded sites need their own server tech in any case, in addition to or even instead of the host's tech support.
Easiest CMS to learn
Joomla wins this one. It's partly down to the nice admin, and the fact that everything you need is clearly presented in the admin panel. Then there is the range of books and PDFs available, or even training courses if you need one. But mainly it's down to the fact that Joomla management is the best, and the things you most need to know how to do are easy to find and work with.Of course there are some strange bugs that will floor you at first, until you get to know the CMS - but this applies to all WCMS in any case. At least with Joomla the resources are there, so a solution is out there for those who can do the research.
Maybe it would be a good idea to remind people at this point that learning a CMS is not like taking a school course where everything you could possibly need is provided for you. You have to do the research and accumulate the resources yourself. In modern life, we expect to be given everything on a plate, and either complain bitterly or just back out if things get too tough. Learning to manage a CMS will not suit people who aren't self-starters and capable of doing the research off their own bat.
The toughest time for a learner will be the first week because all the biggest problems crop up then. Sometimes there seem to be no answers to obvious questions - for example there are no templates available or even mentioned on the central Joomla site, which to be honest is a crazy situation. But you just need to google for them, and then you'll find plenty.
Then you will get tied in a knot working out how to fix default settings that mainly apply to a blog (which would apply to about 1% of new Joomla sites) and are hard to find and remove. Later you'll need to select all except 8 pages out of 497 to apply a module to, and wonder where that control is. The answer is, it doesn't exist*, which is why Joomla isn't great with a lot of pages - some obvious management controls aren't there and the core devs can't see it because they are too close.
* This has been fixed at long last in v1.6 now, possibly due to our years of complaining :-)
The hardest time is right up front though, so if you get past that you'll be OK. And Joomla is a walk in the park compared to the other big names like Plone and eZ Publish. Drupal is a fair bit tougher than Joomla as the admin needs to take account of complex ACL and isn't arranged as well. In addition, the chaos of the central Drupal website doesn't help at all when starting out. There are some glaring issues with the Joomla site (such as no templates in the Extensions directory, and worse than that, no mention of why) - but the Drupal site is far worse in all respects. It desperately needs a real website manager as developers are among the worst people to manage usability issues - they know all the answers and cannot comprehend others' problems.
TCO Drupal vs Joomla
Total Cost of Ownership for both Drupal and Joomla is among the lowest of all mass-market CMS. This is because they are open-source PHP webapps that can be remotely installed on a shared server and have more free or cheap plugins than competitors. Support is inexpensive for Joomla, though it costs more for Drupal as it is a smaller market and aimed more at medium enterprise use. In theory there are cheaper CMS to run, such as CMS Made Simple for example, but both Joomla and Drupal are in a different class as far as functionality goes.Joomla wins out here but if you need granular ACL* and high-load with high page number stability, Drupal is the best choice. In either case, costs are a fraction of those for Plone for instance, and compared to something like Vignette the costs are minuscule, plus for some user profiles the results would be better as well.
* To be honest we don't know the full story on the new Joomla 1.6 series ACL capability. At this stage we're assuming that Drupal's is still the better, due to its long history.
Joomla vs Drupal feature matrix
Here is a short feature matrix with scores out of 5.
# | function | Drupal | Joomla |
1. | ACL | 4 | 3 |
2. | media capability | 3 | 5 |
3. | template factors | 2 | 5 |
4. | plugins | 2 | 5 |
5. | SEO | 4 | 5 |
6. | ecommerce | 2 | 4 |
7. | high traffic | 5 | 4 |
8. | stability | 5 | 3 |
9. | high page numbers | 4 | 3 |
10. | admin usability | 3 | 5 |
11. | icommerce viability | 5 | 5 |
12. | security | 5** | 5** |
-negatives- | |||
13. | annoying issues | 3 | 3 |
Drupal CMS -- best ACL, high page numbers, stability.
Not so good on templating, visuals, sysadmin usability.
Solid code, gets more plaudits from other developers than Joomla's.
SEO is good.
Joomla CMS -- best on features, media capability, repurposing, templating, visuals, admin usability, ecommerce.
The new core ACL system is not fully tested yet.