Reblogging (made pathologically easy)

September 29th, 2004  |  Tags:  |  1 Comment

“Reblogging” is yet another scrap on the pile of trendy weblog-related neologisms (cf. “bleg,” “photolog,” “moblog,” etc.), but — unlike most of its siblings — the concept behind “reblogging” probably deserves a name. One who is using weblog software to republish content available elsewhere, typically in a semi-automated fashion, is “reblogging.” (A similar concept is the “linker” side of the “thinker/linker” dichotomy that some people draw, but reblogging seems to imply special tool support.)

After I read this article about “reblogging” at Weblog Tools Collection, I had a bit of a Eureka moment. One could reblog anything! Fanciful visions of RSS-enabled academic bibliographies all merged together danced in my head. I thought about making a “personal portal” with my calendar, to-do lists, and recent articles from favorite authors. Anything that could have metadata tacked on to it could be aggregated. I then floated down to earth and came up with a use for reblogging that’s more likey to see implementation: my b-side.

I’ve been interested in displaying the b-side links inline (like Jason Kottke’s unified treatment of all posts) for some time. However, I am loathe to abandon using Markku Seguerra’s excellent wp-recent-links plugin (for a variety of reasons), and hacking together some one-off script to munge data from the “recent links” table to the “posts” table seemed fairly trivial but woefully mundane. I then realized that wp-recent-links included an RSS 2.0 feed, and I started to get wise.

WordPress, which runs this site, supports a number of XML-RPC interfaces. Notably, it supports the MetaWeblog API, which is cool because its “post entry” format is basically the same as that of an RSS 2.0 item. So, if you can get the data you want to reblog in RSS 2.0 item format, you can post them to a MetaWeblog API-enabled weblog with very little effort.

This happy capability isn’t the half of it, though. With Mark Pilgrim’s legendary Universal Feed Parser and Python’s XML-RPC support, you can implement mass-scale automated reblogging as a list comprehension. (Check it out: reblog.py; note that it will repost everything whether it has already or not, and doesn’t do muchany error checking.) There is a lot of potential here, and the fact that such high-quality software components are available and composable is really inspiring.