Introducing sloth-log

I’ve thrown away the second revision of the system that runs this journal. Its replacement is much simpler; I’ve gone from about 1300 lines of Ruby and 1000 lines of XSLT to 252 lines of Ruby and 194 lines of XSLT. It does a lot less - no AtomPub, no live XPath searches - but I doubt anybody will notice.

The idea is to store everything in git. When I’m ready to publish new entries or updates I can git push to a special repository. The repository has a post-update hook that transforms the entries into Atom, then runs the Atom through XSLT to create the final static XHTML and HTML files.

It was a bit of a pain to get set up; git push is a bit of a black art, and lighttpd doesn’t support content negotiation on its own. It seems to be holding together ok, though. Hopefully this new simplicity will encourage me to write more. If you’re intrigued, you can get your own sloth-log clone.

This entry also marks a total migration to my new server. May it never be forced to limp like its predecessor.