So I think the progress of this blog software is pretty amusing. The easiest thing in the world is to create individual posts in a database then refer to them by their ID, right? I mean, that's hack-code lesson #1. But when I first created this weblog I made this effort to separate the posts by day, so that it fit the blog definition, I even had a fancy schmancy calendar. The date was indicated with a parameter on the index page: index.jsp?date=20030726. Then just recently I changed it so that the URLs on this blog looked like html pages so that there was no hint at what technology I was using: 20030726.html#125959 with the part behind the # representing the individual posts. And I got rid of the calendar.
Now today I'm going back to the most basic version - individual IDs per link like this: 1003702.html. Can you believe it? There are a few fundamental reasons. First, I want to include the comments on the permalinked page like MT does. I think it works well. Secondly, I want my Google results to be more relevant. Right now I talk about all sorts of topics per page, but Google smashes them all together so results like "FusionOne Resume" and "Kim Possible GBA ROM" end up on my website. Dividing the pages will narrow this down a bit more. And finally - on a Group weblog or one that includes aggregated content, there's a chance (that increases with the number of users) of two posts being created at the exact same moment, so using datetime just doesn't scale any more. IDs are ugly as hell, but they work. At least mine don't look like this: 1,6566,010,00.html (taken from the Nokia website - sufficiently unique for more pages than there are atoms in the universe).
I'm just hacking in the changes for now. Like everything else, I've got a 2/3 written rev of this weblogging software ready to go... but I'm sick of waiting for it, so I'm just slapping in the changes (and commenting out *tons* of SimpleDateFormatting code...).
Just goes to show - keeping it simple is usually the best route.
P.S. My old permalinks should continue to work.