Norbert Hartl

mostly brackets and pipes

Changing Blog Engine From Pier to Octopress

Several years I’ve been using the pier content management system for my web site. I loved pier for being an excellent example on how content can be managed. It lowers the border between static content and dynamic components by breaking both down into structure. Components can access content that is stored as page structure as well as dynamic content parts can access the whole structure of a site.

On the other hand pier is a rather complex piece of software that is hard to digest. Maybe this is the reason why only few people became familiar with the code. Having a decent user base is essential for software to survive. I’ve spent a lot of time with the code but I still don’t have the feeling I understand it.

From time to time I remember that reducing complexity in software and deployments is something important. I only write blog posts occasionally and for this using a complex content management system is overkill.

By occasion I got notice of the octopress blogging framework. It is written in ruby and produces static files. This is quite the contrary to what I had before. I’ve always been a big fan to make a web site out of static files. No dynamic components that can break, no performance issues. It is like in the good old times where I managed a news paper web site that could service 1 Mio. page impressions on a AMD K6 CPU with 128MB RAM.

By switching the blog engine I got a nice modern HTML blog at the same time. Octopress needs to be operated from the console in order to create blog posts. I’m quite familiar with working in a terminal so this is not a problem. Octopress is meant that way. It is called a blog engine for hackers. I’m curious how long it will take until I need to dive into it to change something and learn some ruby on the way.

The downside of having static files is the difficulty to have dynamic things included. Most blogs allow to comment blog posts. That wouldn’t be easy to do with static files. Octopress has support for using disqus as an external commenting engine. I might try this but I’m not sure if a blog needs comments. We’ll see!