The Ockham's Razor Principle of Content Management Systems

Chris Messina wrote: Firefox set a good model for the rest of the open source world when it infused simple, clean design into a very useful tool. [...] The core differentiator that will set one application above the rest or result in widespread adoption will be rooted in user experience, not in the number of features or power. [...] WordPress will continue its meteoric rise over more complicated and ugly applications like Drupal and Joomla!.

Those who have read my Drupal predictions for 2006 will know that I tend to agree with these statements. Here is what I wrote: Furthermore, by the end of 2006, most other systems will provide role based access control, localization, clean URLs, some sort of node system, etc. Functionality-wise there will be less differentiation amongst the available content management systems, and as a result, more emphasis is put on ease of use, out of the box experience, the (support) community and performance. Some of the more obscure functionality like the aggregator, the taxonomy system, and the throttle system will be subtle but important differentiators. It's been a long, well-run race so far, but unless we manage to make Drupal more accessible to new users and to get back to the basics, we'll find the ground shifting beneath our feet.

I disagree with Chris' statement that functionality is secondary to aesthetics (see quote above). Maybe that is not what he meant, but clearly, form follows function and not the other way around. Drupal is growing because it offers critical functionality. Wordpress is growing because it offers critical functionality. Read on for more.

It is only when two systems offer the same same functionality (or just the required functionality to build a particular website) that the Ockham's Razor Principle of Content Management Systems kicks in (I made that up just now):

Given two functionally equivalent content management systems, the simplest one should be selected.

It asserts that simplicity is preferred to complexity. Most people want to build simple websites, it is easier to build simple websites with Wordpress, and so Wordpress will often be preferred.

Is Chris wrong when he says that simple, clean designs are key to success? He is not. Aesthetic designs are perceived as simpler to use and of better quality -- whether they are or not. It is uncommon for people to be attracted by things that look ugly, but it is common for people to be attracted by things that look beautiful. Aesthetics drive adoption when there are no critical differentiators.

For many people, Drupal's built-in forum functionality is not a critical differentiator to build a simple website. When it is not, Wordpress is likely to be preferred because of Ockham's Razor. When forum functionality is critical to succeed building a particular website, Drupal is likely to be preferred because form follows function.

For long I focused, completely and utterly, on the aesthetics of Drupal's code, neglecting eye candy and ease of use. I spent days trying to do something better, with fewer lines of code and more elegant than elsewhere. The aesthetics of Drupal's clean code has attracted many developers, but has also given Drupal the reputation of being developer-centric and hard to use. Similarly, aesthetics of user interface design (as opposed to aesthetics of code) attract users and designers, and gives you the reputation of being user-friendly. I believe that Wordpress' nicely laid out user interfaces have been an important reason for its success.

I have since learned that elegant design and ease of use are equally important as clean source code. Over the past year, I have been hammering on the importance of Drupal's usability, and we have been actively working on making Drupal easier to use. As a result, the next version of Drupal will be easier to use than any previous versions of Drupal. At the same time, we added critical functionality. I strongly believe that both are important to guarantee Drupal's continued growth in 2006. (Of course, I do realize that Drupal has a long way to go in terms of design and usability.)

Drupal in 2003

How Drupal looked like in 2003.

Drupal in 2006

How Drupal looks in 2006.

For Drupal to remain competitive in the future,

  1. we'll have to offer critical functionality not available in other content management systems, or
  2. we'll have to make Drupal easier to use and improve the aesthetics of Drupal's user interface design, and
  3. we have to maintain the aesthetics of Drupal's code.

As other systems are catching up in terms of critical functionality and because the amount of critical functionality is limited, we have little control over (1). Hence, we should focus on (2) and (3). To grow the number of users we should focus on (2) and to grow the number of developers we should focus on (3). Because the ability to make changes to Drupal's code is restricted, we can easily enforce (3). That pretty much leaves us with (2) to worry about ...

Comments

Boris Mann (not verified):

Of course, another argument is if we continue to bear down on (3)...then people will build many different Drupals, some of them sucking in the aesthetics department, and some of them focusing on it. Because a site optimized for a large community as optimized to a brochure site will naturally have different weight on different areas of workflow.

