Well, I finally did it. My blog now uses a database to store posts and comments and other relevant data. It only took me about 6 years from the time I realized that my original implementation was a poor long term solution for a blog. I figure in another 6 years I'll realize that personally writing and maintaining my own blogging software makes no sense when there are solutions like Wordpress which do it better/faster/more securely than I can hope to do by myself.
Anyway, the time of the original blog creation was January 2003. I decided I should use my University web space for a blog since that's what all the cool kids were doing back then. I also decided that my implementation decisions would be driven by opportunities for learning. So, if a technology was something I did not already know, it went to the top of the list of potential candidates. This way I could get exposure to lots of useful, resume-padding acronyms. XML was obviously the biggest and most important acronym so I decided to store my blog posts in an XML format which I invented. I used PHP and the some other tools to parse the XML and display it as HTML in the browser. If it had been 3 or 4 years later I would have been able to use XSL to do the translation and it might have been awesome. But alas, such a thing, while it existed, was not widely supported.
So yeah, until today, all my blog posts were stored in one big long XML file which had to be opened and read completely (since the XML had to be validated) every time I wanted to display a few posts. This had to be repeated for my RSS feed and I'm not even going to describe the nightmare that was my implementation for adding comments to posts.
Anyway, now everything is in a happy MySQL database which, in addition to being much more efficient and easy to maintain, allows me to do things like get statistics about my posts. For example, this is my 386th post. It would have been hard to figure that out before. Crazy.