Back in September I got tired of maintaining Wordpress with update after update to keep up security on a site I barely touch. I backed everything up, took my server down, reinstalled it from scratch, and put up a 503 Service Unavailable message until I got around to doing something with it.
A while ago I had read a post by someone I like to read where they described their homebrewed blog solution. One of the key points was that it generated only static content which could be served very quickly with little CPU load. Compare this to Wordpress which used a MySQL database to store everything and sent dozens of requests to it for every single page load. Since I don't update my site regularly and have had literally one non-spam comment in the nearly 10 years it's been up I decided this was a good way to do things.
At first I planned to write my own processor. I'd use Markdown as the input since I've become very familiar with it from a lot of posting on Reddit and other sites. As there are a number of good Markdown implementations, I'd basically be writing some glue code to read in and write out files in the right places for my preferred scheme. I'd probably do it in the Python programming language because I like it.
Unfortunately plans are the easy part, doing it is more challenging. After a few false starts I stalled. I got busy with other things and the site stayed down long enough that Google even gave up on my 503s and delisted my search results.
Recently however I found, unsurprisingly, that I would have been reinventing the wheel if I had completed my project. I was linked from somewhere I unfortunately don't recall, probably from /r/python, to a piece of software called Pelican. It's exactly what I wanted to build, a Python-based static site generator that would accept Markdown and generate pure HTML. Even better, it could automatically upload to a remote server so I don't even have to keep the original content on my public server. I edit my Markdown files on my home server, then run a command there to build the HTML and send it off to the internet.
This is my first post written specifically for the new system. All of my other posts have been imported from the Wordpress XML export thanks to Pelican's great toolset. I've redirected the old "seanharlow.info" domain to this blog's new location so any old links that may exist still work, and hopefully I get my Google rank back eventually. Expect the site appearance to change in the future, at this time it's still running the default theme packaged with Pelican.