But frameworks are no fun to work on exclusively, and we'll always have some set of out of the box functionality that should look and act nicely.

In any case...am enjoying your writing, nice to see your thoughts out there in more complete form rather than just endless email list debates :P

January 11, 2006 - 18:36
Bèr (not verified):

Great article Dries!

I think you are very right when you sum up your three points, though I think there is a fourth one:
Making sure those "in charge" of large networks choose Drupal.

I have not yet found any copy online, but in a (Dutch) designers and marketeers book, I once read the Nokia story:

Nokia has focused a lot on many facets of *good design*. Their phones are not considered the best, when it comes to technology. Others have better endurance, performance, or are mechanical better etc. But still they are the #1 world leader.

The reason, according to the book, was because Nokia managed to focus correctly on the right targets. Nokia was the first (affordable) phone to offer personal ring tones, clip on covers and logos. These new nifty features became a big hit (and are now an industry worth billions of dollars).

But that was for the consumers. The real success (so the book said) lies in the layout of the software that Nokia used. The usability so to say. But an odd kind of usability:

Nokia always has The Right Option when you need it, "just one button away". That is good end user usability, and has made people stick to Nokia, but it did not cause the big success either.

When the whole boom started (in the Netherlands, and I am sure more countries too, one still gets the latest phones for free) the ones distributing the phones were the providers (operators). They (almost) all chose Nokia. The reason again, was usability, but now seen from their point: stuff that made the customer bring in money is "just one button away". Missed call? One button and you are calling your friend back. received SMS? One button and one sends an SMS back. New ring tones were just a few buttons away.

According to the piece in the book, that was the real success for Nokia. The fact that they produced phones that were just perfect for the providers. The men in the middle chose Nokia because they could gain most from these phones.

So, what can Drupal learn from this, because I was not writing this to promote Nokia :) ?

That it is not about the technology (code) behind it all. That code must be solid, well thought out and good (make people stick), sure, but, as you point out too, focusing entirely on that, means neglecting the real needs of people. It is also not about only providing cutting edge nifty-ness either, though that may lure people in, the big masses are only following nifty-ness that is presented in an easy way.

It is about providing the ones in charge with the right tools. Making them choose Drupal. Making Drupal most interesting to those providing the big masses with websites. And those are the Fantastico's, Plesks, Bryghts, the Yahoos and the Googles.

Bèr

January 11, 2006 - 20:05
Andy Georges (not verified):

It seems like you need to follow Apple's example. Or at least the good parts of it.

January 11, 2006 - 21:40
Zacker (not verified):

I replied in a blog post here.

January 12, 2006 - 03:04
nato (not verified):

Great thinking Dries!

As the lead for web communications for Oregon's largest university--Portland State--I'm increasing our use of Drupal primarily because of 3 things:

1) Drupal fits in our dominant technology platform and common developer skill sets (PHP/MySQL).

2) Drupal has very good core functionality, but also allows extension fairly easily by developers who are not necessarily the most experienced/expensive/etc (eg, students).

3) Taxonomy, taxonomy, taxonomy: Drupal's core, flexible classification system meets so many needs out of the box.

What I would most like to see next:

Either proof of Drupal's ability to perform well serving enterprise-level sites with thousands of users or further development to enable such performance. With that, Drupal might be a contender to become the dominant CMS for the entire university.

Maybe that performance already exists and I plan to soon embark on research to answer that question. If not, is Drupal's architecture and platform robust enough to support enterprise-level service?

There's a JSP CMS world out there beckoning with supposed enterprise-level applications and PSU is already making two forays into that space: uPortal (http://uportal.org) and the Sakai Collaborative Learning Environment (http://sakaiproject.org). The JSP platfrom makes a lot of bones about serving enterprise-level needs. Can Drupal contend in that space?

BTW: PSU is sending a Drupal developer--Eric Drechsel--to Vancouver in February for the Drupal gatherings. I can't make it but Eric will represent ;)

January 12, 2006 - 23:25
DanielTheViking (not verified):

ref. "when there are no critical differentiators":

