What the hell is RSS?

This article was written in an attempt to explain RSS feeds to a general readership. It assumes a basic knowledge of how the web works and should leave you knowing what an RSS feed is, how it is different to an HTML web page and what it’s for. This is the first draft and probably part one of a series so any comments are very welcome.

As you surf through various weblogs you will notice buttons like RSS, XML or a variation on this theme. Sometimes there’ll be a link saying Syndicate this site (XML). Click on these links and you’ll get a page full of HTML-like code, which is nice but completely useless to you, so you hit the Back button and get on with your life. This is a link to the RSS Feed for that site. The code is in XML. If this means nothing to you keep reading. Hopefully all will become clear.

Terms Defined

The world of XML is full of really scary acronyms but don’t let that put you off. If you can deal with the concept of HTML you can deal with these.

HTML stands for HyperText Markup Language. Hypertext is a fancy word for the way web pages link to one another, this being a hypertext link. In order to get your content to display on the web and link to other sites you mark it up as a hypertext document.

XML stands for eXtensible Markup Language. Notice has the ML has the same meaning. XML is essentially just another way of marking up text but whereas HTML is for browsers, varieties of XML can be developed for a wide range of applications.

Think of HTML as a form of XML for browsers. In fact the current version of HTML is called XHTML – eXtensible HypeText Markup Language – bringing it in line with XML standards.

RSS stands for either Really Simple Syndication or Rich Site Summary but both mean the same thing. In essence it’s just another form of XML. It marks up content using the same basic rules as HTML but for a different purpose. This purpose is to syndicate content to a wide variety of programs.

So, in summary, there is the basic XML standard of which XHTML and RSS are both flavours, the former being for web browsers and the latter for syndication

If you don’t understand these definitions then don’t worry, it’s not essential knowledge. You might want to come back to this bit later and see if it’s any clearer.

How is RSS different to HTML?

Let’s look at a weblog post. Commonly it’ll have a specific number of different sections: a title, author, body of text, date and address. A weblog post can be divided up in a similar way and in fact most weblog software (such as Blogger or Movable Type) stores weblog data in these sorts of fields.

Here’s a simplified version of my weblog template:

<div id=”title”>
<$MTEntryTitle$>
</div>

<div id=”body”>
<$MTEntryBody$>
</div>

<div id=”stamp”>
<a href=”<$MTEntryPermalink$>”>Permalink</a> | Posted on <$MTEntryDate$>
</div>

<div> is an HTML tag that tells the browser how to display the content. Here’s it’s saying to look at the style sheet for the id “title” and display <$MTEntryTitle$> accordingly, and so on. When Movable Type published my weblog it replaces <$MTEntryTitle$> with the actual title of the post, and so on, resulting in:

<div id=”title”>
Shopping Trip
</div>

<div id=”body”>
Today I went to Tescos. It was awful.
</div>

<div id=”stamp”>
<a href=”http://peteashton.com/005218.html”>Permalink</a> | Posted on January 12th 2004
</div>

It’s important to note that “title”, “body” and “stamp” are arbitrary terms made up by me to connecting the content to the style sheet. I could have used “fish”, “cup” and “sausage”.

The RSS feed for the same entry would look like this (again, simplified)

<item>
<title><$MTEntryTitle$></title>
<link><$MTEntryPermalink$></link>
<description><$MTEntryBody$></description>
<date><$MTEntryDate$></date>
</item>

Now, the browser will not understand these tags because they’re not HTML. There’s nothing here that says how the content should be displayed. Instead these tags say what the content is.

Try this analogy. The HTML for my trousers would say “black, 32 inch hole at the top, about a metre long, peanut butter stain four inches above the left knee.” The RSS for my trousers would say “these are trousers, they go in the trouser drawer, are worn as trousers and should be treated at all times as trousers. If you’re looking for trousers then these are they.”

HTML: what it looks like
RSS: what is is

What are RSS feeds for?

The big idea behind RSS feeds is that they are all the same. While my web site looks different to, say, Jez’s or Tom’s, our RSS feeds will be identical in all but content.

