|
Randy Charles Morin blogs about RSS, OPML and the XML platform.
|
|
|
|
Blogroll
Copyright 2003-7 Randy Charles Morin
|
RSS is great. That said, it isn't real-time. With the advent of Twitter, people are now beginning to wonder why RSS needs to poll every hour. Why can't we have the immediacy of Twitter in RSS. Time for a history lesson.
Why is RSS here? It's a pretty simple and stupid protocol based on polling to simulate push. Why didn't we just create a real push protocol? Why? You can't. Push doesn't work very well on the Internet. Some people will point you to email and instant messaging as push technologies that actually work on the Internet. Unfortunately, they are wrong.
Are emails pushed? Yes. They are pushed around the Internet between SMTP gateways and eventually land themselves in an inbox. An inbox. Not your desktop. An inbox sitting on a server somewhere. Then we opened our POP3 client and it pulled the emails back down to our email client. Or maybe we open a browser and pull the data down to our Web browser. Either way, email isn't only push, it's push with a bit of pull on the end.
Are instant messages pushed? Sometimes. But even your Instant Messaging clients will fall back to clients connecting to servers using long polling, when push oriented connects from the server to the client fail.
You can't push. You can only poll. You can only pull. That's why push-based publish and subscribe technology failed in the 90s. That's why polling oriented technologies like RSS ruled the world for the last decade.
For nearly a decade, we were happy with the RSS solution giving us updates as late as an hour after publication. Life was great. Engineers weren't happy. Engineers hate polling. They want push. They want real-time RSS. They invented rssCloud. It died. Yes, rssCloud was invented a long time ago. They invented ping servers. Ping servers died. Then someone created Twitter, a centralized publish and subscribe service for micro-content. Geeks were in awe of the real-time immediacy of Twitter. Geeks were not happy about the centralized nature of Twitter. Geeks want the immediacy of Twitter and the decentralization of RSS.
Some of the engineers slash geeks that wanted real-time RSS worked at Google and they got together with the team at Google Reader and wrote PubSubHubbub. I think it was released in July of this year, but it may have been earlier. When I first saw PubSubHubbub in early July, I wondered how it was any different than previously failed pushing technologies (rssCloud specifically). If you read the spec, then PubSubHubbub is basically a copy of the rssCloud spec with some additional features meant to optimize, but that made it more complex and more difficult to implement than rssCloud.
I don't think Dave Winer was too impressed with PubSubHubbub, a knock off of his pre-existing and failed rssCloud technology. As such, Dave restarted the rssCloud movement and here we are today. Two technologies that are no different than everything that failed before it.
Who will win? Both? Neither? Someone? Somebody else?
http://code.google.com/p/pubsubhubbub/wiki/ComparingProtocols
Hopefully that will clarify how PubSubHubbub is different. The subtleties are extremely important.
So in the desktop space at least, it would seem PuSH isn't even a contender. Which kind of makes sense if you're Google. I'm sure they'd much prefer users doing everything through a Google web application of some sort.
And if you're looking for a comparison between the protocols, the link above probably isn't the best place to get a balanced viewpoint. It's mostly promotional material, like those "product comparisons" you often see in advertising.
- James Holderness