I have recognized for a long time that web content management systems make sense, especially when the site is to be maintained by multiple people, or by those with limited ability or inclination to work with "raw" html. Over the last few years I have encouraged several non-profit organizations to install and use a content management system for their website. The result has been a dramatic reduction in the technical problems of maintaining the resulting sites.
But nothing is going to eliminate the human motivation problem that arises in maintaining site content. Good technology makes it relatively easy to edit site content, but someone must still think about what is required, or should be changed, ... and then spend the time needed to get the right words and pictures up on the site.
It happens that there are a number of well-established open source content management systems available to be run in the LAMP (Linux, Apache, MySQL, PHP) environment. LAMP is good because LAMP hosting services are generally available at lower cost and with more features than the alternatives. And open source is good because it allows free experimentation with alternatives. Open source isn't the answer for all software sourcing, but it is a realistic and practical alternative for content management.
The obvious base point for any content management system is to separate content from its presentation. A template, theme, or skin is applied across the pages of a website. Everything that gets published then fits into that consistent presentation framework. Editors can concentrate on content without worrying about how it is to be presented (and without the danger that a technically unsophisticated editor will make unfortunate technical changes).
From that beginning, content management systems (CMS) have evolved into web service platforms that provide a rich array of capabilities. Content can be stored in a database, with pages generated as required by site visitors. CMS can provide a fine grained control over which users will play what roles, with what access to different pages, content, and services. And the more popular open source CMS have hundreds or thousands of plug-ins that can be installed to add a wide range of capabilities to a site.
It's all too easy to confront an "option shock" when dealing with the more complex CMS - there are so many options that it's difficult to know how to proceed. My journey with open source CMS started with phpWebSite from Appalachian State University. I used it for several non-profit, volunteer organizations. For several technical and financial reasons, I then used Xoops for another site. It worked, but never felt all that "comfortable".
Along the way I gained experience with a custom developed open source CMS-oriented web site and with a proprietary CMS platform aimed at a specific industry sector. The limitations of the version of phpWebSite that I was using became all too clear. When motivated to move my personal website onto a CMS platform, I looked about for the best current alternatives. It came down to a choice between three options: phpWebSite, Joomla, and Drupal.
Both phpWebSite and Joomla are going through an "interesting" transition. Major revisions have been released. These new revisions offer great new capabilities, but old themes and plug-ins don't automatically work with the new versions. Joomla has the best PR. It's documentation says all the right things, but the user access controls are still a bit crude with no ability for the administrator to define new user roles. After looking hard at Joomal I decide it wasn't right for me, at least not at this time.
I was down to a choice between phpWebSite and Drupal. Drupal won because it seems to be gracefully evolving from one version to the next, with quite substantial support from authors of open source themes and plug-ins. The downside with Drupal is that it assumes there will be a reasonably knowledgeable site administrator. With only a bit of fussing, however, I was able to develop a theme that I liked and was able to install a couple add-on modules.
Going forward, I'm planning to install several additional Drupal modules. I now have a platform that will allow me to experiment with different web services. It's not a "perfect" CMS - nothing is! It does seems to be a good fit to my capabilities and my interests. I'll report in the future on how the journey is progressing.