(Currently this isn’t strictly true as there are four, count ‘em, different versions of RSS floating around. At the time of writing it looks like Atom is going to be the standard having been adopted by Movable Type and Blogger, but for the purposes of this tutorial they’re all interchangeable so don’t let it worry you.)

This means that all that content that was previously sitting around on web pages can now be used in all manner of programs in all manner of ways. A very simple example is the “Photos” section of the sidebar on my main page. I run a LiveJournal where I occasionally post up photos I’m pleased with. I wanted to have recent entries to my LJ linked to on my Movable Type blog, but LJ and MT are completely incompatible programs that cannot be made to talk to each other. However, my LJ produces an RSS feed and using a plugin application to MT I can turn that into data that MT can understand. In essence, the plugin takes the “title” and “link” fields from the feed and sticks them on the page. The same things happens with my syndicated LiveJournal. Here, LJ takes the RSS feed for my weblog and converts it into a standard LiveJournal so people within the LJ community can add it to their “friends list”.

To see the power of RSS on a large scale have a look at Google News. While the news is sorted by Google the raw content is provided by RSS feeds. 4,500 feeds from 4,500 different news organisations using a wide range of different content management systems to produce their news. Without a standard like RSS, bringing this together automatically in real time would be impossible. (Credit where credit is due – RSS feeds as we know them are descended from the old new wire services, as terms like “syndication” imply. It’s only with their adoption by weblogging programs that they’ve gone mainstream)

But these kinds of things are really only of interest to web developers, which is probably why RSS has remained a geek thing until recently.

How can I use RSS feeds as an ordinary non-techy internet user?

The breakthough use of RSS feeds has been as a way of reading weblogs. The old way of reading blogs was to have a long list of them in your bookmarks down the side of your site which you clicked through on a daily basis to see if they had changed. You wait for the site to load and figure out whether there’s new content on there. If there isn’t you move on to the next one on the list.

If I want to see whether my favourite blogs have been updated I go to Bloglines and check my account there. Here’s what I see:

Whenever I come across a weblog I like the look of that has an RSS feed I subscribe to it in Bloglines. Bloglines checks that feed every hour to see if it has changed. If there’s a new entry it’s flagged up in the left hand column. Clicking on that displays the entry in the main panel. This entry is made up of the RSS feed alone, sometimes with the whole post, sometimes with just a link to the actual website. In the above example I’m looking at the feed for LinkMachineGo whose actual website looks like this:

Here’s another example, using an entry from Plasticbag. (I didn’t chose this on purpose, Tom. Honest.)

Here you can vividly see the difference between HTML and RSS. While the content is the same, none of the display information has been passed on to Bloglines, which displays plasticbag and LinkMachineGo in exactly the same manner.

My feeds are loose categorised (techy blogs, people blogs, comic blogs, linklogs, that kind of thing) along with the Guardian, Metafilter and other les-bloggy but frequently updated feeds making Bloglines pretty much the centre of my internet life.

Bloglines is what’s known as a feed reader or aggregator and there are many of them about, some web-based, some running on your computer desktop separate to the browser. I used Newzcrawler on Windows a fair bit over the summer and NetNewsWire appears to be the reader of choice for the Mac. All will have different features but in essence they work the same way.

The main selling point is that I’m able to keep on top of 100+ weblogs in a short space of time. This might seem an absurd number but it’s not really.

This entry was posted in Posts. Bookmark the permalink.

