Some time ago I decided to join the blogosphere, having read Steve McConnell's Call to Action (at the bottom of the page): "If you are actively developing software, I urge you to write about your insights. If you have worked on a project that taught you valuable lessons, share them."
Unfortunately (I thought at the time), all user-ids similar to my preferred id were already in use on the public blog hosts (although many of them seemed abandoned), so I dropped the idea again.
After my web-hoster went south last month, I quickly set up Apache to host my old home pages and noticed that those pages hadn't had a decent update for almost a decade, so I decided to ditch them and instead host the blog myself and started looking for a suitable platform.
I soon found that most "mainstream" blogging platforms were either using MySQL, coded in PHP, or both.
My preferred database is PostgreSQL (which scores higher on the performance benchmarks and feature comparisons I've seen so far), and PHP is certainly not my first choice of programming language.
So I started looking for blogging platforms written in Python and quickly came across a post on Daniel "PyDanny" Greenfeld's blog - Daniel had already thoroughly researched the subject and had found an interesting solution: Pelican.
Pelican
Pelican creates static pages from Markdown or reStructuredText input - this eliminates the need for a database backend and even allows a very minimalistic web-server to host the pages (thereby eliminating several security risks).
As an added benefit, I can keep my input pages locally in Git.
Setting up Pelican was fairly straight-forward, as the documentation is detailed and complete - the hard part was to pick a theme among the available lot...
Pelican even sports an integrated web-server and can generate HTML output on the fly as soon as it detects that an input file was modified - this enables you to check the result of your edits practically in real time.