… or, “from static to dynamic and back again”.
I’ve finally decided to set-up a new technical blog. I think one of the main reasons it took me so long to start was that I couldn’t find an engine that matched my taste. Ok… as a coder, my taste is not exactly that of a final user.
After reading this post, it became clear that what I wanted was a static site generator.
Static? But that’s soooo 1990s… well yes… and no. I’ve you’ve ever tried to roll your own blog engine (a common web framework learning exercice), and got to the point of optimization, you may have come to realize that you can cache most, if not all, your content… mmmmm… This is certainly oversimplifying, but you get the point:
DYNAMIC + A WHOLE LOT OF CACHING = STATIC
The other, probably most relevant, difference from the 90s is the mashups culture. Your web app can rely on third party services for its dynamic parts. (IMHO, Even if you are able to serve dynamic content, it’s still interesting to use some of those services).
Now that you know the whys, let’s talk about the hows.
There are several static page generators out there (just Google for them). I feel confident with Ruby, but the key point here was Github Pages having automatic Jekyll processing (no suprise: jekyll’s author is one of the Github founders).
I must admit I am curious about Hakyll too…
With jekyll, you get:
--pygments
option.Plus, of course, the possibility to store your blog at GitHub.
There are some good reasons for using a third party comment system instead of your own (security, merging different sources, statistics…), even if you can serve dynamic content. For this blog I chose disqus, but there are others…
Both the content and the templates for this blog are hosted at a Github free account, which will even let you redirect your domain. You can check the source code, fork the repo or whatever here.
Some other tools have sprung around github pages / Jekyll. If I started blogging now I’d probably check them out: