This is an old post. It may contain broken links and outdated information.
I had a blog once, a long time ago. Blogging is horrible and tiresome activity—one that made me feel rushed when I was updating and guilty when I wasn’t. Yet, here we are.
I think I’m doing this again for the experience of doing it with some modern software. My first blog ran Greymatter, a positively ancient piece of blogging software which its creator had abandoned even before I started using it. It let me shit out banalities as if they were chunks of golden wisdom, but it was clunky and difficult to deal with, though I didn’t know at the time that things got better.
Lately I’ve been hosting my own web site, which you can see by clicking the “Main Site” link at the top of the page. I used Apache on Ubuntu like every other newbie out there, but I knew as I dug more into making Apache do what I wanted that there had to be an alternative—using Apache to host a small personal web site is like your mom using Microsoft Word to write a shopping list. Yeah, it works, but does it really have to be that complex?
Enter Nginx. Fast and light, with a simple but flexible set of configuration options, Nginx is extremely good at serving static files very quickly, and is often employed on big web sites as a reverse proxy in front of Apache or IIS servers, a role in which it is able to send out unchanging images and text while the upstream boxes churn out dynamic stuff. It also makes a kick-ass standalone server for a small site like mine.
Ripping out Apache in favor of Nginx was a surprisingly fun way to kill a weekend. So fun, in fact, that I ended up writing an account of the process for Ars Technica. I began to wonder what else I could do with my time. I had already set up a wiki using DokuWiki, which my buddies and I used to post information about the Minecraft server we play on. I could set up a forum like phpBB, but why? Setting up some blogging software seemed to be the next logical choice, so I set to it.
I installed and configured Wordpress, which was bloated and ridiculous in the extreme. It’s a fine application, and hats off to the designers, but for a small site with a single author it was ludicrously over the top. Plus, its freight of MySQL brought with it another complication, as the Ubuntu 11.10 repositories still have MySQL 5.1 in them instead of something in the current 5.5 family. I installed and briefly fiddled with MariaDB, a drop-in replacement for MySQL, but ended up abandoning the enterprise as being far too complex. Most other popular “blogging” applications were similarly huge—things like Drupal and Joomla and the like are really just massive extensible content management systems, and using them for a simple blog is needlessly insane.
So, Octopress. I saw it and passed it by while looking around for Wordpress and Drupal themes, then came back to it after dropping the idea of a giant CMS as a blog. Octopress is kind of an odd duck, relying as it does on Ruby and flat files, but the idea of a blog made up of nice static pages instead of rows in a database grew more and more appealing the longer I thought about it, and I decided to make the jump.
It’s beautiful, it’s fast, and it’s easy to configure. The ability to blog in vim and then quickly publish with rsync is awesome, too, although after admitting to using vim for more than just making the occasional configuration file tweak probably means that I should start growing my neckbeard.
And that’s how I got here. Will publish this, then set to writing two more posts: one on the Octopress install process, and one on configuring Nginx with Octopress.