Originally I thought blogging would be an easy way to provide an up-to-date status (and log) of the various projects I've got going on. It becomes very easy for an outsider to look at my blog and click a few links and realize how often I work on a particular project and what other projects are taking all my valuable time by distracting me.
After a few blog-like applications, I finally settled on pyblosxom which didn't have everything I wanted, but it had the bonus of being written in Python and that makes it super easy for me to fix and add functionality.
Then I found myself working on the pyblosxom code-base and talking to Wari at length about various pyblosxom things.
Now I blog for two reasons. First to provide status on my projects and second, to provide more data with which to test pyblosxom functionality.
That's why I blog. On top of that, I'm fascinated by the decentralized collaborative forum that blogs provide. It's not unlike editorials in the newspaper.