29 Responses to What the hell is RSS?

  1. Pete Ashton says:

    I now understand why ground-level guides to RSS are so rare – that took bloody ages and I’m sure it’s still too technical.

    What bits really don’t make any sense at all? (and please don’t say “all of it”)

  2. Dave C says:

    You really expect me to read this?

  3. Pete Ashton says:

    “You really expect me to read this?”
    Um, that’s the idea. But only if you give a shit.

    “There’s actually at least 9 different RSS standards, and they’re all incompatible with each other.”
    But any decent RSS reader can cope with them so, in this context, I don’t think it’s a problem. Cars are all different but they all seem to use the same road okay.

    I’m not being bitchy, but this just illustrates the chasm I’m trying to bridge here. The whole RSS thing is really simple. If those on the outside would spend a little time and those on the inside would try and do a little outreach then the former would get more out of the web and the latter would actually have people using and appreciating their work. Or something.

    I know what I’ve written isn’t perfect. Throw me a bone here.

  4. Kris says:

    I’d leave out the how is RSS different from HTML section and the what are RSS feeds for sections…or move them until later in the article. If I were a general reader, the first thing I’d want answered is what is it (in simple terms…something like a highly structured way of publishing the content of a website without visuals) and what can I do with it.

    Or maybe start with an example: I want to keep up with news at the New York Times website, but I don’t want to go to the site and wait for all the ads to load in order to see what’s new. Instead, I fire up my trusty newsreading software and check the NYT’s RSS feeds. Immediately, I can see the new headlines and a brief synopsis of the stories. If I’m interested, I click on the story, and the full web page is displayed in my browser. If not, I can quickly check other sites’ RSS feeds. In minutes, I’ve scanned what’s new at dozens of sites…without loading them in my browser.

    Or something like that…something for an average websurfer to get into. I checked this article, hoping to find something I could send to my brother, but this is starts out too technical, and the stuff that would be informative for him is at the end.

  5. marc says:

    Pete:

    I’m greatful for your efforts. I’ve been looking for a simple explanation for my father and this helps a great deal.
    i agree with what Kris mentioned above.
    “Terms defined” and “How is rss different…” are too technical to have right away. i would put them later on in the article.
    thanks for your work.

  6. Steve says:

    Pete, a good blend of simple mixed with some technical for people in the middle since the understanding and use of RSS news agrregators is exploding.

    PS – RSS subject matter is not close to being as esoteric like how to become a power Google searcher

    http://www.googleguide.com/

  7. Dave C says:

    Maybe they should come up with a more funky name rather than rss, then people might start using it.

  8. Alan says:

    Sorry, but if I did not know what RSS was before I would be rather confused. Suggestion is to start an article for newbies and non-techies with what you hit last- the potential use for RSS- rather than starting with paragraphs of acronym soup.

    Users of RSS should not even have to know what XML is, same as email users do not have to know what SMTP or POP stands for.

  9. Liz says:

    I think this is a fantastic article and I am not a technical person.

    If anyone interested in RSS actually finds this article, then they probably already know a little bit about it.

    Thanks for writing it! ;)

  10. Pete Ashton says:

    That’s all really useful – thanks. Expect a re-write in the next week or so (work permitting).

    And do keep the comments coming.

  11. Dad says:

    I wrote a long paragraph earlier today, clicked “post” and just now found out that it never went through. Is this RSS not working, or something else?

    What I had said was that I really don’t want to be dependant upon a third party, such as Blogger (they lost my blog a couple of years ago and I never went back). Does RSS need a third party or can you operate a site independently, like Jez seems to?

  12. Dad says:

    Jeez, this is so confusing I am sending comments to the other thread! Thanks for the reply, BTW!

  13. Andrea says:

    Thanks for posting the aritcle, but I’m not sure if I completely understand why this would be used over HTML. I am going to do more reading, as it is something I would like to better understand.

    Maybe I’m just slow…
    andrea

  14. Pete Ashton says:

    RSS feeds don’t replace HTML pages. Think of them a two distinct outputs of the same content, one for reading on the web and one for syndication. This confusion hadn’t really occured to me so I’ll try and make it clearer in the next version, along with severly reducing the techy stuff, probably holding it over for part two.

  15. Demian says:

    I think this is good. The thing that sold me on RSS which perhaps doesn’t come through though is the ‘slacker appeal’. Before I was directed to RSS I would go to my own blog and click all the links on my blogroll. This was laborious and time consuming and placed my poor puny body at very great risk of RSI because of all those clicks (perhaps RSS could stand for Repetetive Strain Sod-off?) and sometimes the blogs I clicked on hadn’t even been updated so the clicks and risk were pointless. Now I have Awusu running in the background and every now and again it goes for a stroll up and down my blogroll and if it finds anything new it lets me know. Fewer clicks. The downside is I that I read those non-RSS blogs in my list ‘when I get round to it’ which is probably every ten or so days.

    On a slightly related note – what’s the advantage of a web based reader like Bloglines over something like Awusu or NetNewsWire? I suppose the obvious advantage is if you only have internet access from work or a library or cybercafe where you can’t download software, but what about for home users?

    On a completely unrelated note but in connection with your sidebar links, I love those ‘Ich Gehore Nicht Zur Baader-Meinhof Gruppe’ bumper stickers and the idea of the Heidelberg depressives deciding that capitalism was the cause of mental illness and revolution the cure.

  16. Pete Ashton says:

    The ‘slacker’ angle is something I’m working on, or at least the way you can keep tabs on hundreds of different sites through one screen. I agree on the downside – I have to force myself to read non-RSS blogs which is one of the reasons for writing this – to get them to realise the benefits.

    I started using Bloglines because I was using different computers all over the place but even now I’m settled there doesn’t seem to be much difference between it and a desktop app. I could of course be missing something vital but Bloglines in Mozilla Firefox (tabs!) works fine for me.

  17. Lawrenson, M says:

    Petey-boy – “The ‘slacker’ angle is something I’m working on, or at least the way you can keep tabs on hundreds of different sites through one screen”

    Ah, this reminds me of something I thought up, but have never had a chance to use in my ‘material’ -

    “Pete Ashton – Techno drifter!”

  18. John says:

    As a raw, bare bones, green horn rookie I found this article useful. I also diacovered that RSS might be useful to me. Now All I have to do is learn how to set it up and use it.

  19. Kreig Zimmerman says:

    I think what has to be kept in mind is this:

    THE INTERNET IS NOT THE WEB.

    When you get past the idea that all information on the internet is presented in a web-enabled format, RSS’s usefulness becomes much clearer. It is a manner in which you can aggregate information in a format which will be much more useful then by going directly to each and every website.

    I am a new convert to the wonders of RSS, and it simply makes better the ability to gather information without the usual web-waiting entailed by visiting site by site. With an aggregator, I can have all this at my fingertips.

    On the flip-side, too many sites offer scanty feeds which simply link to the main articles on the site. These people also seem to be overcome by the myopia that RSS can be as cogent and worthwhile a delivery format as mere web-pages.

    Not to mention the ancillary benefits of allowing people access via RSS feeds, to other devices, disposing of the need of WAP-enabled pages et al.

  20. Dave C says:

    Okay i’m a semi-convert to the church of RSS. After reading the article at bbc online (link in petes link farm) I have a handle of what this RSS stuff actually does and how it can be useful to me. I’m now using NetNewsWire Lite to keep tags on the sites I like that have RSS feeds.

  21. Bill M says:

    Pete, thank you for writing this and providing the link to the BBC. I’ve noticed RSS or XML links on some of the news and comic sites I visit, but never knew what it was for or how it worked. Looks like it could be a useful tool for me.

  22. Leon says:

    I appreciate your article; I looked for ‘Explain RSS’ in Google and found this one thanks to the title, and now I get it. I’m currently learning XML and XSL, but I didn’t really know the difference between RSS and XML – I thought RSS was something of it’s own.

    So, thanks again.

    Leon

  23. Marco van den Hout says:

    spot the typo: XHTML – eXtensible HypeText

  24. Anonymous says:

    just wanted to say thanks i found the info concise and useful

  25. Anonymous says:

    I love the trowsers example.

  26. Deb says:

    So, I understand this to a point. You take the RSS code and do what with it? That’s the thing I really don’t understand. And doesn’t RSS publish random items, too, like if I were to have a blog and publish an item, is it getting pushed out via RSS somewhere? or only if someone has subscribed to watching the blog?

  27. Pete Ashton says:

    Since I wrote this (nealy 2 years ago – wow!) RSS has been adopted more widely and so there are much better explainations of what it’s all about. The BBC guide is probably a good place to start:

    http://news.bbc.co.uk/1/hi/help/3223484.stm