Jekyll - Blogging for Developers
You may have noticed that this blog moved from Blogger to a Ghost themed Jekyll website hosted on GitHub pages. It's been a long time coming, and I couldn't be more happy with how things turned out.
Jekyll on GitHub
Jekyll is a static site generator, which allows you to create websites with markdown easily. All of my posts can thus be written in markdown, with code highlighting and version control thanks to GitHub hosting.
To get started, all you need is to find an open source theme that you like
(e.g. Kapsper), clone it, and run
jekyll serve (after installing Jekyll).
Because the posts are written in markdown, you can use your
favorite markdown editor to write your posts in, or just your editors markdown preview
Hosting on GitHub is completely free (for your first site), and works seamlessly with Jekyll, until you need a plugin. This was the case with Jekyll RSS which is a plugin that generates an RSS feed from my blog posts.
In order to get plugins to work, you need to compile in a separate git branch,
and then deploy to
master. Here is my source branch:
Here is the
publish.sh script I wrote to make publishing quicker (DO NOT EDIT ON THE MASTER BRANCH):
#!/bin/bash jekyll build mv _site/ /tmp/ git checkout master rm -r * cp -r /tmp/_site/* . rm -r /tmp/_site/ git add . -A git commit -am'publish'
I considered many other platforms before stumbling across Jekyll. Namely Ghost, Medium, and Svbtle. Both Medium and Svbtle control the display of posts, which is a big downside, but they are extremely simple to use just for writing.
Ghost was most interesting, and my inspiration for a Blogging for Developers hackathon project. However, it's development has been slow in coming partially due to a rewrite in Ember.js which took about 4 months. I simply couldn't wait this long, and without free time to contribute to the project I had to abandon the idea of using it.
Blogging is a passion of mine. It brings me joy to catalog my activity to help me reflect on the projects I have worked on. I believe it makes me a stronger developer and has been a motivating force behind a lot of the open source work that I do. I would recommend technical blogging to every developer, no matter what projects you work on.