I’ve been trying to migrate my blog from Google App Engine to something a little more manageable (and not tied to GAE infrastructure) for some time. However, all of my attempts to rewrite the blog in ASP.NET have failed due to newer versions of “things” coming out, making me start over before I get to the end. I’ve come to the conclusion that coding my own blog is getting in the way of me blogging.

However; yesterday I came across Jekyll, which runs on GitHub Pages. This combination solves a lot of my blog requirements without me having to do anything!

  • It’s free to host on GitHub pages
  • All of my existing posts can stay in HTML
  • My new posts can be written in Markdown! (finally! this one is completely Markdown :))
  • It’s not tied to GitHub, or even Jekyll. I can take the static HTML version of my site and put it anywhere (or replace it with a dynamic one in future!)
  • Code formatting support

Hopefully; if my blog is low-maintenance, I might actually get back to blogging a little more! Sadly, there are a few little drawbacks:

  • Jekyll doesn’t support tag/category listing/index pages out-of-the-box, and GitHub has plugins disabled. I came up with a workaround for this (as you can see, I have tags in the sidebar that link), but it relies on creating a stub page for each tag; but that doesn’t seem too bad compared to having to run Jekyll locally and just publish the build output! I might blog the details of this once everything is fully working.
  • All of my posts (including those that have .html extensions) end up with trailing slashes in Jekyll. I can’t explain this, but they get 301 redirects due to the folder names, so I don’t think it’s a huge problem.

I’ve still got some tidying up to do, but maybe now that my blog posts can just be text files in a repo, I’ll blog a little more!