WordPress to Jekyll part 1 - My history and reasoning

It's hard to believe it was 13 years ago, back in a cold December on the little island of Guernsey, when I decided to start blogging. I'd had a static site with a few odd musings since 2000, but this was to be more regularly updated and with technical content. Blogspot seemed the easiest way to get started.

Briefly hosted at home

Within 18 months of regular blogging, I'd moved over to Subtext, which, being a .NET app, required Windows hosting, so I threw it on a small Shuttle PC on my home DSL. I started using it as an experiment for CSS and web techniques but, within a year, I'd had my 1MB DSL brought to its knees twice through articles featured on BoingBoing.

I did contribute a little to the project and started chatting with the maintainer Phil Haack. I'd later meet him when we both joined Microsoft years later then again at GitHub (small world).

Landing on WordPress

DamienG theme in 2008

In 2007, I migrated to a PHP-based CMS that was making a name for itself called WordPress. My blog would remain on WordPress for 10 years across shared hosting, VMs, and dedicated servers.

One server got caught in an explosion at the ISP. Another time my site got pwned through a WordPress vulnerability. I switched themes several times before creating my own home-grown super-light MootStrap theme based around the BootStrap 2 layout and navbar. I messed with wp-SuperCache, attempting to improve performance and scalability before switching out the PHP engine for HHVM. Then I switched Apache out for NGINX and MySQL for MariaDB in an attempt to eke out a bit of extra performance.

While my theme lives on today - for now at least - MootStrap and PHP are no more as I switched over to the Jekyll static site generator earlier this month after a long meandering journey to get there.

Why Jekyll?

I've had success with Jekyll on some other sites I run. Hosting it on GitHub pages or S3 with a CloudFront brings many benefits:

  1. Cost - S3 and CloudFront cost pennies rather than $40+ a month
  2. Security - there's no code running to exploit, no WordPress plug-in back-doors
  3. Speed - CloudFront is a geo-distributed CDN, and S3 is no slouch either
  4. Editing - text files are simple to process, find, manipulate and markdown much more fluent to type

The price aspect is worth mentioning again. With the occasional bursts in traffic, my site hosting generally worked out around $40 a month for a decent VM. On AWS, I'm expecting it to max out at $3 despite these improvements and benefits.

Of course, another reason is that static-site generators are interesting, and I like to play.

Some challenges

Jekyll is a static site generator. You run the tool somewhere, and it produces plain HTML files with zero server-side code left in them. By its very nature is going to not have support for:

  • Comments - No way to accept or render them
  • Search - No site search facility
  • URL control - Difficult to match the paging/tags/categories with default plugins

Despite this, there are some blog-friendly plug-ins, specifically:

[)amien

1 responses

  1. Avatar for Khürt Williams

    I wanted to try Jekyll but so far the few people who have converted from WordPress have very small websites and rarely post content. My WordPress website is 15 years old and has over 4500 posts that would need to be ported along with ALL the comments. I post daily (sometimes multiple posts per day) to my blog. I have not seen any Jekyll (or Hugo) powered websites that operate like that.

    Khürt Williams 4 November 2018