As of today, I am switching my blog over to use Pelican, which is a static blog generating tool written in Python. What that means, is that I don't have to write blog entries in Wordpress. It means that my blog can be hosted anywhere, and it means that I have control over the whole machinery of creating my blog. It means that I can keep my blog under version control. (I'll probably set it up on BitBucket soon).
As a programmer, I like it because I can look under the hood and make it behave how I want it to behave. Even more, I like it because I can write my blog posts using reStructuredText (reST), which is the de facto standard for python documentation. I haven't spent as much time with it as I'd like, so any opportunity to increase my familiarity with reST is a good thing. Beyond that, I like using minimalist markup languages, like reST and Markdown. They make document sources readable (unlike HTML, for instance, which puts too much cognitive load on separating text from markup. Reading a document written in reST or Markdown is not too different from reading a plain text email. If you want a new paragraph, you just leave a blank line. If you want to emphasize something, you put *asterisks* around it. If you want to create a blockquote, you just indent it.
It also means that the markup mostly stays out of the way of the writing process, which brings me to the next thing I like about Pelican. It makes blog writing a less onerous task. If I want to write a post on my old blog, I have to log in to wordpress and enter all my text into their little form field, and if I want to manage anything, it all requires loading new pages, and having an internet connection. There's enough overhead that I sometimes feel like I have to have big to say before I get started. With Pelican, it's just a few files in a folder on my computer. I can sketch things out. I can copy in things that started life as emails. It's all fairly straightforward. It's text files. I like that.
The one thing I'm not sure yet is the publishing process. I suspect it'll just be one rsync command that I alias to something simple.
I'm looking forward to playing with this some more.
There are comments.