The last reboot of my website took place ages ago, in a period where it was a good idea to use XSLT. This is a quite peculiar language for someone accustomed to more classical programming paradigms (imperative or functional ones). Even if I gave introductory courses for XSLT in a past life, my mastering of the language remained rather low and years after years, it become clearer that I would have to ditch to old beast.
I've to confess that I was nearly seduced by the Dark Side. But strong enough, I was. To be honest, it was not so difficult. The very idea of using something written in the worst language ever, and, even worse, the need to use a very complex web interface to write my website, were unbearable.
Meanwhile, I was pointed to Org mode as a convenient way of organizing my ever growing pile of todos. It turns out that, as every org mode user will confirm, this major mode is probably one of the best piece of software ever written. A side effect of using org mode was a stronger reluctance to ever write any XML, especially in my XSLT personal "CMS".
Of course the idea of blogging with something geekier than a full featured online CMS is not very new (and even if I'm not a blogger, my XSLT solution was exactly that, an offline simple CMS). Fortunately, XML/XSLT are not as fashionable as they used to be (a long time ago) and far simpler solutions have emerged, in particular Jekyll, launched in late 2008 by Tom Preston-Werner of Github fame. Jekyll is my static cms made with modern and simple tools: Ruby, Liquid, Markdown and, obviously, YAML instead of XML!
I had to customize a bit my solution. In particular, while Markdown is a very nice language, I wanted to author in org mode for an obvious reason: I use org mode everyday and I didn't want to start confusing the markups. Luckily, I'm not a pioneer on this path and I just had to follow more or less those instructions.
I took the opportunity of this migration to redesign the look of the site (a standard requirement for a reboot). And again, rejoice! For persons with a total lack of graphical talent (like me), the availability of a super sleek CSS+JS framework like Twitter Bootstrap is a very good news.
And that's how it works: