Apr 19 2008

Why They’re Doing This

I don’t want to make a habit of replying on my blog to posts on other blogs, because (a) it’s dorky in an autistic way, and (b) it only encourages the annoying practice of blogs that stick their fingers in their ears.

But I’ve seen a couple of references now to Dean Allen’s complaint about sites that offer multiple RSS feed formats, but no place to post a comment about it; and since it directly relates to my past job monkeying with feeds, I feel like I should answer.

There are two reasons why a web page would link to multiple feeds.

  1. To support feed-readers that don’t understand every format. The XML-syndication-format field has a totally ludicrous history of incompatible versionitis, and the only format that’s actually sanely designed (Atom) is new enough that for a while some major clients, such as BlogLines, didn’t support it. So it’s reasonable during such a transition period to generate both formats.
  2. Because there might be feeds with different content. Some sites offer headlines-only feeds and full-content feeds. Some blogs offer a feed of all the comments on one post, as well as the usual feed of all the posts. Some wikis offer a feed of revisions of a single page.

The problem for a client like Safari is that there isn’t a clear way to tell the difference between those two cases. When a site offers multiple feeds (by including multiple LINK tags in its HTML) do they have the same human-readable content or not? Answering that would require, at a minimum, downloading and parsing both feeds and trying to match the contents of the entries.

The first version of Safari RSS (in Mac OS X 10.4) went for simplicity, by indicating in its UI only that there was a feed available, not how many. If the user pressed the “RSS” button, it would pick one of the feeds to switch to. The heuristic was to give priority both to order (picking the first feed listed) but also to format (preferring Atom to RSS, because the format is much better-defined and less prone to nasty ambiguities and parsing problems.)

But some people complained that, on sites that offered multiple feeds with different content (like articles vs. comments) you couldn’t use the button to pick which one you wanted. So in Mac OS X 10.5 we decided to make the button into a pop-up if there were multiple feeds listed.

The problem now is that you more commonly end up being offered a choice between two formats with identical content, which is what Dean and others complain about, because most blog engines are configured to offer both Atom and RSS (and sometimes multiple flavors of each.)

Here’s where I could talk about the design problems of the feed auto-discovery mechanism, and describe better ways it could have been designed to support multiple feed formats [hint: HTTP 1.1 already supports content-type negotiation] or even future improvements that could be made to reduce this annoyance in the future. But you know what? I don’t care about Trendy XML-Based Syndication Formats anymore. OK, all right, I clearly care enough to write a multi-paragraph explanation and post it to my blog. But not any more than that.


2 Responses to “Why They’re Doing This”

  • garoo Says:

    I didn’t read every article that commented on the Textism post, but it never occurred to me that anybody would actually be complaining about the fact that Safari offers a choice? And now with your comment I went to reread the original post, and I’m not even sure which was originally his point. Because I immediately assumed that he meant it was insane for bloggers (and blog platforms) to offer different formats and ask the user (or their browser) to choose. I agree that it used to make sense, back in the time when only the savviest users had RSS aggregators anyway, but I reckon that all the aggregators that matter now know how to handle everything you throw at them.
    But there’s no question to me that the drop-down menu needs to stay, because there _are_ many valid reasons (starting with those you cite, but there are others because RSS is not limited to blogs) why a site may want to offer several feeds. (Although in those cases webmasters would be better off having a prominent RSS webpage that explains the choices.)

  • Josh Bryant Says:

    Offering multiple feeds with different content I’m fairly sure no one thinks is a bad idea. The pop up in Safari is pretty genius and I love the way that it works.

    For instance, my blog is a combination of blog posts, del.icio.us links, Flickr photos, etc… You can see a quick screencap of how I implemented this here.

    I’m in the camp though that offering multiple feeds of the same content that simply just serve a different version of XML is kinda stupid. Is there a single aggregator out there that can handle RSS 2.0 but not 1.0? I also find it pretty funny that RSS stands for “Really Simple Syndication” and we’ve gone out of our way to make it as non-simple as we can by throwing multiple types & versions in there. If my mom was presented with that menu in Allen’s screencap she’d have no idea which one to click.

Leave a Reply