If you publish an RSS feed on your web site, then it’s important that it continues to work. If you accidently break it, then you could be missing out on visitors.
I just happen to have an example handy.
London Eating is a useful site that carries reviews of London restaurants. For example, here’s the page for my current favourite restaurant – Lamberts. If you view that page in a browser that understands such things (like Firefox or IE7) then you’ll see the orange RSS icon indicating that the page has an associated RSS feed. That feed is here. Notice how both of these URLs contain the number 3295. I assume that’s the unique number that identifies this restaurant in their database.
So far so good. But this is where it all starts going wrong. If you subscribe to that feed in your RSS reader of choice then you’ll see a new entry appear each time a new review is published. This is what you’d expect. But the entries have three problems with them that range from annoying to making the feed all but useless.
Firstly, the entries don’t show the full review. They just contain an extract. That’s a bit annoying, but not too unusual. Many sites do that, so that you have to actually visit the site (and see all their advertising) in order to see the complete article. I’ll just note that they had full feeds then I wouldn’t have found the rest of the problems.
Secondly, each entry has exactly the same URL associated with it. So each review doesn’t have it’s own unique URL, they all share the URL of the page for that restaurant. It would have been easy to give each review on the page an HTML anchor and have the RSS URL going to that specific point in the page. Again, not a major problem – but it’ll probably have some of the RDF fanboys gasping for air.
But the final problem completely overrides the previous two and makes the RSS feed pretty much useless. If you open one of the links in the Lamberts RSS feed you’ll see this:
ADODB.Field error ‘800a0bcd’
Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
/detail.asp, line 15
If I wasn’t a bit of a techie, that error message would have sent me running from the site, never to return. As it is, I just grimaced and investigated further. And it didn’t take long to track down the problem. The URL in the RSS feed is wrong. It contains the number 24075 instead of the number 3295 that you’d expect from our earlier experiences.
I presume that 24075 is some other identifier that is stored in the site’s database. And that they are publishing the wrong identifier in the RSS feed. Obviously I haven’t tried every URL in every RSS feed that they publish, but I’ve checked half a dozen or so of my local restaurants and they all exhibited the same behaviour.
I first noticed this a few months ago. And at the time I emailed the site owners and explained the problem. But I got no response and the problem hasn’t been fixed. It’s incredible that they haven’t noticed the problem. It suggests that they added RSS at some point because they heard it was cool, but that they don’t really understand what it’s about.
Also, it would be nice if giving their site an invalid restaurant identifier didn’t return an ASP error. It might be nicer if it said “sorry but I can’t find that restaurant” or something like that.
As always, testing is key.
Update: About an hour after posting this entry (and less than an hour after sending a link to them) I got an email from the people at London Eating telling me that the main problem was fixed (and a quick test verifies this). They’re even looking into fixing the two minor problems that I mentioned.
I love it when the web reacts that quickly. Kudos to the London Eating techies.