- "when there are no critical or obvious and important differentiators"..?

Non-technical or half-technical users dont know about the critical / efficient aspects that are more obscure or "abstract" if not demonstrated, like the real power of the taxonomy _flexibility_ etc. (beyond agreeing that flexible categorisiation is ok to have...)

What becomes obvious while looking at the CMS, affects the choice on the same level as - or almost "as part of" - the aestetics. (only related to features that addresses important needs)

Through clever design one can also give potential users ideas of how the tool would increase their efficiency in ways that they were not aware of - or even thought possible - before. Hence the weight on "obvious" (here also: "what becomes obvioius when looking at it" - as a consequence of the clever design).

Good article.

DanielTheViking

January 14, 2006 - 19:35
Will Pate (not verified):

This is the same thing we keep hearing from our clients at Raincity Studios: Drupal is great for features, but could be more user friendly. As a user of Drupal, seller of sites running Drupal, consultant to people who have Drupal sites and wannabe usability wonk, I support any effort to improve the user experience in Drupal.

January 15, 2006 - 07:35
DexterMilo (not verified):

I am new to Drupal but have a nice story that applies here...

A few months ago I was looking for a good CMS for a small website and also for a more complex website. Drupal was one of the first options I found. I installed it on a server and decided it wasn't what I wanted within 5 minutes just because of what it looked like and because it didn't follow normal rules of CMS.

Just last month I was starting a test site with Joomla and was planning to use it for a website that I wanted to move from my own custom CMS (scary like all hell). For a while I thought Joomla was great, installing modules was seriously easy, the admin looked great, the documentation was slick and easy to follow. Then I wanted to setup user roles and immediately decided that I was going to have problems with joomla, as soon as I realized how categories worked I was done with it.

10 minutes later I read a forum topic about the differences between Drupal and Joomla and decided to have another go at Drupal. A few weeks of testing and tweaking with Drupal later and I am pretty sure that I love it.

However, selling the interface to my clients is proving to be quite a challenge.

Drupal is really great. Humans, however, are usually visual.

January 18, 2006 - 12:06
Vincent (not verified):

Great post, Dries.

Being the manager of a company selling web services, I'm most certainly biased, but isn't it the job of a third party to make Drupal easy? I understand that the philosophy behind Drupal (and open-source) is to be used by anyone without having to rely on a third party, but the fact that Drupal has a learning curve, that it needs to be hosted somewhere, to be configured, that modules need to be installed, etc. makes it possible for other companies (like bryght.com - which I find great btw) to provide useful services as well.

Don't get me wrong, I'm not saying Drupal shouldn't be easier to use or that the aesthetics of Drupal's user interface should not be improved. I'm just saying that building software and "delivering" software (ie. the services and support around software) are different jobs, and should maybe be handled by different parties.

January 25, 2006 - 15:17
Amnon Levav (not verified):

You forgot the most critical factor:

Ease of deployment, upgrade, and customization. We should aim for easy, un-breakable Firefox-like ease of upgrade!

When a new mini-release (4.6.1,4.6.2,4.6.3,4,.6.4,...) goes out every 1-2 months, automatic upgrade not only free the developers time to further test the application, but will also ensure more feedback is given for the current release.

This critical factor should really be the first one! The automatic installation idea initiated by Bryght is critical for Drupal's long term growth. I have installed 20 Drupal sites with version 4.6.1, installed tons of modules, did lots of customizations, and now it's a real mess to upgrade it! That's why I didn't upgrade to the latest version yet.

Ease of installation and deployment is a fourth critical area in order to free developers to more creative tasks.

Ease of developer interteam collaboration is a fifth critical area. Maybe some changes can be made to the website. Easy new skill discovery. Because there's alot to learn...

Amnon

January 27, 2006 - 00:54
digibri (not verified):

I don't agree with the automatic upgrade feature request made by Amnon above.

If someone customizes one or more of the core files, then it's quite probable that an upgrade could break or overwrite the customizations. Certainly, tweaking the core code isn't ideal, but it is something that sometimes needs to be done.

