From Server-Side Includes (SSI) to Jekyll
I migrated this web site to Jekyll.
I did this because in 2002, I had made the previous versions of these pages following the principle kiss (keep it simple, stupid) using the then brand-new technology server side includes (SSI). By means of
<!--#include ... -->
and similar statements the web server was made to do exciting things like showing the most recent change time of a page on the page itself or to integrate a menu. The main advantage besides simplicity was the absence of any dynamic or other complicated mechanisms besides SSI. However the disadvantages are the fact that SSI is not supported by many hosters out of an important reason: It is considered old, unsafe and not very powerful.
Still I didn’t want to use wordpress or even typo3. Firstly, I have no knowledge about them and didn’t want to learn for an eternity, secondly I wanted to keep full control over the pages. Thirdly I can do without any kind of dynamic content. Because of the quite complex relaunch of a site using typo3 which I attended marginally, I am adequately scared off.
Google told me jekyll was the number one static site generator. It runs on top of ruby. I know ruby was hot once several years ago, at least on rails, but that’s already my complete knowledge about it. Anyway learning something new is always nice. I learned that ruby modules are gems (like the extra points in temple run) and so the packet manager tool is called gem, too. And indeed it installs jekyll using
gem install jekyll
The version of jekyll which exists on debian wheezy is too old to work with it in a reasonable way.
My first goal was to port the existing pages to jekyll and to change nothing else.
This worked quite well indeed. jekyll translates all pages in the current directory into a output directory using
If you do nothing else before, it copies all pages one by one. From this starting point I could translate from SSI to jekyll page by page until the last page changed from .shtml to .html.
It is noticeable that the jekyll’s documentation is quite good as an introduction, but for advanced functionality you need google. That in turn is very fruitful. Probably many things would be easier to understand if you knew ruby, and liquid. liquid replaces all the place holders, variables and snippets in the various layout, page and post files.
A nice side effect of the transition was I learned markdown. Markdown is what I actually write at the moment. You only write text files, which are very readable, and jekyll translates them to html. That’s quite cool since you don’t need any balanced html tags and such any more. It’s a bit like wikimedia markup, but even simpler.
Summary: I just started using jekyll; I am surprised why it is so popular because it seems not to be very powerful; on the other hand it feels good having migrated the site.
Dein Ständer ist unten! »