What are all those little orange RSS and XML buttons I see everywhere? Why do I see code when I click on them? If you're interested in the answers to these questions, read on to learn about the world of syndication.
RSS has accumulated a number of meanings, from "RDF Site Summary," to "Rich Site Summary," to "Really Simple Syndication." I like the last term best as I think it best describes RSS as a service. RSS might just as easily be called XML syndication because it is based on the XML language. For the purpose of this article, the term RSS will refer to the concept of syndication, which includes other XML technologies, such as Atom, which I will discuss later.
Simply put, RSS allows separates content from the presentation layer, and syndicates the content to a RSS reader. With RSS readers or feed readers, you can aggregate all of your news sources and other content into one program, creating a single view for this information. A good analogy is the capability to create your own custom newspaper that includes articles from sources such as the New York Times, the BBC, the Wall Street Journal, and the Washington Post with the added ability to choose which subjects you read from each source.
RSS encapsulates metadata (information about data) around the content. This metadata allows an RSS reader to understand such things as the type of content (text versus multimedia), the date of publication, and so forth.
In today's world, you must sort though hundreds of e-mails and dozens of Web sites to find the information for which you are looking. RSS aggregators simplify this task by bringing these many different data sources together into one view.
RSS feed readers allow you to read news sources or blogs in a single application or Web site. The reader will aggregate all of the feeds that you choose and list them in a simple-to-read fashion. The benefits of having a single location to turn to for your news and information content are numerous:
- You visit fewer Web sites
- Your news is on demand -- ready and waiting when you want it. If you can't get to it for a few days, all your news will still be there for you (unlike traditional sites where news expires off the front page each day).
- No e-mail newsletters clutter your mailbox. Opting in and out is much easier with RSS; it's difficult to envision spam in an RSS world.
- You customize the news and content that comes to you. No need to filter though all the articles on Wired.com, you can have individual subjects 'delivered to your door' with less intrusion than an e-mail newsletter.
- You can ignore articles or channels that are not of interest to you at the moment.
- You stay up-to-date on any news by topic, industry, or subject area.
- You don't have to check back for new postings on the news site. The feed readers deliver content to you.
Content delivery on the Internet now takes a new form. Most people turn to countless sources of information these days. Individuals might look to different portals for news, stocks, security warnings, press releases, industry analysis, product reviews, and so on. Traditionally, this process was time consuming for users as they visited each Web site, poking around for new information before moving on to another Web site. Maybe you are one of the millions of people who subscribe to e-mail newsletters, which bombard your inbox multiple times a day (sometimes per hour); this e-mail method is inefficient and time consuming to sort and filter.
Feed readers aggregate all of this content into a simple, easy-to-view application, and do not intrude on your productivity tools, such as e-mail. Most feed readers have the same look and feel as e-mail applications or newsgroup readers, with folders on the left and content to the right. The folders on the left might represent different Web sites or different news channels. If you are an active blog reader, the folders represent each blog. Most of the RSS popularity grew out of the blogosphere simply because it is inefficient to revisit a blog site multiple times a week to seek out when an author has posted new content; it's best to have that content delivered to you. This same principle applies for newsgroups and community forums.
The RSS language specifications have been created by different individuals and groups: David Winer (RSS 0.92, 2.0), Dan Libby of Netscape (RSS 0.9, 0.91), and the RSS-DEV, a working group continuing Libby's works (RSS 1.0). Many attribute the creation of XML syndication to David Winer from a pre-RSS format. Wikipedia has more information about the history of RSS (see Resources). It's important to note that the different RSS specifications are forked and therefore RSS 2.0 is not simply RSS 1.0 with additional features. Most, if not all feed readers support each specification. Sam Ruby has a nice summary on the differences between RSS specs (see Resources).
A similar specification, Atom is under development by the Internet Engineering Task Force (IETF) in the hopes of creating a universally adopted specification. For more information on Atom, please read the developerWorks article on Atom by James Snell (see Resources).
As a content author, choosing a standard is not difficult. Depending on your content, you should use a spec that will support the metadata you wish to distribute (such as enclosures for podcasts). Additionally, you may choose to offer you content on multiple specifications, such as RSS 2.0 and Atom.
Lising 1 shows a sample RSS 2.0 feed:
Listing 1. A sample RSS 2.0 feed
<?xml version="1.0"?> <rss version="2.0"> <channel> <title>Feed Title</title> <link>http://yourwebsite.com/</link> <description>Feed Description</description> <language>en-us</language> <pubDate>Mon, 03 Jan 2005 12:00:00 GMT</pubDate> <item> <title>Article Title</title> <link>http://yourwebsite.com/articlelink.html</link> <description>Your content included here.</description> </item> </channel> </rss>
You can read RSS feeds a number of ways: everything from stand-alone applications, to Web-based portals, to support directly within your Web browser. Each is outlined below. Some readers are free, while others offer advanced functionality at a cost.
Many people get confused by the little orange button. For instance, it takes you to a page of machine code and does not open in an appropriate RSS feed reader. This is the XML code; you just need to add the browser's address location to a RSS feed reader. Choices on how to add the feeds to your feed readers (and some Web browsers, such as Firefox®) include:
- When you end up on a RSS page with XML tags all over the place, copy the URL at the top of your screen and paste it into your feed reader. More on this in the feed reader section.
- Alternatively, you can right-mouse-click on the icon and select "Copy Link Location" (Firefox users) or "Copy Shortcut" (Microsoft® Internet Explorer® users.)
If you run the Firefox browser, then your browser supports RSS feeds natively. Other browsers that support RSS aggregation out-of-the box include Opera and Apple's Safari®. The next version of Microsoft Internet Explorer is slated to have RSS support.
In Firefox, you can subscribe to a feed easily -- just click on the Live Bookmark icon in the location bar of your browser and select Subscribe to <website channel name>. A new window pops up to prompt you for a Bookmark name.
The icon is only visible for Web sites that provide RSS content. For example, if you are on the CNN.com homepage, you will see the icon in the location bar. You have the option of subscribing to "Top Stories" or "Recent Stories." When you subscribe to a channel, a Live Bookmark is created under your Firefox Bookmarks. This bookmark is dynamic and always changing. If you put your mouse over the bookmark you will see a listing of the most recent news articles. Click on a title to load the article in your Web browser.
For a better RSS browsing experience, you can have Firefox list your bookmarks down the left-hand side. Select View > Sidebar from your toolbar and check Bookmarks. You will now see a listing of your subscriptions in the sidebar of your browser.
Figure 1. Screenshot of Livebookmarks
Note: Although a few Web browsers provide a quick start for RSS subscriptions, you'll find value in other tools, most importantly the ability to sort and filter content. As the number of your subscriptions grow (which they will) you'll find a Web browser is limited in the capability to aggregate and filter this information for you.
Stand-alone applications are programs that you install on your computer just like an e-mail program such as Lotus Notes® or Outlook®. The feed reader applications are very lightweight and usually run in the background. Most feed readers will have some sort of notification system through a sound or pop-up window in the bottom right corner. See Resources for links to the Web sites.
SharpReader is a free RSS/Atom aggregator for Windows. It has the same look and feel as many e-mail programs, and allows you to sort and filter content based on the date, title, or subject. To subscribe to content in SharpReader, you must copy the RSS address from your Web browser.
A similar free product is FeedReader; although it is faster, the feeds are not formatted as nicely as SharpReader. FeedReader does not have full support for page layout and images.
If you want a sharper-looking reader, FeedDemon includes a much cleaner interface with features such as tabbed browsing and grouping articles by weekdays. FeedDemon will assist in finding the RSS feed of a site. For instance, if you know the Web site, but don't know the exact address to the RSS feed, FeedDemon will search for the feed.
Figure 2. Screenshot of FeedDemon taken from that Web site
Platform: Mac OS® X
For Mac users, a preferred app is NetNewsWire. It includes tabbed browsing, scripting, and many advanced features to tweak the look and feel of your feeds.
Figure 3. Screenshot of NetNewsWire taken from that Web site
A few services exist that allow you to aggregate content on an external Web portal.
A very popular free service with a large user base is Bloglines. Bloglines offers these features:
- Viewable on any platform, including Windows, Linux™, or Mac.
- Auto-discovery of RSS feeds for a given domain (when you don't know the RSS address).
- Access to your subscriptions from any computer. Reading history stays persistent across computers, ensuring that you only view unread content.
- Mobile version for Internet-enabled mobile devices.
- Strong Firefox support: To add a new RSS feed, simply right click on a RSS icon or Web page (with plug-in).
- Hides channels with no new content (optional).
- Allows you to save a post for later retrieval.
- Includes a blogging account.
- Subscriptions can be made public, so other users can read your subscriptions; this is called a blogroll.
- Shows the number of other users subscribed to the same channel.
Figure 4. Screenshot of Bloglines
My Yahoo!® allows you to create a personalized homepage, but it isn't so much of an aggregator. It is missing many of the syndication and aggregation features offered by Bloglines, most importantly the two-pane view.
Web-based services have some disadvantages over traditional feed readers.
- Web-based services store all of your content on a Web site so it is not accessible offline. (However, there are 3rd party programs to sync public Web sites down to your local computer.)
- If your company uses internal intranet feeds, external Web-based services will not be able to access them because the Web site exists outside of your company's internal intranet.
In today's mobile environment, people want access to their subscriptions while in transit. A number of tools allow you to subscribe to RSS feeds from your cell phone, PDA, and even from your iPod®. Most readers support both online and disconnected mode. The Bloglines service has a mobile version for internet-connected mobile devices as shown in Figure 5 with a Treo™ 650.
Figure 5. Picture of Bloglines mobile on a Treo 650
- Bloglines and Feedburner support RSS aggregation on your internet-connected Web browsing mobile device.
- Yahoo! Mobile works on WAP enabled internet-connected phones.
- FreeRange is an aggregator for Java-enabled Web phones.
- PocketRSS works with PocketPC devices and supports offline viewing. You must sync content through an internet connection during ActiveSync®.
- Quick News for Palm OS® devices will download RSS feeds while syncing so that you can read them offline.
- iPod Agent allows you to read RSS feeds on your iPod.
Many areas of IBM support RSS and Atom for distribution of content. Here on developerWorks, you can choose to subscribe to specific products and technologies, or to the feeds of IBM bloggers. Additionally, developerWorks supports the capability to build custom feeds. You can mix and match different products and technologies to tailor a feed to your liking. The custom feeds support the ability to filter for articles, software downloads, tutorials, technical documents, and other content.
With the custom feed feature, you can choose to tailor your own personalized news source. For instance, you might subscribe to Linux and Open Source technologies involving both DB2® and WebSphere® products. Simply select each subject area, your information type (such as articles or tutorials), and click Submit. Copy the new URL into your feed reader and you're ready to read.
The Build your own feed service offers a unique feature of developerWorks: you can filter your feeds with one or more keywords. Suppose you want to stay up-to-date on articles about the WebSphere Application Server (unofficially referred to as WAS). If you add the character string "WAS" as a keyword for your custom feed and select the Articles check box, you will generate a personalized news source of the latest WebSphere Application Server articles from developerWorks.
Figure 6. Screenshot of personalized developerWorks feeds
In addition to the feeds offered on developerWorks, IBM alphaWorks can keep you up-to-date with the latest emerging technologies. Similar to developerWorks, alphaWorks supports custom feeds tailored to keywords you choose. Also, IBM Press Releases are available though syndication. See Resources.
RSS gained popularity with the explosion of the blogosphere. Many Web sites have jumped on the RSS bandwagon so you need not look very far; Web sites make them readily available to you. The value of RSS syndication runs much deeper:
Traditional Uses of RSS
- News syndication from custom portals such as Yahoo, or traditional sources such as CNN
- Company press releases
- Newsletters (moving away from e-mail)
- Blog syndication (such as Jon Udell's Weblog on InfoWorld)
New and creative uses of RSS
- Music (podcasting), radio (NPR), and TV programs (Internet TV).
- E-mail delivery (Gmail).
- Product Releases (Amazon.com, NetFlix).
- Photo sharing (Flickr).
- Social bookmarking (del.icio.us): Find out what other people are bookmarking, subscribe to a specific individual or a category.
- Software updates (File of the day).
- Weather Reports (rssweather.com).
- UPS, FedEx, and USPS packing tracking (Bloglines).
- Alerts of search terms (GoogleAlert (not affiliated with Google): See where and when your site is being discussed.
- Stock market and financial updates (SmartMoney).
- Microsoft shows strong support of RSS in upcoming releases of Longhorn and Internet Explorer 7, plans include embedding RSS deeper into applications to exchange information between programs.
If you would like to learn more, follow the links in Resources. I hope you have a better understanding as to the value of RSS syndication and how you can use it to make the most of your time on the Web.
- RSS (file format): Read Wikipedia's excellent article detailing the history and differences of RSS file formats.
- RSS Quick summary: See Sam Ruby's summary of the differences between various RSS versions and specifications with lists of elements and attributes.
- Building Applications with RSS, Atom, and the Atom API: Check out this presentation given at the O'Reilly Emerging Technology Conference. Available for download in Adobe PDF format.
- The RSS Quick Start Guide for Educators: Discover great information on how to distribute knowledge through RSS whether you work for a company or are an educator.
- RSS and Atom Resources: Explore these Lockergnome resources to will get you up and running with syndication, including a long list of news aggregators.
- Live Bookmarks: Get more information on Firefox's support of this tool that delivers updates to you as soon as they are available.
- RSS Builder: Create simple RSS 2.0 tags around static content with this free program. A similar tool, RSS Channel Editor, creates RSS tags from a Web form.
- Check out these official specification Web sites on RSS and Atom:
- developerWorks XML zone: Expand your XML skills with articles and tutorials.
technical events and Webcasts: Stay current with jam-packed technical sessions that shorten your learning curve, and improve the quality and results of your most difficult software projects.
- Expore some IBM developerWorks and alphaWorks RSS resources:
- developerWorks RSS Feeds
- developerWorks Blogs
- developerWorks Custom Channel Feeds
- alphaWorks RSS Feeds
- alphaWorks Custom Channel Feeds
- IBM Press Releases
Get products and technologies
trial software: Build your next development project with software available for download directly from developerWorks.
- Firefox, Opera and Apple's Safari and possibly the next version of Microsoft's Internet Explorer: Check out these browsers that do, or soon plan to, support RSS feeds.
- Try some of the stand-alone RSS feed readers mentioned in this artcle:
Vincent Lauria recently joined the Meetro.com team to assist with product management of their location aware IM client. Prior to joining Meetro, Vincent was a consultant in IBM Business Consulting Services, where he had the fortune to help shape how IBM approached social networking as an emerging and in some cases, disruptive technology. He spends much of his time following the trend of social software and its cultural impact on society. Outside of work, he has taken on a number of adventures: live webcamming a tour of the southern United States, backpacking a summer across Europe, and taking the helm of an open cockpit biplane.