A New Blog - But Why Choose Jekyll

I've started my blog from scratch, and moved from wordpress to Jekyll in the process. So why the change?

The last incarnation of my blog was something of an experiment for me. I was running Wordpress, as I always did, and becoming increasingly attracted to the idea of having the ability to “Art Direct” certain posts. Trent Walton, Jason Santa Maria, and Craig Mod all played a part in fueling my desire to experiment with this. And I wasn’t alone. A whole slew of plugins exist for Wordpress to give you the ability to specify custom CSS, Javascript and so forth, but they always felt like a workaround. Something that created messy, unneccessary code. Surely, there must be a better way?

Jekyll allows you to construct a post as a markdown, or a HTML file, which meant that I ccould actually edit the layout of a post, directly where I was writing the content. By manipulating the HTML around what I was writing, there was no need for ugly hacks, or creation of page specific templates that needed uploading before I could use them. For all intents and purposes, it allows you to design every single page or post you add to your site.

Once you have finished creating your layouts and writing your content, Jekyll then builds your site into a series of static pages. So there are precisely zero database requirements or requests involved. The navigation is generated for you and inserted into each page, as defined by your template. This results in an incredibly fast and stable site for your readers, as they don’t have to wait for any server side processing at all.

It isn’t without some drawbacks when compared with a CMS like Wordpress. For example, as there is no server side element to Jekyll, it’s very difficult to roll your own comment system. I chose instead to use Disqus and I was even thinking of switching my Wordpress comments to that before this move. Additionally, there is no web interface to compose or edit content. This might be a drawback for some, but it is born out of one of the most attractive features for me. All of your content is in a git repository, and therefore the repository has to be cloned to your local machine for you to work on it. But that means that you always have a fully versioned backup of your site to fall back on, or easily migrate to a new server - without having to worry about database migrations. I might not be able to easily publish a post from someone elses computer, but that is a small price to pay; an activity I rarely, if ever did on wordpress.

The other drawback for some designers is the fact that you need to be able to work with HTML, and understand some very basic Ruby to get your templates up and running. If you were interested in customising wordpress, you’d have had to get your hands dirty at some point.

I’ll be posting a few articles in the near future about how I’ve customised Jekyll and tweaked the settings to end up with the site you see before you now.

—Adam