As a technology for the visualisation of the odd bit of site content, RSS is great. You read the XML file from a URL, and display the results on the screen in an aggregator. Most aggregators have some additional archiving and conflict resolution logic, such as recognising results that were present in earlier copies of the XML file, but for all intents, the site is still pushing you an interpretation of its content, and in most cases, storing this in an XML file for you to read. (language chosen on purpose)
So long as your needs fall within these limitations, and your aggregator contains logic to make static unstructured data look like an information stream, RSS is a great technology. And man, is RSS popular! Of course it is, it is simple to implement, denies the end user any serious control over the data, lumps all the hard work on the client, and it’s vagueness gives the publisher the option to drive you back to their web site again if they wish, by crippling the data they publish. For the mainstream media, RSS is win win win.
As a useful repository to repository syndication format however, it fails, not just for the reasons described by the Atom folks. RSS’ raison d’etre is to allow a site to push out a limited feed of unstructured and untyped visual data of the site’s own choosing. For a simple tool such as Radio Userland, RSS is perfect, but ultimately, the site is still pushing, the site is still editorialising, the site is still publishing, and we the people are still sucking in what we’re told to suck in.
Once the personal publishing revolution begins in ernest, RSS will quickly be deprecated for protocols such as a second generation Atom, which will instead give us the people, control of the publishing pipeline. This is why companies such as Google are making the right decisions. They didn’t choose Atom, they deprecated RSS.
But this key difference between RSS and Atom is often unfortunately lost on the Atom folks as well, with Sam Ruby saying, for example, that the biggest problem with RSS is the author field. Well, there’s nothing really that wrong with RSS, unless of course you’re trying to think of it as anything more than a simple broadcast mechanism.
None of this is new however, and posting several months ago would have simply added to the noise emanating from both the RSS and Atom camps. The thing is, some people got it, most still haven’t.
Atom or its successor will be a service based API, where aggregators make the call on what content to pull from the repository, not the other way around. Atom could easily be extended to provide directory and filtering functions, allowing aggregator clients to shift control to the server for version control, conflict resolution, historical retrieval etc., instead of having to currently implement these features on top of a completely inadequate RSS format.
Likewise, control of filtering, analysis and display logic would finally move from the producer to the consumer, allowing users to act as proxy information producers. With the full repository of site content available, and control of the publishing pipeline, clients are no longer dependant upon what they are drip fed, and that’s when the real revolution will begin.
What say you Atom, are you up to the challenge?
(Originally posted to Synop weblog)