joomla

WordPress vs. Joomla vs. Drupal – Picking a CMS for your Business

by
Joomla vs. Drupal vs. WordPress

Joomla vs. Drupal vs. WordPress

Last week I wrote about why every business should build their site on a CMS. This week I will help you select which CMS is the right choice for your business website.

The three I highlight here are all highly used, professional, extensible systems for site building. Each has a large community of developers, themers, users, and deployed sites, with ongoing improvements. Best of all, each is completely free. So how do they differ? The number one question I get from people is “How do I know which I should build my site on?” This article will help you answer that question.

Ease of Use vs. Technical Power

Each of these three have many strengths, but they each excel in a specific area. WordPress is incredibly easy to use and maintain, extensible, and powerful, but lacks many advanced administrative features required by high end websites. Joomla is geared towards corporate websites, or common systems such as online magazines, calendar systems, or inventory tracking. Drupal is the most technically powerful and extensible, but the hardest to learn, extend, and customize.

CMS simplicity vs. power and extensibility

CMS simplicity vs. power and extensibility

WordPress

WordpressWordPress is primarily a blogging tool, and since many sites can be set up *like* a blog, it is great for simple sites or blogs. WordPress’s greatest strength is it’s ease of use, even for non-technical users. Sites which will be static (not use a lot of server side scripting), be heavily dependent on a blog, or require basic customer interaction such as shopping carts, newsletters, calendars, etc have a great choice in WordPress. Where it is lacking is the fully dynamic functionality some advanced sites require. If each page on a site may react differently to users, or the site will have social networking features, WordPress is probably not the best choice. It has the highest market share of any CMS, with a greater number of free themes and add on modules than the other two CMS’s, as well as a large market of premium themes and bolt ons.

WordPress has a huge community built up around it, so finding developers or solving issues you are facing is usually easy when asking the community. It pulls ahead of both Joomla and Drupal for ease of use. Installing modules, upgrading the system, or taking a back up are all one click activities.

Pros:

  • Best tool for blogging
  • Easy to use for non-technical site owners
  • Setup, install, and maintenance are quick and painless
  • One click upgrades and site changes
  • largest community of theme and module developers of any CMS

Cons:

  • Extending standard functionality requires custom modules
  • Difficult to add lots of dynamic content to pages
  • Social features outside of blogging are limited

What WordPress excels at:

  • Blogs
  • Simple sites which are mainly static content (text and images) such as small brick and mortar businesses, restaurants, or personal pages.

Joomla

Joomla falls between WordPress and Drupal for both ease of use and extensibility. It uses a standard model-view-controller framework, which is very powerful for building sites using standard Joomla functionality. Joomla is more functional than a simple wordpress install, focusing on systems such as inventory trackers, or multiple contributor online magazines.

In recent years they have greatly simplified the install and upgrade processes, but this will still take some technical know how. Joomla has a large community of professional themers and extension developers, however many of these are sold for extra cost. This is perhaps the geatest downside of Joomla, as both Drupal and WordPress foster completely open source add ons to develop functionality needed by a subset of customers. Add on’s which you will find freely available and open source in Drupal and WordPress are often sold at premium prices for Joomla.

Pros

  • Nearly as easy to setup and use as WordPress
  • Includes caching by default to improve site performance
  • Flexible control panel
  • More extensible than WordPress for developers

Cons

  • Joomla falls in the middle, so except for some specialized applications, it is not the “best” system on either front.
  • Not XHTML compliant
  • No built in SEO – URLs are not search engine friendly
  • Many of the best modules cost money

What Joomla excels at

  • Sites that need more power than WordPress provides, but don’t want to learn a complex system
  • Sites that are willing to pay for premium modules and support

Drupal

drupalDrupal has more complexity in terms of setup and administration than either Joomla or WordPress, but offers easy ways to setup key functionality, such as defining dynamic pages inside the CMS which will execute custom PHP scripts. Additionally, Drupal provides a powerful API which covers many common web problems, decreasing development time considerably. I found Drupal to be great from the perspective of a developer, but I would be hesitant to build a client site in Drupal unless they had dedicated administrators who could learn the system. Drupal includes social networking functionality out of the box, allowing users to create their own content, setup a profile, and interact with other users.

