Going Static

One reason why I had stopped posting anything in my blog for a while was my frustration on how slow the Wordpress back-end for Dreamhost “economy users” is, you know, the ones with the most basic plans.

I guess they must have realized that, since they are starting a new Wordpress-only hosting system, which is supposed to be optimized for that use only. All nice and good, but their promotional pricing of $19.95/month seems an overkill for my use case when I just want to write a few ramblings and move on.

Wordpress is an extremely capable platform, but it needs to be properly managed and secured and patched and maintained, all in addition to the actual content. For my use case, it’s just too much.

So I started researching the world of static site generators. To my surprise, this type of systems has advanced a lot since last time I checked it, and I can now get basically every functionality I was looking for with a minimum amount of hassle, with the additional benefit of dramatically increased speed for my site, since there is no database to maintain, no server-side plugins and no components I have to mess with.

So it became clear that this was the right path for my specific use case. The question was which one to choose. There seem to be many out there, with Jekyll being the mother of all in terms of power and functionality (for what I read). But again, my goal is to decrease complexity while still being able to do what I need to do, so I narrowed my search criteria for systems written in Python, which I can tweak easily, vs. having to learn a new (albeit easy) language, tools and environment.

Of those, the one that seem to have the biggest traction is Pelican which has a very clear structure, tons of templates and build-time plugins, and clean ways to upload the changes to my site. All this with the added bonus of having text files for everything, which allows me to keep every change in my internal Git repository.

So I started porting my old posts and site structure from Wordpress to Pelican with very good results. Once I have everything properly setup, it takes me no time to create new articles and keep everything well organized in a coherent directory structure. I write everything in Markdown, although they also support other back-ends.

Since everything happens at the client side, there is no database, and therefore the comment system needs to be integrated externally. Pelican comes with out-of-the box integration with Disqus, a well-designed comment system that allows any static site to include dynamic content. The only drawback is that your comments are not on your site, they are controlled and managed by Disqus. That means that if something happens to the company or they change their policies, you can loose potentially valuable material.

But at least from my standpoint, the benefits outweigh the potential dangers. So here I am, back to the early days of the web, enjoying safe, fast and simple static content again!

Update - 7/4/2016

I recently discovered Hugo and I switched my site from Pelican today. I really like Hugo’s speed, easy configuration and growing number of available themes. A good number of my colleagues use it also for all sorts of projects, from software documentation to static site templates. Everyone is raving about it, so I decided to go with the flow and embrace it. So far, I have to admit I really like it. I miss my old Pelican Cait theme but if I have cyles, I’d port it to Hugo.

comments powered by Disqus