In Choosing a CMS

Deciding among the myriad of options available is no easy task. The choices range from premium paid CMS packages to open source, from blog-flavored to roll-your-own. I looked at Content Management Systems recommended by developers, designers, do-it-yourself hobbyists, and non-profit professionals. What follows is a not entirely coherent record of my thoughts and the testing process I went through.

Do we need a blog format, a wiki engine, or something else? How extensible is it? How easy is it to use? How hard is it to program? Update? Break?

Identify the customers’ needs and build from there. Ok, we have two types of clients: state associations [medium scale] and individual farms and ranches [small scale]. Small scale has less demands, so I started looking for something to fill the needs of the state associations. I took notes about most requested features and things used often. In no particular order, they looked like this:

Classified Ads, Member Lists, Search function, Gallery, Events Calendar, Newsletter and/or Board Minutes, custom designs, Form building.

Now what do we, as developers need? Our team needs:

  • a meta site - one log in to handle all 240+ sites
  • something extensible - multiple widgets, something to meet every demand
  • learning curve levels - how much time is expected, to learn it?
  • sample sites - who is using it now? How much power is behind their site?
  • open source - must be free, must write clean code

Also: are there any bonuses or cons? Random thoughts? I can’t tell you how many articles I read. I did eventually narrow them down, though. The most popular choices I found in the arena of small to medium scale: WordPress, Movable Type, Joomla and Drupal. By learning curve level (for developers/designers), from easiest to most difficult:

  1. WordPress
  2. Expression Engine
  3. Movable Type
  4. Joomla [and Mambo]
  5. Drupal
  6. Django
  7. Ruby on Rails

WordPress

Like many hobbyist blogs, mine is powered by WordPress. Possibly the simplest free solution, it is easy to install, maintain, understand, and use. There are many resources available on how to customize or create a theme. No subversion, plug-ins are easy to install, some documentation, and the interface to write posts is simple and straightforward. Bonus: Low-level learning curve, since my co-worker and I already play with PHP. Cons: uploading and managing multiple files is awkward, if using the interface. I prefer to FTP, but I already know that won’t be an option for our customers.

Expression Engine

Closer to the functions needed, including a meta-site and membership managing. This is a premium paid service, so I expect more- why don’t they have a calendar of events? Something so often requested, yet I don’t see it available after a cursory glance of their plug ins, extensions, and modules. I have read other web designers who gush about Expression Engine, but I don’t like the closed-source philosophy.

Movable Type

Only became open source after I submitted a different CMS for approval. Urgh! At any rate, it appears the serious bloggers use Moveable Type. Seems straightforward in theming and code changes. Once the technical snag is solved for our small scale clients, I am leaning towards Moveable Type as a possible solution. Thoughts: the interface is excellent. The UI is designed to feel intuitive but not insulting - a rare blend of user experience that shows professional TLC.

Joomla/Mambo

The schism into two separate CMSes aside, both sites failed spectacularly. Both demo sites were down. Way to sell yourself to a potential audience. I don’t have the time or the patience to check back later. Who knows when I will have enough time set aside to test again?

Django

Too many roll-your-own options. We do not need to reinvent the wheel. Most of our problems are common enough and this solution would be overkill. Looks good for building Rich Internet Applications and complex forms, however.

Drupal

Yes, Drupal. It is a high learning curve compared to any of the blog-format CMSes, but it has the most potential. WordPress, Expression Engine and Moveable Type all offer solutions that would fix today’s problems, but not necessarily tomorrow’s. Drupal can grow with us. Call it something like future-proofing. We need a CMS that can be simple today and robust tomorrow. I have read the web designers’ perspectives and the developers’ view on Drupal, and this is the only CMS where the developers and designers are close to a middle ground.

Ruby on Rails

I watched a video of a developer building a cookbook application. It’s exciting to see an elegant, well-executed program. I just wonder how many of these videos were made by programmers who already understood Ruby. I like the idea of building Rich Internet Applications quickly and beautifully, but none of our web sites come close to a large-scale description. Besides, I am only 1 of 2 developers here. Aside from personnel constraints, we have time constraints. I wish I had time to learn Ruby on Rails and could develop our own branded CMS, but that just isn’t practical considering our lack of resources.

Conclusion

On the designer side, the end-all, be-all is Expression Engine. On the developer side, Ruby on Rails is the new poster child. Neither of these will work for our medium-scale clients, since we need flexibility in design and development. We don’t have the luxury of time to learn Ruby on Rails, but need something powerful enough so we can develop our own widgets. Expression Engine looks to constricting in that respect. Drupal looks as close to a happy medium as it gets.

Tags: ,

Leave a Reply

You must be logged in to post a comment.