A Site Upgrade For 2007
permalink categories: meta originally posted: 2007-03-04 15:18:50It seems I actually have readers now! And readers demand features! I hear, and I obey.
To achieve these features, yesterday I threw out my old blog software and wrote a new one from scratch. I call new blog generator "PySa", which is supposedly short for "Python Essay". Pysa is tailor-made to generate my blog how I want it.
With PySa firmly in place, my blog has the following new features:
- The site now has a top-level RSS feed, using my brother Steve's PyFeed library.
- Every story now has a sensible permalink associated with it.
- Instead of every story I ever published on one page, the root page has just the most recent story, then summaries of the four next-most-recent stories.
- Summary pages for tags and years now work.
- I can associate multiple tags with a single story.
- Generating the site is way faster; it's not like it was unbearable before, but man! is it fast now. (Not that you care.)
PyBlosxom was never a good fit for me; it's designed for conventional blogs, for folks who want dynamic rendering and comments. I wasn't using most of its features, and I broke it a little when I shoehorned it into my paradigm—that's why so many bits of the site were broken before. I gather it'd be possible to make PyBlosxom behave exactly how I want, but that would require learning a lot about PyBlosxom. Anyway, I already had written a bunch of code around PyBlosxom to make it behave the way I wanted, so it seemed faster, simpler, and certainly more fun to just chuck PyBlosxom and branch out on my own.
PySa is doing everything I want, at least for now. There are two things I want to play with: generating only the changed files into a separate directory (so I can upload just those to my web server), and writing blog entries in something simpler than HTML. PyBlosxom supported ReStructuredText, which looks like it might be a lot of fun. I designed PySa with that in mind, so it should be easy to do.
I haven't published PySa; if you were really interested in it, I could probably see my way to doing so. I got into a real steamroller-over-the-problem mode at the end, so some of the code is less elegant than the rest, but generally I think it's pretty well designed.
p.s. PySa is pronounced "pie-SUH", or "pie-ZUH", or even "pee-ZUH"... but never "pizza"!