I’ve left WordPress.
A few years ago, this blog was hosted on a linode, using pyblosxom. Pyblosxom was a wonderfully elegant solution — it converted plain text files into HTML using a Python CGI script, without the need for anything more complex. The downside of Pyblosxom was that running CGI scripts has always been pretty ugly; all that messing around with different directories for CGI and static content, permissions, runtimes. Urgh. Comments were a mess, at the time nearly impossible to configure securely.
So, I gave up and moved this blog to WordPress. Not wanting to manage all the complexity of databases, upgrades, etc myself, I hosted it on WordPress.com. But the complexity’s still there, and something about that was still bothering me. I yearned for the simplicity of static HTML and to return to keeping the master copies of my posts in plain text, rather than embedded in an opaque database.
After looking around for a while, including at blosxom and pyblosxom again, I discovered jekyll. Jekyll’s an elegant solution to the problem I was trying to solve: a simple application that takes in layout and post information and spits out deployment-ready HTML. I toyed with hosting the data on S3, only to discover that GitHub will deploy a jekyll blog for you, through github pages. This, then became the obvious answer to my requirements.
I played briefly with TypeKit, implementing custom fonts to provide some differentiation from Jekyll’s inbuilt template.
I’ve since migrated again to a Jekyll derivative, Octopress. Octopress has many of the benefits of Jekyll, including Github pages integration, but adds some extra features, such as a more complete basic template. Unfortunately, this comes at the cost of a much more complex installation and deployment process.
In the coming weeks, I’ll probably move back toward a vanilla Jekyll environment, but bring across the parts of Octopress that don’t require such complex dependencies.
In the meantime, I’d appreciate any feedback. I’m sorry if there’s any broken links caused by all this change; please let me know at email@example.com