One Aging Geek

Thursday, November 17, 2005

New podcatcher, Peapod

I tried out several Windows-based podcast receivers (podcatchers) before I decided that they were all too UI-intensive and that podcatching should "just happen". In other words it should be something that you do a simple bit of setup and then it disappears into the system and just works.

I thought about writing my own catcher from scratch but there were just too many fiddly bits for the amount of spare time I have. So I poked around and turned up bashpodder, a simple Unix script that I dropped onto my home Linux system. Bashpodder in the main worked pretty well but had a few warts. It fetched the feeds (not the enclosures, just the XML file that points to the enclosures) every time it was run. It fetched all sorts of enclosures including movies and pictures that weren't of any interest to me. And it was sensitive to the full URL of enclosures so when feed owners rehosted their feeds it tended to refetch everything.

Partly as an exercise to learn parts of the libraries I embarked on a piecemeal rewrite of bashpodder in Java. I had a weird hybrid of the original script with some calls out to Java programs to do parts of the job. It was evolving fairly nicely.

But then a few weeks ago the author of bashpodder, with whom I had exchanged a few emails, dropped me a line to announce his new podcatcher, Peapod (funny I had forgotten that was the name of a failed dot-com grocery delivery service until just now).

The author and I have exchanged emails quite a bit as I've tried out his code. It had some problems for what I wanted in the beginning but has come along quite nicely. At the moment I'm in the final stages of running a parallel test between my hacked up bashpodder and the version of peapod that's in the subversion repository.

Like bashpodder, peapod is designed for Unix and with help from the screen program can run from cron.