Did you notice that we live in a polarized world and personal choices on issues define who we like and who we don’t like? You see these polarized debates all over: democrat vs republican, believer vs atheist, mac vs pc…. The world of websites is also engulfed in this polarization, but we’ve got 3 Content Management Systems to pick from: WordPress vs Joomla vs Drupal.
Sigh… will this ever end? Unlikely.
In the meantime, let’s get practical and take a peak at what each one is good at, and more importantly which CMS is best for YOUR business. I have to warn you though. This is not a post that will give you a definitive answer. It’s not one of those “let’s settle the issue once and for all” texts. I don’t like such posts. They assume too little for the readership, and too much for the author’s grasp of the issue. What I’m aiming here is to shed some light at what CMS at its core is, and how this philosophy of CMS is playing out in these 3 most popular and free web building tools.
So without any further delays , let’s jump right in with some stats, as shown in this snappy infographic built by the folks at WebsiteSetup.org:
Now, as the Web is an ever-changing beast, the stats are already off. They’re always off, even before the designers finished this infographic, the stats were outdated. What does remain though is the trend and scales of difference between the three platforms. So we’ll focus on the trends vs the numbers. Also, feel free to ignore the list of websites that are powered by WordPress or Joomla or Drupal. Who cares if Forbes is powered by WordPress? Why should you care if Harvard uses Joomla? And what difference does it make to YOUR business if Warner Bros is using Drupal? It’s of no consequence to you if Bill Gates uses a MAC and if the late Steve Jobs was using a Galaxy Note? You don’t run a Forbes-like magazine so you’d be swayed to use WordPress. You’re not running a university like Harvard so yu’d be swayed to use Joomla, and you’re not running the White House to be swayed to use Drupal. So let’s drop that useless “look I’m using WordPress, I’m as good as Forbes” and focus on what really matters: how your business can benefit from usign WordPress vs Joomla vs Drupal.
First things first: what in the world is a CMS?
CMS stands for Content Management System. It’s a system… that… manages content. :).
As all three are lumped as CMS-s, it means that all three are similar at a systems-level… just like a PC is called a computer system, and MAC is also a computer system. Or a Mitsubishi vs Subaru, or Bugattii Veyron vs a tuned to the max Nissan GTR. They’re all the same at a systems level.
These systems have two key components: a database, and the software that allows users to put stuff in the database and then build a website using this information, without the user having to bother with coding a single line of code. So any CMS has a database where all this content is stored, and a software program that then takes different pieces of this content, and builds you a website. However, each CMS will have a different database structure, and each CMS will have a different software that builds the website. Because of these differences some CMSes will work faster, some will be simpler to use, yet some will be a sort of a middle ground between speed and ease of use.
WordPress as a CMS has its own way of doing stuff, Joomla has its own different approach, and Drupal yet a third way of taking stored data and constructing a website from it. There are literally hundreds of other CMS platforms, but they all work more or less in this same way: they offer you a way to dump content into a database without any programming knowledge, and then the software takes this content (text, images, videos, whatever) and construct a website, again, without any programming knowledge.
Disclaimer: this doesn’t mean that programmers are obsolete and you don’t need them to build websites. It just means that they’ve been so good to the rest of the world that they built us a piece of software so that we can also build websites as simple as turning up the heat without having to run out in the woods to get more firewood. So let’s all say THANK YOU GEEKS for the great service they’ve done for us all. If it wasn’t for a combined voluntary work of thousands of developers world-wide, we’d have nothing to drag and drop at. And if you ever decide to write a blog post about how terrible humanity has become, just remember that your blogging platform is free of charge because total strangers have decided to work together on a CMS that you now use, without any compensation or even a “thank you”.
Surface-deep diversity: They’re all posts man, they only pose to be pages, products, menu elements and what-nots!
As we’ve explained, CMS is a piece of software that takes some content dumped in a database, and builds you a page. So everything you see on a page, at its base identity, is a block of content dumped in a database quite similar to an Excel spreadsheet with a bunch of columns and a ton of rows. Each CMS will have a different setup of columns of course, so you can’t just take a database from WP and give it to Drupal and expect it to play ball. It wont’ cause the structure of the database is different. The CMS takes these different database entries as building blocks to construct a website with:
- a header, that has a corporate logo, some Contact Us elements and a navigation menu, all created as entries in a database;
- a main body section, which may contain anything from simple text with a picture of your dog, to a grid layout of featured images from posts filed under different categories… or different products placed in different categories where you can change the order by price, color, weight and what-not. Squeezed in the main body section you’ll usually find a sidebar, that pillar at the right that takes up about 1/3 of the page width where you usually see social profile icons, a section with Latest Posts, or Popular Posts, or Latest Comments and so on. Usually you’ll find here an email signup element that you’d fill in to subscribe to their newsletter, or get some free downloadable stuff. All of these items are just entries in a database that the CMS software arranges in a given way;
- a footer, which is the end of the website, and it houses useful links to some pages like Contact Us, or Terms and Conditions and so on. Folks use footers to show off their bragging badges like logos from payment processors (paypal, visa, mastercard etc), some security seals to boost purchasing confidence, and the inevitable Copyright note… you’ve guessed it, all just items recorded in a field in a database.
You can imagine this database as a big table full of small cups, where if you want to create a blog post, you type in the text and the CMS dumps that text into one of these cups. You then create a Title for the post, it’s placed into a different cup, and you then tweak the URL, which goes into a different cup, and you then create a few tags, and each tag goes into its own cup. Then when a user tries to view this new blog post, the CMS reads the relationships between these different “cups of data” to construct your blog post with its matching title, tags, metadescription and so on. These cups of data can contain the text of a blog post, or a product description, or a downloadable PDF that you want to sell. It’s all data, and it’s all treated the same way (more or less) and based on the accompanying cups of data, you can get complex features such as texts showing up only for people that are logged in.
Uniqueness: a Skin-deep illusion
We’ve explained how a CMS works and how it enables you to put together a blog post (or create a new product, or a new whatever). All CMSes get their design/look-feel from a skin, or a theme they use. Themes are again a piece of code and some images that is put together to help the CMS adorn the information it shows. How the titles and subtitles will look like, how clickable links will look like, how images will be displayed, what colors will you see in the header and footer and so on… all these things are part of what “a theme” does for a website.
If you want to change how the site looks, you simply switch themes. So with a few clicks you can change the look of your site from some dark, angry heavy-metal-ish looks into.. I dont know… a Barbie look. But as being unique by using a template is a bit of an oxymoron, folks usually want to tweak these themes. For example, you may want your new Barbie look to still have some black leather and iron spikes, so you set up a child theme. A Child Theme is your Barbie theme, tweaked to look just a tad different. So instead of hacking the main theme, you set up this child theme that allows you these tweaks. To make things even more unique you can rename your theme to be something like Metal Barbie or Heavy Pink… or whatever.
Then folks decided that they don’t want a theme to have a fixed look and feel, so they added some adaptability. These adaptable themes are what you’d call “modern day themes”. They allow you to pick a color scheme with a click of a button. They allow you to change the fonts used for titles and subtitles. Modern themes have different pre-set designs for the Homepage, so if you want a full-width layout you just pick that template and you’re set (more or less).
The problem with themes though is that they are templates. With all the millions of websites out there, there is a high statistical probability that some website out there will use the same theme you have, and the same theme settings you have. In a world of cookie-cutter websites, uniqueness goes as far as your audience’s knowledge of other websites.
But fear not, nobody really cares how unique you are. Folks only care about what you bring on the table for them. This simplification of web design now becomes a good thing, as you are not really pressed to be unique. You are pressed to be valuable for visitors. No more show-offs. Thank God for that!
The challenge of course is… what theme to pick? Will you be looking at looks alone, or you’ll want to see the functionality each theme has, or how fast (or slow) your site becomes if the theme is too bloated? You have thousands of themes to pick from, and dozens of issues to keep in mind. Picking a theme is not a walk in the park thing.
Lego-style functionality: If plugins were real they’d rule the world with an iron fist
All CMSes have their basic functionality of recording text and configuring themes/skins pretty much set up from the get-go. But if you want to have a website that is more than a bunch of static texts, for example if you want to have a Contact Us form that users can fill up, you need plugins. There are plugins for pretty much everything imaginable. Contact form plugins, ecommece plugins, membership plugins, security plugins, seo plugins, social marketing plugins… you name it, chances are somebody out there has built a plugin for that.
As CMSes mature and as their user base gets more hungry for features, there are more plugins popping up. Nowadays for example, you have drag and drop page builders that allow you to construct pretty much any page layout imaginable. Here’s our Welcome/Homepage at the moment, seen as it’s built in the Divi builder. I basically envisioned the layout, built it using Divi, and then just populated the building blocks with the matching content:
You want a page layout of the homepage that starts with a full width image (or video), followed by 4 boxes to put your Featured Products, followed by a block of text, followed by a field that has 6 recent testimonials? No problem, just install a page builder like Visual Composer (WP plugin) and start building the layout of your dreams. Yeah, it does take some learning, but from a concept to a built and functional page you’ve cut the development time by at least 70% as you now don’t have a Photoshop file that’s designed down to the smallest of details, and you don’t have the time needed to take that design and turn it into a working HTML/CSS/JS code. Pretty cool.
Without plugins we wouldn’t be able to have complex sites that do funky stuff like ecommerce, membership websites, forum sites and so on. Plugins make all this possible. And there are tons of them for free. The challenge here is to know which plugin is best for what function. For example a quick search for ecommerce plugin in the WordPress repository returns over a thousand results. Another nasty one to pick is the right membership plugin:
All this diversity makes building a solid website quite a headache. Thousands of plugins to choose from, for dozens of functions. Can anyone do it? Sure. With enough time on your hands to research, test and compare a bunch of plugins for every single feature you need of course you can do it. Question is… is it the best use of your time?
We’ve covered issues like What’s a CMS, we’ve explained how it works, what themes/skins do, and what plugins do. Let’s now get to some key points about the three most popular content management systems.
WordPress: the popular one that even kids dig
WordPress came into existence in 2003, which in Web terms is the Mesozoic era. Most of what we see today didn’t exist, at least not in this shape or form… speaking here of websites of course. It started off as an amoeba, but it grew to be the dominant species nowadays, with over 140 million downloads, as the infographic points out. This number is definitely bigger today and growing daily.
WordPress is the easiest of the three to use. Back in the day when I was just starting off, WordPress was the last platform I tested because it seemed too… amaterurish. 10 years after, I’m a huge fan of WP and I’ve seen how it morphed from a simple blogging tool to a full fledged CMS that has no problem at all to function as a highly profitable ecommerce site, or a super-popular membership site. There are tons of freely available themes and pugins to pick from. It takes the least time to build a website, so the cost of a WP site will almost always be lower than building an equivalent website with Joomla or Drupal.
For themes, I’d highly recomend the StudioPress Genesis framework that’s perhaps the finest looking theme out there. Finer in terms of how the small details are designed. I’m not talking about a fine look as a feature of a nice look. Nice looking vs fine looking is what you’d compare with a nice looking machined wood carving, vs a fine looking hand-made wood carving. The lines are much more refined, the details are much more…detailish. They both look great, but they’re in completely different categories. ElegantThemes is another solid developer for themes. They are very nice looking. In terms of ease of use, customization and design, I think Elegant Themes offers the best balance.
WP has limitations that usually come in as security considerations. Yes, there are tons of plugins to address these issues, but as it’s the most popular platform, many more evildoers out there are up for finding a security hole so they’d exploit it. So if you build your own website you will have to make sure that the Security issue is somewhere at the top of your To Do list.
WP tends to be a bit slow-loading. Most of the times the slowness of a site is not really a WP issue but a theme and plugins issue so when you pick a theme make sure you test how fast your site loads. Tools like Pingdom come in quite handy. Plugins also slow the site, so you do want to minimize the number of plugins you use on the site.
You’ll find themes that try to do everything. Dont use them. Themes are intended to provide the looks of the site, not the functionality of the site. There are tons of themes out there that will try to be everything to everybody. Stay away from them. I’ve tested literally ALL of the free themes in the Theme repository in WP. Many of them make this mistake, but among the worst premium themes I’ve come across are the Avada theme and OptimizePress. If you want a bloated, sluggish website with a high probabilty to break the next time you update WP, go ahead and use Avada or OptimizePress. You’ve been warned.
Drupal: Geek paradise
Drupal is the very first CMS I’ve played with. I didn’t like it. I did set up a website but it was quite a challenge to use. Drupal is a very solid CMS that powers big websites that need flexible user management and there are cases where developers have built online systems for document management. I’ve had some projects with Drupal and what we built more resembled online applications than websites. Drupal has a very wide support base and generally it’s considered to be most technical, the most “professional” type of general-use CMS.
Drupal has very few limitations. Whatever you conceptualize, Drupal has the power to make it happen. If you plan to have a huge website, huge in terms of content, and huge in terms of millions of visits per month, Drupal may be your best bet. From what I’ve seen, themes/skins for Drupal are more refined, both from a design perspective and from a coding perspective. Not to say that WP and Joomla themes look worse though. I’m talking about my general observation that skins for Drupal are finer. Not better looking, finer. What Genesis for WP is an outstanding exclusion in fine-ness, I’d say it’s the norm for Drupal themes.
There are tons of plugins out there for Drupal too. It’s pointless to speak of numbers here as sheer numbers does not mean anything. Because Drupal in general is a geekier universe, plugins tend to be much better as a programming product. Why would you need a thousand ecommerce plugins when you can have a handful outstanding plugins that are as concepts very nice and as coding products, as optimized as it gets, right?
Drupal being Geek Paradise as its greatest strength, is its greatest weakness too. Setting up a Drupal website takes more time. I’m not here talking about how long it takes to install Drupal, slap a theme and a few plugins. I’m talking about setting up the site. What takes a single click in WP will take a dozen in Drupal. Not because Drupal is not streamlined but because Drupal is conceptualized to offer maximum control over literally everything.
That aside, in my eyes the biggest hurdle for Drupal is the level of skills it requires to build and maintain a profitable website. From my experience solid Drupal developers tend to be about 30% more expensive than say WordPress senior developers. If you factor in the time it takes to build a Drupal website, in terms of cost, an ecommerce website built on Drupal will be at least 100% more expensive than an equivalently functional WordPress or Joomla website. This is why Drupal is lagging far behind WordPress and Joomla in popularity. It reminds me of the 90es “dispute” between corporate workstations built by SiliconGraphics, the MAC and the PC as platforms. The market decided that cheap, salable solutions are better than sophisticated, expensive technology.
Joomla: Somewhere in the middle… but where exactly?
Joomla was the second CMS I toyed with, after walking away from Drupal. It proved more “user friendly” although I never really understood it properly. There are plenty of people that find Joomla to be the middle ground between the powerful but overly geeky Drupal, and the easy to use but cumbersome WordPress. Joomla is strong enough to use it as a platform for an actual software. I know of products that work as SaaS that are built on Joomla. So that’s a well deserved hat-tip for the power and flexibility of Joomla. It too works using themes and plugins and they too offer a middle ground between theme “niceness” and difficulty to set up, and for the plugins between ease of setting up and level of control. Joomla offers some of the strength of Drupal, and some of the ease of use of WordPress.
Joomla is a tried and tested piece of work. The very fact that you can build a SaaS business with it is very valuable and a huge plus for Joomla. Building ecommerce and membership websites is no challenge at all thanks to all the plugins out there. Some developers in fact build versions for WP and for Joomla so in terms of coverage, Joomla is all set. Themes tend to be finer-looking than WP themes. Again, not “nicer” looking but “finer” looking. Less “clunky” than WP themes, and less “cold” than Drupal themes. The time to build a site with Joomla is shorter than Drupal, longer than WordPress. Senior Joomla developers tend to be almost as expensive as Drupal and definitely more expensive than WP developers.
In my eyes, the biggest problem that Joomla has is that it is somehow positioned in no man’s land. I was hard-pressed to decide which feature should be listed as a Pro and which one as a Con. And this undecideds of where Joomla falls into, is what I think is ruining it for Joomla. It’s not as simple to learn as WordPress is. It takes a stronger will and dedication to use Joomla vs WordPress. I’ve seen discussions saying that once you get accustomed with WordPress you’ll find it easier to build good sites with Joomla… but when I get accustomed to WordPress I will never feel the NEED to “move up” to Joomla. The flip side also works for people in the Drupal camp. If they want a faster way of building websites they’ll just go to WordPress, and stick to Drupal for complex projects.
For us “older” folk, Joomla is the BetaMax recorder that never really got a chance because the cheaper VHS showed up. Joomla is the Intel-grade CPUs that never really allowed for more complex CPUs to make it big time. It’s always easier to scale up a simpler technology than to try pushing a more complex technology that is not as complex as to justify high costs of development, and it’s never cheap enough to justify the compromise of simplicity.
With a working understanding of what CMS are on a systems level, I hope you now can approach the WordPress vs Joomla vs Drupal question with a lot less passion and a lot more logic. They are more or less the same when it comes to about 90% of the websites out there. They can all power an ecommerce site, or a membership site, and they can all do pretty good as a blogging platform.
In closing, I’m not closing the debate. It will never be closed. With millions of devout users, every CMS is a great choice.
- If you have tens of thousands of dollars of development budget and a few grand a month for maintenance, go with Drupal. You can’t go wrong.
- If you have about 10 grand, and you have a grand or two per month for upgrades and maintenance, go with Joomla. You can’t go wrong.
- If you have up to 10 grand, and up to a grand per month for upgrades and maintenance, go with WordPress. You can’t go wrong.
For most website owners that are budget-conscious (which would be 99.9% of entrepreneurs) WordPress may end up being the optimal solution. You can have the website built in a relatively short time, with a relatively acceptable budget, and you can either build it yourself or hire a team to do it for you. Maintenance may be one of the down sides but as there are so many developers using WordPress you will not be short on choice.