RSS and Atom feeds are a lot of fun! The most common use of these feeds is to subscribe to them in a feed reader so that you can browse through individual articles from multiple sources in chronological order.
Another fun thing to do with them is to create a lifestream. That's a collection of feeds associated with a person. The first one that caught my attention was Jeremy Keith's. Mine is stylized identically to his, but the back-end is different, and the functionality is different. I'll cover that in a different post.
Creating my lifestream put me in a position to discover which tech companies provide the most and least useful services. For example, I think it's awesome that Hulu provides a feed for which videos I watch. It's also awesome that Netflix offers different feeds (sent/enqueued/etc.) for their users' queues.
Here are the three companies that I thought would get it, but really ended up frustrating me:
- Amazon does not provide an Atom or RSS feed for its users' wishlists.
- Shelfari (owned by Amazon) does not provide a feed for its users' shelves.
- YouTube does not provide a user-oriented feed for its users' favorited videos.
Their users want to draw attention to the best of the products these companies promote and offer. But Amazon, Shelfari and YouTube don't provide the mechanism. That's a bit like saying, "we don't want more eyeballs on our products."
Ideally, you could have a feed of the items you added to your Amazon wishlist, sorted chronologically by the date you added the item to your wishlist. Amazon doesn't provide that. That's really frustrating, because if you go to your wishlist page, it says, "added [date]" right there, next to each item.
With the help of Yahoo Pipes, you can come close enough to the feed we really want. Here's the URL you need:
http://webservices.amazon.com/onca/xml?Version=2006-06-07&Sort=DateAdded& Service=AWSECommerceService&ResponseGroup=ListFull&Operation=ListLookup& ListType=WishList&ListId=[id]&AssociateTag=[assoc]&AWSAccessKeyId=[key]Extract item.Item.ItemAttributes.Title and item.DateAdded from each item, and insert them into a custom feed accordingly. Voila, the feed that Amazon should be providing itself.
Shelfari suffers from the same problem as with Amazon. You can get a widget. But you can't get a feed that says when you added the book to your shelf, or when you started reading it, or when you finished and reviewed the book. Users have been asking Shelfari for that for nine months.
I don't have a workaround for this one. It's better to just use a services that provides the right feeds, like librarything.com or goodreads.com.
YouTube has awesome feed support. That keyword support is brilliant. So it breaks my heart to say that they really missed the boat when it comes to favorited videos. YouTube does support a feed of video that have been favorited by a user.
But the videos aren't sorted by when they were favorited. That's really frustrating, because when you go to your profile page, it says right there, when each video was favorited.
The profile page presents the info, but the favorites feed doesn't. Instead, they're sorted by when the videos were most recently commented upon.
If we're going to subscibe to a user's list of favorited videos, it's pretty safe to assume that we're interested in when that user favorited those videos. If they favorited something recently, we want it at the top of that feed. Simple.
My only workaround for the current feed involves parsing their feed, and comparing each item against a previously gathered list of known favorites. If there are any new favorites, add them with the current timestamp.
[Edit] Youtube eventually made the feed we need.
We, as users, shouldn't have to be coding around the services that these companies offer. The companies should recognize the obvious value inherent in useful user feeds that point to their most popular products.
C'mon, Amazon, Shelfari, and YouTube. Give us our feeds.