Why I (still) use Jekyll for my website and blog

Posted by Wazoo on January 15, 2019 · 9 mins read

I’ve tried many blogging platforms and generators, but I still return to Jekyll. I don’t consider it “the best” platform, but I do consider it my platform of choice.

Over the time I’ve run my own website, I’ve developed my own custom set of requirements:

  • Control of my content. At first I always thought it was “cool” to have my own domain name, but over the years it also became a desire to make sure I can try to control whatever message I had.
  • No walled gardens. Building your website in someone else’s garden, such as Wordpress.com, Blogger, Tumblr, Medium, etc., means you’ve put control of your content in another entity’s hands. At any moment, all they have to do is flick a switch, and your site goes offline.
  • Markdown supported. In the early days, some manual or editor created HTML was acceptable for my site content. However once I started to use Markdown for everything, it added a bit of complexity when trying out different platforms or software that didn’t support it. Going back on a lot of content in order to properly HTML-ify it is just too time-consuming.
  • Cost. While not as important these days as it used to be, cost is still a tiny consideration. Apart from hosting, or any platform costs, what other expenses are going into the website.

Blogger

Back when this first launched, it seemed like an ideal way to host my site. I could post any tutorial I wanted to create. As I started writing, however, I came across a few “deal breakers” that eventually just resulted in me leaving the platform:

  • no custom domain for me
  • very limited customization allowed
  • the default themes and color choices were “nice” but needed more depth

Joomla

No.

Wordpress

Not the blogging software, but the actual platform. I tried this out as Wordpress began to pick up adoption and mindshare within the various communities I was either a part of, or just lurking. As with Blogger, it was incredibly easy to setup an account and a site. I liked the theme choices available and got into things right away. Also similar to Blogger, I ran into similar issues that resulted in me leaving the platform:

  • no custom domain for me
  • very limited customization allowed
  • was too expensive for me (at the time)

Wordpress

Not the blogging platform but the actual software that makes up Wordpress. After leaving the platform, I decided to buy my domain and spin up my own instance of the Wordpress software on a homemade LAMP stack. I then entered a non-productive cycle whereby I’d be far too focused on the actual theme I was using and not the content. Rookie mistake.

However, I could install any Wordpress plugin I wanted, and - most importantly - this was running on my own domain, ergo I could control my own message and branding.

A few downsides started to rear their heads, beyond my constant FOMO of my Wordpress theme:

  • increased maintenance. As a developer, I definitely embrace and understand the need for maintenance. However, on the creation side of the equation, I needed to make it a real regular chore to ensure everything was always being updated. My site was hacked a few times over the years, and while vulnerabilities in the software were regularly being updated in a timely manner, it was just extra “work” I was hoping to avoid.
  • premium themes relying on other premium plugins. This started to irritate me. I’ve got no problem paying for a theme, as I understand (and support) other developers in other mediums. What I think needs to be sorted out somehow, is themes that rely on other premium plugins which are NOT clearly defined during purchasing. Either the plugins are not mentioned, or it’s miscommunicated that they are indeed requiring their own payment plan.
  • themes that look amazing on the shelf, but pathetic when I bring them home. Again, I understand and support the whole theme business. But with the state of my content (at the time), nothing ever looked as good - design-wise - as it did when I was viewing the premium theme on a demo site. Even as I started to update my content, I could never get it to match what was in the demo design.
  • the need for a database. The Wordpress software relies on the use of a database to store everything for your site. I’ve got no problem for this, other then the fact that I was starting to see other options appear for creating your blog / website. I really started to see the value of static generators for my content. No matter what domain or hosting company I go to, I can simply regenerate my website. No need to plan a database migration.

Drupal

Who could ever forget that ridiculously catchy Drupal song?

To be honest, I never gave Drupal a real shot. At the time I discovered it, it just seemed way too complex for the simple site I had in mind to build.

It’s still kicking in 2019, so the crew must be doing something right.

Gatsby

Being a frontend developer and into React, I’ve always had a loose eye on Gatsby. It’s a neat project and I very nearly ported my entire content to make use of it. Its theme structure is pretty solid, and it provides a good foundation with the use of GraphQL. It’s a great solution for building a website following serverless principles.

However, for myself, I was starting to notice a few issues:

  • I was working in my site, instead of on my site. While trying to find the “perfect” Wordpress theme used to eat up a LOT of my time, so did “tinkering” on the React code for my website. Now don’t me wrong; while most of it is already boilerplate, I was needing to spend my time updating just a few components.
  • It wasn’t terribly easy switching themes…at least not as easy as some of the other options I’ve listed here. While I do love the idea about a composable theme, it again starts to increase my level of work in the site.

Jekyll

This current website is on Jekyll, and I’ve been overall pleased with how it looks and operates. I can create any site / blog structure I want, post demos, embed any media and adding shopping cart support if I want, etc. If I change my hosting provider tomorrow, I just need to press a button and re-upload my site content.

Page and Post templates are straight forward enough to update and fiddle with. The documentation is fairly complete and covers a lot of the use cases you might encounter while putting your website together.

There are plenty of Jekyll theme sites available, and it’s still in active development.

Conclusion

That’s a quick and brief rundown of the different website platforms and software packages that I’ve tried through the years. I certainly don’t want to give you the impression that the options I didn’t choose are “no good”, they just weren’t good for me. If you’ve put your website or blog on one of these options, or anything else, and are happy with it – then go with that! Feeling good about your website or blog is critical to keeping it updated!

Note: Also try to remember that as my website has evolved through the years, so to have the software and platforms that were evaluated. While there are certain network / business level limitations that will likely never evolve, the platforms revolving around actual software can change over time. The points I raised when I tried out the software may no longer be valid today.