I've been using Moveable Type for some time now over at Breakdown Industries [update, Breakdown is now being folded into unto.net]. MT is definitely one the best personal CMS solutions out there right now, but I wanted to try something different for unto.net.
MT makes it very easy to administer multiple blogs and/or have multiple people writing/editing content. But for a site that is designed for personal use, particularly if the person in question is more than comfortable with editing files on the filesystem itself and prefers to write using a text editor like emacs, MT may be a bit of overkill.
There are a large number of choices in blog software. This isn't surprising, as the technology necessary to develop blogging software has been around for a decade, and let's face it, editing and publshing text on the Web isn't rocket science. Moreover, almost all of the choices are at least viewable-source, and many of them have been released under an open-source license. It really comes down to a matter of personal preferences. My specific goals were to find a publishing solution that is:
- Free. As in beer. I wasn't at all opposed to paying (or donating) for an appropriate solution, but wanted to find something that I could at least demo for free, as there would be no revenue associated with the site.
- Open Source. I love open source software. I love the communities that form around it, I love the ability to read and modify the code itself. Plus, OSS helps ensure that a project won't be shut down one day. At worst, I'd have the right to pick up where the original project maintainer left off.
- Perl Based. Nothing against PHP, Java, etc., I just happen to find that solutions written in Perl tend to be easier to install than other languages. PHP is getting close, and I'd say that the average web-based application written in PHP tends to be subjectively cleaner than the same application written in Perl. But for what I wanted to do, Perl made the most sense.
- Database Independent. Or even better, could use the filesystem instead of an RDBMS. I've been growing steadily more skeptical about solutions that use a RDBMS for everything, even if the data itself isn't relational. All you are buying is increased overhead and maintenance costs. Unless all of your data is structured and a reasonable data model can be found, a filesystem is faster, cheaper, and infinitely easier to work with. Bug tracking systems are good candidates for an RDBMS. Blogs, not so much.
- Easy To Install. My target was to go from downloading the CMS to having a blog in 15 minutes.
- Easy To Publish. Seems obvious, of course, but having a system with which I can hammer out a quick spur-of-the-moment document on and publish it instantaneously is precisely what I was looking for.
- Easy To Customize. Both visually, with open-ended templates, and with new features, via plug-ins.
- Widely Adopted. Even the best tools are improved upon as the community grows. Particularly in the blogging world, where things evolve so rapidly (trackbacks, RSS feeds, etc) that having a wealth of plugins already at your disposal is a huge plus.
And here I am, 15 minutes after having found Blosxom, writing this in emacs as a plain text file on a Linux server via my Mac OS X laptop. Installing Blosxom took all of 5 minutes (it's literally 1 file). Installing the first plugin (breadcrumbs) took all of another 2 minutes. Installing and editing the templates took only a few minutes more. Exactly what I wanted.