I've been following Dave Winer's various work for years now but none of it has been quite as interesting as watching the political imbroglios surrounding RSS 2.0. The upside is, for the vast majority of us, RSS is still the stable, successful syndication platform we didn't know how badly we needed. The RSS format itself is something that is still creeping onto the radar of users in the mainstream but it's something we will all get increasingly familiar with in the coming years. And Dave has been a faithful steward of the current RSS specification, which has become a platform in its own right that thousands of people have invested countless hours and financial resources in and millions of people use daily, whether they know it or not.
RSS 2.0 has certainly come into its own since being introduced in late 2002 and it's now the most widely available Web feed format bar none. And this is important because RSS, more than any other format, facilitates the Web 2.0 information ecosystem, something I'll define here as the automated syndication and recirculation of content between the all systems on the Web.
This ecosystem makes possible impressive scenarios like the 4,500+ data sources available from Google News, or value-add services entirely based on the feed ecosystem like Feedburner and Technorati. In fact, RSS is powerful because just about any set of items can be syndicated with it, from blog entries and podcasts, to video segments and stock quotes.
Without a standardized, machine digestible way of consuming content, we'd be back to writing programs that wade through the jungle of HTML trying to figure what we're looking at. RSS provides an essential framework that organizes Web content into clean, crisp chunks (known as items) that have vital metadata associated with them, like the date of publication, authorship, etc.
And being so widely recognized and stable a standard, it allows people to justify investing considerable time and money into creating tools that support the platform: feed readers, aggregation tools, and even extensions. For example, RSS has fundamental, built-in support in Windows Vista that will make RSS, Atom (a competing format growing in popularity), and feeds in general a household word sooner than many of us might think.
But it's this last piece, extensions, that have been making things so interesting lately. Dave Winer recently wrote about extending RSS in an article titled Why formats like RSS work. In it he clearly lays out the two permissible ways that RSS can be extended without breaking it. And extended it sometimes must be because RSS stands for Really Simple Syndication and at times, it can be too simple for the job. You can easily dig up a number of people who can conceive of scenarios that RSS is not capable of handling well. To this, Dave points to the section of the RSS specification that clearly lays out two paths and only two paths for people who would like to "radically improve on RSS": 1) extend it with namespaces or 2) create a new format as an evolution, though you can no longer call the result RSS.
Now, those of you who've made it this far might wonder why all of this is really important. Most of us have begun using feeds recently, and count on being able to copy and paste them into our feed readers and other tools that we have. But being able to do so with impunity is always at risk. A good example is Jon Udell's discussion of how iTunes has embedded https: links in its feeds, a clear violation of the RSS specification. But one that probably seemed reasonable at the time and a very minor deviation. But nevertheless it breaks RSS. And using an iTunes feed in a RSS reader that expects real RSS might result in cooperation if you're lucky, but it could just as easily result in outright failure if you're not. This is because the tool developer had no reason to expect https: links would be there.
For RSS to be successful for us, stability and dependability are essential features. Not that there haven't been good citizens in this regard, Microsoft for example has at least two RSS extensions that I'm aware of, Simple List Extensions and the intriguing and high-concept Simple Sharing Extensions.
Unfortunately, there is little doubt that RSS compliance has become somewhat balkanized. Because of its very simplicity there is some vagueness that allows it to be subject to a dozen little misinterpretations. And it gets misused out of ignorance, laziness, and even misguided good intentions. Despite these minor indignities however, the upside is for the vast majority of us RSS is still the stable, successful syndication platform we didn't know how badly we needed. And it's more than good enough for what we want: simple, powerful, pervasive syndication of content. But it's up to all of us to keep it this way and education is the cure here I hope.
And let's not forget the true potential here: RSS, and yes, probably Atom too, are the "Unix pipes" of the Web; manifestly simple and easy ways to connect virtually any content from point A to points X, anywhere on the Web. Having an RSS feed on everything gives us a world where just about anything is possible including:
- Sophisticated mashups
- Frictionless content reuse
- Low-barrier Web service composition
- Lightweight application integration
- Full-on enterprise application integration.