Blogging with Jekyll


Hello and welcome to my new blog! If you are seeing this, it means that Jekyllreally did work, and my new website is now hosted on Github!

Jekyll is a lean blogging framework made for developers and designers and written in Ruby on Rails. It comes with built-in support for theming, analytics, comments, and post/page creation. I am using it as it is allows me to only focus on writing and nothing else.

I must say that working with Wordpress was a wonderful experience. It has any features and a billion plugins for a variety of functions. However, the sophistication, and security complexity it was posing had me re-think my decision on whether I should use it as my CMS. That coupled with the fact that one of my websites was recently hacked by a group called “El_Cewad” so easily, despite all the measures I had put in place. That disappointment had me looking for alternatives.

Very recently, I started to learning Ruby on Rails and it meant that I was spending countless hours in my text editor. Rails is a beautiful language that emphasizes Convention over Configuration among other Agile principles. The principle of DRY and the power that you get from the barebones framework, as well as the community developed gems had me make the lunge. It was as I was browsing the forge that I cam across Jekyll.

Jekyll is a simply a text transformation engine, just that, unless I did not clearly understand how it works. It tickled my curiosity as a developer. Why go for a chunky solution when I can have a thin tool that gives me just as much power, and also allows for customization? It made a lot of sense as a static site generator. You should give it a try. The documentation can be found here

2016 Update

You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated.

To add new posts, simply add a file in the _posts directory that follows the convention YYYY-MM-DD-name-of-post.extand includes the necessary front matter. Take a look at the source for this post to get an idea about how it works.

Jekyll also offers powerful support for code snippets:

def print_hi(name)
  puts "Hi, #{name}"
#=> prints 'Hi, Tom' to STDOUT.

Check out the Jekyll docs for more info on how to get the most out of Jekyll. File all bugs/feature requests at Jekyll’s GitHub repo. If you have questions, you can ask them on Jekyll Talk.