Friday, February 27, 2004

On RSS

All of us might have been visiting the blog on a regular basis, maybe once or twice a day to see if there are any new posts. Probably you might be opening up your favorite web browser and typing the url to visit the blog. Similarly there might be quite lot of things you might be accessing regularly everyday like news headlines, site updates, blogs etc. Let me explain with my own experiences.

I visit almost thirty-odd websites every day. The list contain websites, magazines, news headlines, and web logs. It is difficult to remember each site. So I bookmark these sites and visit them. Most of the time, I find that not all sites are updated regularly. A couple of sites are updated more than once in a day and some sites once in two days. There is no way of knowing which sites are updated and which are not. Imagine opening up nearly forty websites and finding that only four or five of them have been updated. Consider the costs involved in terms of time and bandwidth. It is huge.

News Aggregators:

This is where aggregators step in. My news aggregator helps me keep up with all my favorite sites by checking if they are updated and displaying the new items from each of them. Now I find that my news aggregator can find and classify them so that I get to read the latest items. I thereby get to save my time and bandwidth.

There are several type of aggregators available. Web based aggregators like my Yahoo! and myFeedster collect information and display them in a webpage. Aggregators are also available as standalone applications. They are also integrated into e-mail clients and web browsers.

A search on Google reveals numerous aggregators. You can choose one that suits you. I use "RSS Reader Panel" with Mozilla FireFox 0.8. Since the aggregator integrates into the web browser, I find it very easy to find sites that have been updated using it.

How do aggregators know which and when sites have been updated?

The answer is through an XML-based format known as RSS.

What is RSS?

RSS is an XML-based format that is used for syndicating news and the content of news-like sites, including major news sites like BBC, news-oriented community sites like Slashdot, and personal weblogs.

But it is not limited to news alone. Mark Pilgrim says that "anything that can be broken down into discrete items can be syndicated via RSS". He cites examples like the "recent changes" page of a wiki, a changelog of CVS checkins, even the revision history of a book. Once information about each item is in RSS format, an RSS-aware program (read aggregator) can check the feed for changes and react to the changes in an appropriate way.

RSS feeds:

An RSS feed is an XML file that is available on the webserver just like a HTML page. Once a feed is available for a website, and aggregator can visit the file and perform the required action. A feed contains a list of items, each of which is identified by a link. Each item can have any amount of metadata associated with it. Metadata usually consists of a title and a description about it. It can also have infomation like the publisher of the feed, the date it was updated and other metadata items.

Versions of RSS:

There are several formats of RSS currently available. Lots of heated discussions have been going on about which format is the better format. Even the expansion of RSS is a bone of contention among various people.

Atom, the new kid on the block:

Recently, several people have been pushing forward for a better and enhanced RSS format called Atom. This project has gained acceptance among major CMS and blogging clients, including Blogger and Movable Type. Several RSS aggregators have begun supporting Atom and the list is expanding regularly.

In case you have more doubts, this tutorial will help you to understand the basics of RSS. Several real-life examples of RSS are given in this website.

In case you want me to choose a RSS aggregator for you, I can help you out. Your comments and feedback are welcome.

No comments: