I used Mambo, then (after the fork), Joomla. I worked with both for about a year, and have around 10-12 sites deployed in one or the other.
I found MODx about two months ago, and it has become...by a mile...my favorite CMS. Very flexible, very easy to use.
Duane
I just wanted to add a couple of thoughts about *why* I like this CMS so much better than Joomla. I think it might be helpful to others who are looking for some comparative things:
1. SEF URLs.
To get the sort of SEF urls (human-readable) that MODx generates out of the box, you have to buy a $49 add-on module for Joomla/Mambo. Non-human readable urls (variables without the "?" character like: xxxxx.com/index.php/content/category/9/19/128/ are not hard to do, but MODx SEF is human readable with a click box.)
2. Search
Without some major hacking, Joomla/Mambo search only looks at "Category" names, not content. And, getting the results parsed to a page requires using a php module called "mosMainBody();" as the container. Like all their built-in modules, it is a pain because it holds multiple functions and requires hacking to remove the unused functions.
3. Includes are much easier in MODx
In J/M, there’s no real equivalent to TVs, Chunks and Snippets. Scripts, html pieces, etc. are brought in through a php include, and any edits require either FTP or the use of an add-on editor (Joomla Xplorer).
4. Adding Pages is much easier in MODx
There’s no equivalent to the front-page menu tree in the admin, and the section/category structure forces you to create (or assign) a section and category to each new page in an interface screen that’s separate from the page content input. Plus, the menu item itself is activated/published in yet *another* interface page. It takes a lot of doing (in a certain order) to add a new page -- Section has to be assigned/created *first*, because the category requires attachment to a section. Category has to be assigned/created second, because creating a menu item requires attachment to a category. Menu item creation has to be done third, because creating page content requires assignment to a menu item. It’s a pain.
5. The menuing system sucks.
With just a few output adjustments, I made DropMenu *perfectly* match the syntax of the css/list-based menu my designer set up. It takes (again) a third party add-on component to do the same thing in J/M. None of the built-in menu components can seem to replicate the designer’s list menus. (Another 30 or 40 bucks).
6. Page Level Meta Tags
Unless you use J/M’s built in content modules (all set up as news stories), there’s simply no good way to create page-level Meta Tags. Everything ends up being site-wide. I did most of my content in custom-output modules, because I was rarely creating "news" pages, and J/M doesn’t give you any way to add specific meta-tags for custom modules. So, all my J/M sites have only site-wide metas.
With MODx, I just set up editable TVs for the MetaTags, and do the page-specific tags at the same time I’m putting in page content. It reminds me to include keywords in the content, and allows me to build my keyword meta-tag list while looking at the content. Much, much, much superior.
7. Finally, MODx is faster, in my opinion.
J/M suffers from a lot of performance problems. There are an incredible number of database queries generated by J/M...and if the SQL server isn’t damn well tuned, it will turn page load to painful slowness. MODx seems not to have these page load problems -- woo hoo!
So, it’s short of a Letterman top-ten list, but ought to give you a better idea of why I LOVE MODx!