TechCrunch, NetFlix, Digg and Twitter: You Have Not Beaten Me
Four services I use changed their APIs on me last week. Four. What the hey, Internet?
TechCrunch
They migrated to the Disqus commenting system. In the process of doing so, they broke a feature of their RSS feed. Their feed has the <slash:comments> element for each item, and it used to contain the correct number of comments.
I'm too busy to have to read each TechCrunch article's title to evaluate whether I should read the article. So I wrote a recommendation engine. The number of comments each article accrues is one of the criteria my cron job uses to evaluate TechCrunch articles.
TechCrunch broke their <slash:comments> element. It's still there, but it always evaluates to zero. I fixed my cron job to go get the comment count directly from disqus instead.
TechCrunch should fix their broken feed anyway. It's not cool to lie in your RSS feed.
NetFlix
Netflix changed the format of their movie URLs. In some places. In their new releases RSS feed, the movie URLs separate words in the tile with hyphens, like so:
I fixed that by having my cron job do a fuzzy match that matches to words separated by either hyphens or underscores.
Digg
They did a major overhaul when they released V4. I'm not really interested in the debate over what's better and what's worse. I'm interested in what they broke.
They broke their user history feeds. They used to support personal feeds for their users, so that you could easily see what your friends dugg, like so:
http://digg.com/users/dblume/history.rss
Around August 25th, they changed the nature of the feed to also include everything from the people that that user follows. So instead of being a concise personal history, it became a huge mess. The next day, they turned off the service altogether.
By changing the nature of the feed, not to mention turning it off altogether, they broke the digg component of my personal lifestream.
Digg should restore the history feeds. They were useful. And it's bad form to break services that you used to provide.
Twitter
Twitter turned off basic authentication and left OAuth as the only alternative. They announced the transition, and gave developers a long time to prepare for it. It's a good thing.
Sadly, I was using basic authentication to munge together two of their feeds into one, for inclusion into my feed reader.
So for me, all Twitter activity suddenly disappeared one day. It took me a while to realize that I'd forgotten to migrate my feed collator's authentication from basic to OAuth. So I went ahead and made the fix.
Oh, the awesome thing about making a certified OAuth App for twitter? I can integrate it into my dead man's switch. Maybe I'll tweet from beyond the grave.
Phew!
In one week, four external services broke four of my personal services. It felt like so much household maintenance: The toilet broke, or the grass needs mowing. The upside is that in fixing each of these personal services, I added to my skill set.
TechCrunch
They migrated to the Disqus commenting system. In the process of doing so, they broke a feature of their RSS feed. Their feed has the <slash:comments> element for each item, and it used to contain the correct number of comments.
I'm too busy to have to read each TechCrunch article's title to evaluate whether I should read the article. So I wrote a recommendation engine. The number of comments each article accrues is one of the criteria my cron job uses to evaluate TechCrunch articles.
TechCrunch broke their <slash:comments> element. It's still there, but it always evaluates to zero. I fixed my cron job to go get the comment count directly from disqus instead.
TechCrunch should fix their broken feed anyway. It's not cool to lie in your RSS feed.
NetFlix
Netflix changed the format of their movie URLs. In some places. In their new releases RSS feed, the movie URLs separate words in the tile with hyphens, like so:
http://www.netflix.com/Movie/Harry-Brown/70117310But their actual API, like api.netflix.com/catalog/titles, returns movie titles with underscores separating the words in the title.
I'm too busy to have to look up a bunch of movies to decide which to rent, so I have a cron job evaluate each week's new releases with NetFlix's personal predicted rating for me. By changing the format of their URLs in one service, but not the other, they broke my cron job that matches movies in the feed to their corresponding IMDB ratings. It took me a while to figure out exactly what it was that broke my service!
http://www.netflix.com/Movie/Harry_Brown/70117310
I fixed that by having my cron job do a fuzzy match that matches to words separated by either hyphens or underscores.
Digg
They did a major overhaul when they released V4. I'm not really interested in the debate over what's better and what's worse. I'm interested in what they broke.
They broke their user history feeds. They used to support personal feeds for their users, so that you could easily see what your friends dugg, like so:
http://digg.com/users/dblume/history.rss
Around August 25th, they changed the nature of the feed to also include everything from the people that that user follows. So instead of being a concise personal history, it became a huge mess. The next day, they turned off the service altogether.
By changing the nature of the feed, not to mention turning it off altogether, they broke the digg component of my personal lifestream.
Digg should restore the history feeds. They were useful. And it's bad form to break services that you used to provide.
Twitter turned off basic authentication and left OAuth as the only alternative. They announced the transition, and gave developers a long time to prepare for it. It's a good thing.
Sadly, I was using basic authentication to munge together two of their feeds into one, for inclusion into my feed reader.
http://user:password@twitter.com/statuses/home_timeline.rss
http://user:password@twitter.com/statuses/mentions.rss
So for me, all Twitter activity suddenly disappeared one day. It took me a while to realize that I'd forgotten to migrate my feed collator's authentication from basic to OAuth. So I went ahead and made the fix.
Oh, the awesome thing about making a certified OAuth App for twitter? I can integrate it into my dead man's switch. Maybe I'll tweet from beyond the grave.
Phew!
In one week, four external services broke four of my personal services. It felt like so much household maintenance: The toilet broke, or the grass needs mowing. The upside is that in fixing each of these personal services, I added to my skill set.
Comments