Hi,

I would like to master one of the open source CMS in order to design and develop websites. I don't have any programming background . Can someone suggest which one of these is ideal for me to learn?
What are the comparative advantages and disadvantages of these three Content management systems? Your advice would be a valuable help to me.
Thanks in advance.

Comments

ray_223’s picture

I'll give you a hint ...

If you ask this same question on each of the 3 CMS's forums, you will get 3 different answers ;)

Obviously Drupal is the best!! :)
Drupal is the best designed, implemented and documented system of the 3 you mention.
It also has by far the best future considering the large investment a number of Drupal based companies are contributing.

marquardt’s picture

Is Mampoo = Mambo?

Anyway - I've used to play with Mambo and and moved along with Joomla! after they forked (for good reasons). I continued to learn about Joomla! and set up a few internal websites with Joomla until shortly before their v1.5 became avilable, when I switched to Drupal. So I don't know much about Joomla after that point.

What I liked about Mambo/Joomla in the first place was the eye candy. You would download the tar or zip file, install it, and it looked great. There was a huge selection of themes available, and the commercial ones were not that expensive - a membership in a theme club didn't cost the world, and quality of themes got better with time as well (as long as table based layouts were not a problem). I even started to shell out some money for components. For every task you could think of, there seemed to be one, well written by "developers", which, in the Joomla! world, form this elusive group of all-knowing über-human beings.

The trouble (well..) started for me when I wanted to put together a site which combined a blog (using a commercial module; Drupal has that functionality in core) with a download section (a free module; can be done with CCK and Views in Drupal), and a FAQ section (another commercial module; Drupal has a free alternative), all of that with SEF (Search-Engine-Friendly) URLs - something that's in Drupal's core (+ autopath). At that time (might have changed by now), the only working SEF module for Joomla was a commercial one; a few free ones were coming up, but developing them appeared to be very difficult. I also had a backup module (another few bucks for Joomla!; by now, there's a similar functionality for Drupal as a free module). I also considered tagging as a nice addition to my website (there was another commercial solution coming up, but at that point I was already ob my way to Drupal;-). On the eye candy side, all these modules looked great - by themselves. When put together on one site, it looked horrible! There was no consistency in the design. User interfaces looked (and worked) differently. You would think you could adapt the CSS, and modify templates to modify the looks. And yes, many modules came with template systems, but each module had it's own, and each developer used a different approach. There was no consistency (or API) in the code either. Putting something together with a consistent look, but several commercial and free modules turned out to a nightmare. In a way, Joomla's eye candy worked great as long as you didn't need more that what comes out of your theme's / template's box, but it quickly turned against it as soon as custom components needed to be taken into account. SEF modules were very difficult to do because there was no defined API into core, and adaptions had to be made to both the SEF and the new modules, just to support the latter with SEF. Ajax functionality started to pop up quite a bit, but every developer used a different framework, and two modules with different Ajax libraries didn't necessarily work together. It really became a big mess when trying to do something out-of-the-normal.

Drupal offers quite a different experience. Overall, I think that the Drupal community is way more professional than the majority of Joomla! community; it's mostly developers and web professionals. That shows in the quality of the code - even in most contributed modules - and in the concepts behind Drupal. This might be related to the size of the communities - Drupal was smaller than Joomla! for a long time; the professionals were among themselves, really. That is changing now (and I believe some bad things that began to appear in Joomla forums also start to happen here, unfortunately. Maybe that's the prize to pay for growing...).