I would counter with a slightly modification to Amnon's suggestion. A automated upgrade script that checks the core files to be changed to ensure they are unmodified prior overwriting them. This automated script does not need to be "lean and mean" as in the philosophy of the design of the core code since it would simply be used once (by the admin) and then deleted.

Such a script could also include a link to the change log and so forth, probe to verify the upgrade was a success, and perhaps even offer the choice to rollback the patch if the admin found that it broke something.

B.

February 2, 2006 - 20:44
Malaysian Drupalist (not verified):

10 minutes later I read a forum topic about the differences between Drupal and Joomla and decided to have another go at Drupal. A few weeks of testing and tweaking with Drupal later and I am pretty sure that I love it.

Yep, Drupal CMS has its own strength.

We call it the CREAM of the crop, king of CMS :) Well, clients dont know what is a CMS, HTML, and all that jargon. They want powerful and functional websites, so we give Drupal-powered websites. We even have our own presentation slide which explains what a CMS is capable of (actually pushing Drupal CMS and forget anything else :)

Dries - thanks for lotsa things - we owe a big one to you fella, and Drupal guys. We wish to become the `official Drupal Malaysia' and we look forward to your (or person in charge) attention for international affilation or something like that.

Azhar

June 13, 2006 - 15:56
psynaptic (not verified):

Although this article is almost a year old it is still very relevant today.

From a new user's point of view I think some areas of Drupal can be a bit confusing. This is a major stumbling block when someone has the task of choosing the best system to use. If they think they will have an easier time with another package, and they can get what they require done with that, they will choose it over Drupal. We can see this is DexterMilo's case and also mine. I was looking for a system that would allow me to create everything from a simple 3 page brochure site through to ecommerce and more advanced features. I too installed Joomla and set about looking over the documentation. I got sidetracked (thank god) and ended up looking over Drupal again. I decided to give it a go. It took me a while to figure out the basics (about a week actually) and then I was flying. Drupal has immense power but that power puts a number of users off. As another commenter said above people who are in the position of choosing Drupal will not be exposed to the major benefits of the system. Maybe that needs to be made clearer.

I would say you are spot on stating that Drupal needs to be made easier if it is to capture a bigger share of the market. Not everyone has such a technical mind afterall.

In the coming months I am going to write some basic Drupal tutorials to help entry level users get into it. I really feel that Drupal is the best choice for everyone; as the needs of users grow they will need a system that can handle that growth without having to make a switch and learn a new beast.

Rich

November 25, 2006 - 02:54
Najib Habeb (not verified):

Thank you for sharing this great CMS here! I wish I would know about Drupal much ealier. As you have compared, a lot of signification improvement have been done especially in Drupal 5.x. I will have to wait until Drupal 6.x modules a available before migrating my sites.

Congratulation on job well done. I will be continuing my support on Drupal in Malaysia

December 1, 2007 - 20:16
Think And Grow Rich (not verified):

Hello. I initiated a web search using the term Think And Grow Rich and your site was one of the search results. I am not certain what "content management systems" and Think And Grow Rich have in common. But it was an informative stop over none the less. Good luck in your PHD Doc.
Khalil

December 14, 2007 - 20:33
Go4Myspace (not verified):

I wish I would know about Drupal much ealier. As you have compared, a lot of signification improvement have been done especially in Drupal 5.x.
Thanks

May 29, 2008 - 15:50
berg (not verified):

Drupal has been more for big businesses and corporations while WordPress had been more for small and medium businesses. But with the way things are going, both are more or less evenly matched. This also tells of a certain work culture which exists between the two groups at this point in time.

November 30, 2009 - 12:01
Mark (not verified):

It's interesting to re-read these old articles a few years down the line and see how other peoples perceptions have changed over time. About the time this was published I was just beginning my development career, I focused on usability and accessibility when I started out.

Since then I have gone the opposite way and realized that eye-candy is also important, we still use Drupal at work as our Base CMS after using Joomla! for 3 years, amongst other solutions.

Keep up the good work!

June 18, 2010 - 11:40

Add new comment

© 1999-2014 Dries Buytaert Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.
Drupal is a Registered Trademark of Dries Buytaert.