The Industry

Articles on community development, Ruby on Rails, and SEO

The False Economy of Choosing a CMS January 12, 2008

filed under

About Shinji

I'm a Rails developer and nonprofit administrator, specializing in online community development.

LinkedIn | Twitter | del.icio.us

If you’re looking to set up a website any more complex than a blog, you have to use a CMS. There are some impressive open-source options out there, like Joomla, Drupal, or Plone. A while back, I did a big Joomla deployment for a client, and that experience cemented my opinion on the field. Deploying a well-customized CMS is no easier than writing one from scratch. More to the point: It’s not cheaper.

A CMS package works like this. You set it up on your server, and it comes with a standard set of templates; these templates determine your site’s look and feel. You may have your choice of templates; Google for “themes” and you’ll find a thousand prepackaged looks, easy enough to drop on your server and go.

But you want your site to be unique, and you certainly don’t want it to look like every other Joomla/Drupal/whatever site. You have to come up with a look, and customize your CMS to match that look. Doing this well is highly technical work; it requires expertise in HTML, CSS, and some programming language (probably PHP). Default themes especially tend to use avant-garde CSS, which requires serious experience to master. Your CMS uses an idiosyncratic theming system, which requires experience or learning to master.

So where’s the economy in hiring programmers to customize a CMS, when you could hire programmers to write one just for you, tailored to your unique project? I haven’t seen one yet. Frameworks like Rails make it really easy to write simple, focused content management tools. They’re just as free, so you’re still not spending on anything but labor.

There are, of course, truly excellent sites out there, running Drupal or whatever. I don’t disparage the quality of the code. If you have a good rationale for using a packaged system, more power to you—just don’t make the rookie mistake of thinking it’ll be cheaper.

What about blogging?

True, blogging packages like Wordpress, Movable Type, or Mephisto count as CMS. I like Mephisto, and it powers this particular site. If you want to set up a blog, then I suppose I do recommend using a package.

Here’s the difference: a blog is an unusual case where you actually want something with standardized, generic functionality. You just want posts, comments, feeds, and tags. Nothing crazy; that’d take away from the value proposition of a simple, instantly understandable blog format. You don’t need to customize anything, so go for it! You really do get an instant blog, and that’s great.

The “theming” issues are the same, however. There are a thousand pre-fab blog themes out there, but again, you don’t want to have the same look-and-feel as other sites, right? Again, you have a choice between having a unique look designed for you, or having an existing look altered. The former approach is simpler, more effective, and probably faster anyway.