But back to the topic - In Drupal, there are well defined interfaces into core, and they are used by every contributed module because they work so well (and the community makes sure that people do use them). They are also well documented (from a developers point of view); there are clearly defined ways to do templating. SEF basically just happens. An Ajax library is part of core (and it's one of the best available, probably).

Drupal has a different philosophy compared to Joomla. In Joomla, you install a component that fulfills your need for a certain functionality. Drupal is much more modular - it offers smaller pieces (like lego bricks) that you put together to achieve what you need. Joomla's approach is obviously simpler if you find a component that precisely does what you need. Drupals approach has a much steeper learning curve; it is also much more flexible. But you have to do the building yourself. With respect to eye candy - the number of good looking themes has significantly increased over the last year or so IMHO. If you find a theme that mostly resembles what you have in mind for your site, chances are that you can start from there and modify it to suit your needs with much less pain. The Drupal theming system is enormously powerful - look at all the great sites that some companies have built with Drupal. There are very different looks; but it requires work. And coding in PHP, HTML, CSS, and possibly JavaScript. So part of learning Drupal will almost certainly require that you invest in learning these skills as well. Having said that - I do believe that every CMS, at some point, requires you to know some programming and HTML/CSS basics as soon as you want to achieve more than basic web sites. And by now, there are a few excellent books on these topics, targeted specifically at Drupal.

So in my view - if you find a Joomla (or Mambo) based solution that fully matches your requirements, and you don't have the need / wish / desire to do more than just a few sites, or become involved in serious web site development, Joomla! (or Mambo) might be the best solution for you (but also look at Wordpress). It might save you many hours / days / weeks of learning things you are not interested in.

On the other hand, if you want to implement more specific solutions, if you want to be able to do very different web sites, or if you are interested in learning PHP etc. from really good developers - well, I at least preferred Drupal, and I never looked back. Though it took me a while to see the benefits.

enjoy777’s picture

hmmm this is very hardly topic to say anything because you want to compare the systems which are named CMS. But in the other way which car is better Volvo truck or Mercedes? Both are cars but you use them to other tasks. Or from IT area how can you compare MS Office and eg. SAP ERP? They both are computer programms. The same is when you try to compare Drupal and Joomla.
Joomla is fine system very easy to understand and to learn, very friendly to end users who will add some content to site. Nice, good-looking system with easy to use template system. Very popular because of its simplicity. I think it is very popular because of many people don't need to built biggest sites. Not everyone will built facebook or myspace :)
So if you need some easier try Joomla it is really good system.
Drupal is a little hardly to understand system and I think it is for bigger sites than Joomla. If you need some user managment, roles, perrmisions. If you need more elastic content managment, more performance etc. so probably you will be fine with Drupal. You need to learn much more than with Joomla because it is not so easy, but it is the system worth to learn all this stuff.
I think don't put yourself to be only with one system and to be a fanatic of Joomla or Drupal who fights against other system. Be clever and use this system which is better in task which you need to create. Learn php, Jscript, AJAX, learn and practice, study API of Joomla, Drupal, and other systems, and do what you need to do. If you don't put yourself to be only with one "the best" system it will be the best way to create good sites. Remeber creating good site is the main goal. System anyone of them is only the tool which can serve you to build your site. In the end of your work your end users won't worry about what system you use. They will be very interested in good usability and functionality and performance (and price?? :)). The approach how you get it is only your problem. So use the best tool which you need in task you do.

WorldFallz’s picture

Since joomla is essentially a better maintained mambo, I would leave mambo out of the selection. With regards to drupal vs joomla, this question has been asked and answered many times-- I would start by browsing some of the posts on this site then google around some. Fortunately the words 'drupal' and 'joomla' don't occur in any other context so the searches are quite fruitful.

IMO the quick answer is: joomla is easier to learn but far less flexible while drupal has a learning curve but is far more flexible. Personally, I recommend people invest their time learning drupal. You can build anything with drupal-- with other CMS's (with the possible exception of plone) you will eventually hit a brick wall.

rjoplin’s picture

I'll echo what's been said here. I have built one site with WP. I have built a few with Joomla. I was unsatisfied for the reasons others have mentioned. I am a control freak and like to have precise control of functionality. I want to be able to have 29 different classes of user on a site if that's what the client wants. I want to be able to define as many types of content as I want. I want to to have a serious group of developers poring over the core of my CMS daily, looking for vulnerabilities. These reasons are why I will develop in drupal when I can.

Having said that, if I understand why people build in Joomla. It is quick and easy to get a site set up and delivered. I can teach my cat to publish articles in 5 minutes. No fine-grained controls to design or explain, just sections, categories in the sections and articles in the categories. Clients don't know the difference, so build it quick, give it a pretty face (a hundred times better than that crap they used to have) and cash the check.

I used Joomla a few times and found the edges of its functionality quite quickly. In drupal, the only edge is the edge of your creativity.