BirdFood: Smarter RSS Feed for Twitter with Yahoo! Pipes

I’ve become quite a Twitter junkie.  I don’t use one of them new-fandangled Twitter clients; I read the RSS in Thunderbird.  Twitter’s RSS feeds are, however, well, shite.  The biggest annoyance is that links aren’t linked.

I’d also heard a lot of good things about Yahoo! Pipes, so today I decided to put two-and-two together and give the tubes a run for their money.

Here’s a list of things that are better about this version of the RSS feed:

  • Links are expanded out to their titles, italicized and linked
  • User names at the beginning of the update are linked
  • @nicks are linked
  • #tags are linked to the appropriate search

Now, for instance, instead of this:

mbites: The FT on the @andyburnham story

I get this:

mbites: The FT on the @andyburnham story | Tech Blog | UK culture minister “kidnapped” in online protest at net ratings plan

This makes the world a better place for those of us reading Twitter via RSS.

As for Pipes? Well, naturally a bit of well-placed Perl would have done the task more quickly, but this did give me a chance to play with, you know A Cloud Solution.  I’m supposed to be into that now.  Pipes is mostly really groovy.  It has a couple of limitations in logical flow, mostly in the interplay between text and items in a feed, that make things a bit clunky.  And there’s a bug in the regular expression implementation that means that only one URL, or tag, or reply gets expanded properly (you can set it to do global substitution, but then it only replaces the value with the first, rather than the appropriate captured value).  Any ambitious reader who cares to find a work-around will have praise heaped upon them in an update.  

For now, the rest of you can get the goods here:

2 thoughts to “BirdFood: Smarter RSS Feed for Twitter with Yahoo! Pipes”

  1. Interesting approach.

    I know this is a bit tangential, but if you were going to remake Pipes, what would your requirements be?

    1. Well, this was my first time to play with it, so the first thing that stuck out for me was that it’s relatively hard to mix and match string processing and element substitution. If you look at the pipe I created, it took me a bit to figure out how I could substitute the item that I’d extracted with the page load into the original feed. I ended up having to use a regexp and put in a placeholder and then do a replace later.

      The other thing might be some concept of state — not sure if it has that now. I’d like to clean up some feeds that I get that are randomly broken once in a while and repeat the same contents. If I could filter out the repeated elements, that’d be dandy.

      Other than that I’m not really sure — I’ve not used it enough to really get my head into thinking what’s possible with it. This was kind of a first attempt where it seemed like a good match.

Leave a Reply

Your email address will not be published. Required fields are marked *