I had a terrible experience trying to extend Joomla. The code is a freaking mess. I would not consider Joomla to be a viable solution for anything.
Lately, I've been using Drupal and it is monumentally better. The API (really the hook system) is small and flexible. There is a module for almost anything you can think of. Nine times out of ten you don't need to do any coding at all to get almost any behavior imaginable (CCK and Views alone are tremendous). As an added benefit, the community is very strong and receptive.
Having said that, if its a simple blog, Wordpress is probably your best bet. Its a bit friendlier out of the box from a user perspective. I have no experience coding for Wordpress and I don't have any experience with Expression Engine, so can't comment there.
Never, ever use Joomla. It is a steaming pile of shit, and no good can come of touching it.
The rest are decent, depending on your exact needs. I find Drupal a bit heavy for non-techies unless you spend some time removing stuff from the admin side that they don't need. I try to use Wordpress over Drupal when I can.
Joomla has been horrible for me. I get mad every time I touch it. That has kept me from overcoming the learning curve to get it working.
Drupal seems to be a nicer hacker platform, but the interface has been a huge problem for making it a decent solution for clients.
Wordpress has a great interface and good backing but it's still a little targeted to being a blogging system for me.
My preference is ExpressionEngine. It's interface is great, though not perfect. It's well suited as a general CMS. It's easy to extend but the "framework tools" are a bit lacking. The next version will be much better for extending because it will be built on CodeIgniter. Also, ExpressionEngine has support available.
The Drupal interface does not have to be a problem for your clients. It is completely customizable to whatever you can imagine. There are also some off-the-shelf customizations for the backend that are quite nice.
That's a difficult question to answer without knowing what content you're going to put on the site.
For a simple 5 page site + blog with frequent updates, I'd say Wordpress. There are lots of plugins and templates are very easy. It's the only blogging software I'd recommend for a basic blog.
For a site with a lot more content, Drupal is a more robust option. It's really easy to expand with modules for blog, forum, shopping cart, etc. I find the template system more confusing than Wordpress.
The real answer to this question depends on your needs. The more complex your website is, the more requirements you'll have. I don't have experience with Joomla or ExpressionEngine so I won't comment on them.
If your website is simple, Wordpress is probably the route to go. In fact, it's the most popular CMS system precisely because it services the needs of 80% of websites. You can get off the ground with Wordpress in minutes.
If your website is complex and will likely get even more complex with time (such as a news website), you should consider Drupal. It offers more flexibility but the trade-off is that it requires more time and technical knowledge to get going.
Drupal, especially if you have any development experiences or real customization needs. It can be modeled to do anything - yes, I mean anything at all. I've developed some amazing applications using Drupal - not just the typical 'blog' like site that the others generally create. So it depends on your needs. Drupal also has, what I think, is the best community out there - tons and tons of modules, themes, support, customizations, tutorials, etc.
Wordpress. I don't know of anything you can't do with wordpress that you can do with other mentioned CMS here. Wordpress is extremely flexible with the largest user base and community support (among the CMS mentioned here). Depending on your speed of learning you can take it apart and put it back in a matter of days and can virtually do anything you could possible want with it.
I'm not super-experienced with the others, but you can do a lot in WordPress if you know how to hack it. And uptake is so high that even if you don't, there's probably a plugin that can get you there.
But I would say it depends on your needs, either way.
[+] [-] nick-dap|16 years ago|reply
Lately, I've been using Drupal and it is monumentally better. The API (really the hook system) is small and flexible. There is a module for almost anything you can think of. Nine times out of ten you don't need to do any coding at all to get almost any behavior imaginable (CCK and Views alone are tremendous). As an added benefit, the community is very strong and receptive.
Having said that, if its a simple blog, Wordpress is probably your best bet. Its a bit friendlier out of the box from a user perspective. I have no experience coding for Wordpress and I don't have any experience with Expression Engine, so can't comment there.
[+] [-] jeffus|16 years ago|reply
[+] [-] yannis|16 years ago|reply
Joomla - for a run-of-the-mill CMS
Drupal - for a more complex CMS
Expression Engine - for extensive PHP hacking it is based on CodeIgniter and designed using MVC
It really depends on what you want to do with it.
[+] [-] metachris|16 years ago|reply
Well, even for less simple blogs -- for example Techcrunch is built on Wordpress.
[+] [-] Jem|16 years ago|reply
[+] [-] ryanwaggoner|16 years ago|reply
The rest are decent, depending on your exact needs. I find Drupal a bit heavy for non-techies unless you spend some time removing stuff from the admin side that they don't need. I try to use Wordpress over Drupal when I can.
[+] [-] gexla|16 years ago|reply
Joomla has been horrible for me. I get mad every time I touch it. That has kept me from overcoming the learning curve to get it working.
Drupal seems to be a nicer hacker platform, but the interface has been a huge problem for making it a decent solution for clients.
Wordpress has a great interface and good backing but it's still a little targeted to being a blogging system for me.
My preference is ExpressionEngine. It's interface is great, though not perfect. It's well suited as a general CMS. It's easy to extend but the "framework tools" are a bit lacking. The next version will be much better for extending because it will be built on CodeIgniter. Also, ExpressionEngine has support available.
[+] [-] GiraffeNecktie|16 years ago|reply
[+] [-] byoung2|16 years ago|reply
For a simple 5 page site + blog with frequent updates, I'd say Wordpress. There are lots of plugins and templates are very easy. It's the only blogging software I'd recommend for a basic blog.
For a site with a lot more content, Drupal is a more robust option. It's really easy to expand with modules for blog, forum, shopping cart, etc. I find the template system more confusing than Wordpress.
[+] [-] melvinram|16 years ago|reply
If your website is simple, Wordpress is probably the route to go. In fact, it's the most popular CMS system precisely because it services the needs of 80% of websites. You can get off the ground with Wordpress in minutes.
If your website is complex and will likely get even more complex with time (such as a news website), you should consider Drupal. It offers more flexibility but the trade-off is that it requires more time and technical knowledge to get going.
[+] [-] officemedium|16 years ago|reply
[+] [-] pavs|16 years ago|reply
[+] [-] shortformblog|16 years ago|reply
But I would say it depends on your needs, either way.
[+] [-] lux|16 years ago|reply
(self-promotion, but hey, it's open source! :)
[+] [-] foulmouthboy|16 years ago|reply
SiteCore, TeamSite, TypePad, Blogspot?