On Moving to Jekyll

- 2 mins

When I first started a blog on blogger back in 2003, it just took a few clicks, and I could publish a post. It was easy to get started, but personalizing your theme was hard.

No NPM modules, no CSS preprocessors, no version control. Just write good old fashion CSS wrapped in

Wordpress was friendly, and it now powers close to 30% of websites on the internet (which is insane, if you think about it), but as years went on, the bloat grew. You need at least MySQL, PHP, Nginx (or Apache) installed to get started.

Wordpress usage stats

Times changed. You cannot serve pages without SSL these days. To nudge website owners towards SSL, Google began burying websites without TLS in their search algorithms.

I used Let’s Encrypt for a year, but had to renew the certificates from my VPN now and then manually (yeah, I could write a cron job for that, but seriously I just want to write). I ran all sorts of crap on my DigitalOcean droplet. At times I wrecked it and had to restore old snapshots. I wanted something simple, something easy.

Sure I could move to something like Medium.com, but no scope for customization. I took Professor Scott Klemmer’s HCI course on Coursera (and fell in love with minimalism and fine typography). It is essential for me to tweak the look and feel of what is mostly an online extension of my physical presence in this world.

Static site generators like Jekyll have been on my radar for a while but did not have the perseverance to give it a try. Late last month, that changed. I destroyed my DigitalOcean Droplet and moved to GitHub Pages. It is easy to host and deploy your site. As easy as pushing code to version control. Gratis versioning and hosting!

jekyll logo

You need to have Ruby 2.1.0 or higher installed for local setup. macOS comes preinstalled with ruby, but I used Homebrew to install the latest version of Ruby. Check out the guide on how to set up local development environment of Jekyll on your computer.

Writing posts in markdown is fun. I wrote a ton of API docs for my former employer in markdown. It is in muscle memory by now. However, if you are new to Markdown, it is easy to learn. In John Gruber’s own words:

Markdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).

It is pretty amazing that GitHub makes it possible to use any Jekyll theme. Just need to tweak _config.yml and add drop remote_theme: owner/name.

I love everything minimal, so the choice was obvious :point_right: Minimal Mistakes. The author of the theme is pretty active with his contributions and responds to issues.

I have a long list of things I have meant to publish here but never found the opportunity. Let’s change that in 2018.

rss facebook twitter github youtube mail spotify lastfm instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora quora