The drupal community and site has many resources to help when issues are hit, but the overall administration pages and menus are incredibly numerous, not intuitive, and complex. This is the biggest drawback of using Drupal: the complexity. For instance, by default, all content is entered as HTML only, and additional modules must be installed to get What You See is What You Get editors, which come standard in WordPress and Joomla. Additionally, some functionality you might expect requires multiple interacting modules, and learning to setup and administer them. To help with this, Drupal has many out of the box reports and automated checks to help maintain the site.

Pros:

  • Great for developers
  • powerful PHP functionality for in-system customization (no need to develop modules)
  • The best system for integrating social networking with business processes
  • Powerful API for custom development

Cons

  • Challenging for non-technical users to setup and maintain
  • Standard interaction is more clunky than other systems (significant time went into theming my site)
  • The smallest number of free themes available
  • Many modules will need to be installed to get a functional site

What Drupal excels at

  • Creating complex websites on top of a CMS
  • Developers building sites
  • Social networks

Conclusion

There are many advocates for each of these systems, but it really comes down to web site requirements. If you don’t need the extra functionality of the more complex CMS systems, then it is wise to select a simpler system which will fit your needs rather then a more complex one. Hopefully I have helped lay out some of the most common factors in deciding which CMS you should consider for your site.

7 Reasons to Use an Open Source CMS For Your Website

by

In the past few years, I have built several websites. The first site I built, I programmed from the ground up, using 100% custom code. I created a nifty custom login function, with all sorts of easy to use login features like ajax username verification, instant password resets, and a painless sign up process. I programmed a Digg-like article rating system, community features for friending other users, and numerous other things. Most of these required a fair amount of effort, testing, bug fixing, and securing. Even then, there was more to do. As a result, some useful nice to have features were cut before go-live.

The next site I built for a client, I built on WordPress. I had a live site demo up and running with custom images, and 90% of the requirements filled in less than 24 hours. The site wasn’t as complicated as the first site I described, but I got instant feedback from the client about what they were looking for, with no custom programing at all. But getting a proof of concept out quickly isn’t the only reason a CMS is almost always the right choice for your website. Here are seven of the most compelling reasons to choose a CMS over a build from the ground up approach.

1) Leverage the power of community. Chances are, the things you want to put on your website are the same things someone else has wanted on their website. If enough people want a feature, then generally something very close can be found in the various CMS plugins or standard functionality.

2) Reduce time to market and reduce development complexity. If you are building for a customer, you can get a demo out the door quickly, and incorporate feedback instantly. If you are working on a site for yourself, you can skip implementing the common functionality, and focus on what differentiates your site, or site content.

3) Eliminate the need for human capital. Templates and modules can be downloaded free of charge, or for minimal fees. This means you can go live with a site using a template design with standard, modularized components, and get instance feedback from users and customers. Redesign after you have site success, not before, and incorporate A/B testing to maximize design value.

4) Outsource site support – for free. If you build it, you own it. The next time you find a bug, you’re on the hook to correct it. If you want a new feature, you have to build and test it. If you use a CMS, you can submit enhancement requests or support requests, and often get a patch or bug fix from someone else, all free of charge. Better yet, everyone else in the community is doing the same thing, so you leverage years of other people’s production testing. In the worst case, you can always write the patch yourself, which is no worse than if you wrote the original code in the first place.

5) Create a more agile site experience. Business changes rapidly. You won’t always have time to modify the website to meet market and customer demands when you need to develop and test each change yourself. When using a CMS, new functionality is often just a module install away, pre-tested and developed. You can turn a month long development-test cycle into a week (or day) long install-test cycle.

6) Increase link building options. Many CMS sites and modules offer various ways to market your site and gain backlinks. Whether a particular module writer keeps a list of featured sites, or CMS showcases, there are always opportunities to use your involvement in the community to increase site traffic. They may not always be potential customers, but they will almost certainly help you in other ways such as backlinks or reputation.

7) Improved Security. More than 90% of websites have serious security vulnerabilities. Almost all of these result from custom coded functions and interfaces. While using a CMS does not eliminate the risk of security breaches, you can decrease that risk knowing that the code is often reviewed by more than just you, and security patches are frequent. A quick look at WordPress versions over the past year show numerous security enhancements.

I have personally used a CMS for every site build in the past couple of years and will continue to do so into the future. Next week, I will do a comparison of the three major CMS’s – WordPress, Joomla, and Drupal, and discuss why you might select one over the others for your specific project.