Skip to: Navigation | Content | Sidebar | Footer

Weblog Entry

Plugging the RSS Usability Hole

November 05, 2003
xml button

It’s been said before, but it’s worth repeating: direct links to syndication feeds, be they buttons or text, present a problem for end users:

I am not a technically proficient user. I don’t know what XML, RSS, or even HTML stand for. I think the internet is the web, and the web is the internet. I still haven’t figured out that I can dial up without having to click on the blue ‘E’ first.

When I see an orange button, I wonder what it does. I push it. A bunch of garbage text fills my screen, so I assume the button is broken. I don’t push the useless button again, and resent it being there.

This is 90% of your viewing audience. Even if you have a core of more educated, technically-inclined users, you’re still creating confusion. My first (and second, and many subsequent) exposures to the links caused momentary doubt. Why would I be seeing raw XML? What broke here, me or them? What is this XML good for, anyway? It took a long while before I managed to put the pieces together, and realize that it symbolizes something called RSS (which is inexplicably labelled ‘XML’, about as useful as labelling a desklamp ‘Wires and Glass’).

The worst part is how avoidable this confusion is. A simple page explaining the feeds is all it takes. This site has been using an explanatory page that lists associated feeds for ages. Simple, but necessary.

Still, in the interest of pushing the bar, I’ve taken to some further experimentation. Others like Sam and Anne have been playing around with CSS and various syndication formats. While I’m completely out of my element here, I’ve managed to take Anne’s lead and use a touch of XSL mixed with CSS to actually do something useful with an experimental feed.

Since I believe the XSL must be parsed client-side (so that the RSS can actually be used as RSS, rather than XHTML), this will most likely only work in Gecko-based browsers for the time being. The layout is a simpler version of this site’s current layout; it could go further, and using XSL I could theoretically duplicate everything from the sidebar to the fancy new CSS-based menus. But that’s a lot of work just to create what already exists.

The key to the whole thing is a text explanation in the sidebar:

This is an RSS feed.

So what’s RSS, you may ask? It’s a technology that notifies you when a site is updated, and allows you to read the updated content without viewing the site itself. Think of it like a mailing list for web sites. More reading is available on this site’s RSS resource page.

By styling and providing a reason for this page’s existence, hopefully users will be provided an answer before the question is asked.

Most browsers won’t be able to render this, so it’s not much more than a theoretical glimpse at what could be. The main point in this exercise is the information page, which does help solve the problem now instead of later. But with better browser support, it should be possible to go even further and do something about the raw code dump as well.

Reader Comments

Josh says:
November 05, 01h

Works like a charm in IE6, so your audience may be wider than you think.

excellent, BTW.

mike says:
November 05, 01h

Wouldnt something like the following be simpler and suitable:

[em]The button below is a link to an RSS feed.[/em]
So whatís RSS, you may ask? Itís a technology that notifies you when a site is updated, and allows you to read the updated content without viewing the site itself. Think of it like a mailing list for web sites. [rss button image]

Assuming you can actually get all that text to fit into an existing design…

Dave S. says:
November 05, 01h

Josh - wow! I didn’t even think to check it in IE, I just assumed it would fall down since it definitely didn’t work in Safari. Very cool.

Mike - that works too, but you’d have to do a good job associating the text with the link. Even then, I’d be surprised if everyone read the text before hitting the link.

Jason Grigsby says:
November 05, 01h

It works in Mozilla as well (after something like 1.2 or something. I forget what release incorporated XSLT support).

November 05, 01h

Nice one Dave, good ideas all round :)

Elaine says:
November 05, 02h

I’ve been struggling with the same question/concept – not for my personal site so much as for my work.

We’ve been using Blogger for a number of things, plus I’ve written some things that will eventually produce RSS (nothing outside the firewall yet), and I *think* the feeds are a good resource, but I haven’t been sure how to describe them to our audiences.

This is what I’ve done so far: – and I’m not really happy with what that says.

I like what you’ve got on your RSS resource page; it isn’t quite right for my purposes, but it has a certain conceptual touch that I may look to when I get around to revising our feeds page. (I like your links too. why isn’t there a good FAQ for people who aren’t creating RSS, but trying to figure out what the h*ll to do with it?!)

Mike says:
November 05, 02h

What’s cool about this is that I was doing some exploratory reading about XSLT today at work and – while understanding the concept – was left wondering how it all ties together for the user at the end. Now I have a nice tight example.

Nice work.

Dave S. says:
November 05, 02h

Elaine - excellent question. The proponents of RSS might be wise to put together a non-technical resource for end users instead of developers. Selling the technology on its merits might be difficult since it’s one of those ‘you have to use it to understand it’ things, but it sure couldn’t hurt to have a place to point to when the inevitable ‘Why?’ pops up.

Alicia says:
November 05, 02h

I’m a RSS newbie myself. I’ve seen it mentioned over and over, and I even get the basic concept. But one thing that’s mystifying me is: where do I get a news aggregator for the Mac??

I probably could Google it but at this point I’m not sold enough on the benefits to make the effort. If there were a few Mac recommendations on those RSS resource pages though, I wouldn’t mind giving it a look-see.

mike says:
November 05, 02h

Alicia - NetNewsWire rules, and NNWLite is free. OS X only.

At work I have to use Windows, and I’m left wondering where I find an aggregator that’s as good as NNW.

Dave S. says:
November 05, 02h

NetNewsWire is what everyone swears by for OS X -

I don’t personally use one myself though. I operate on three primary computers, and not being able to synchronize which items I’ve read and which I haven’t breaks the system for me.

Matt says:
November 05, 02h

It’s funny I just wrote a detailed entry about RSS this morning…

I wanted something that the average computer user would understand. My entry is non-technical, yet informative.

Dave S. says:
November 05, 02h

I realize I forgot to go into another issue I wanted to bring up while on the topic.

I’m not sure where everyone is at on the ‘human-readability of the code’ issue, but I’d think all this argues in favour of something human-readable. If it’s left solely to software, people like me will never bother figuring it out and experimenting like this.

We all know why HTML caught on. This is a good example of why RSS/Atom/etc. should continue in the same manner. (I don’t even understand how it could be otherwise, if the format is XML-based…)

But I’m probably overstepping my bounds here.

Alicia says:
November 05, 02h

Mike, Dave, thanks for the OS X recommendations. Guess what? I’m stuck on OS 9 here at work. So, OS 9 recommendations anyone? :)

Dave S. says:
November 05, 02h

Mike - give FeedDemon a shot. If I didn’t have the synchronization headache, I’d be using it myself. The only little problem I found with it was that the internal browser is IE.

Keith says:
November 05, 03h

Thanks Dave – I needed this. I’ve not actually seen any user interaction with RSS feeds or syndication, but your observations make sense.

Down at my day job we’re trying the push the usefulness of RSS to our stakeholders and content contributers and these issues are very good ones to know about. What’s even better is you’ve pointed out solutions. Thanks.

Eric says:
November 05, 03h

Client side XSL has been around for ages. I did a whole site in it about 2 and a half years ago only to find that Microsoft’s XML handling code was buggy and could crash IE, and sometimes even crash Windows. The site was abandoned because I was certainly not going to release the first website to ever kill someone’s computer outright. Also the Mozilla builds at the time would show the XML for a half-second before repainting the processed document, even when it was cached.

I revisited it about a year ago and found some of the problems still existed (mainly in loops and deep recursion). It’s an absolutely fantastic thing, like CSS on a grand scale, but it won’t catch on until its guaranteed to at least not crash the browser and OS.

jgraham says:
November 05, 03h

Why client side XSLT? I suppose it’s easy, and you’re probably not loosing anything in the case that the browser doesn’t understand XSLT but, on the other hand, the browser has always seemed like the wrong level to implement XSLT. If you have content that needs to be transformed, transform it on the server and send the transformed content over the wire. Browsers are hard enough to write without full XSLT support being an additional requirement.

In this case, the ‘right’ solution seems to be checking the browser Accept header (I think that’s the right name), to see which content types it likes. If it prefers (X)HTML, send that, if it prefers RSS, send that.

Evan says:
November 05, 04h

It’s a really smart application of XSLT, Dave. Bravo. However, I have to agree with James – I think the better place to do it is on the server.

Dave S. says:
November 05, 04h

Server-side would be preferable, I’m sure of that. I just don’t have the coding chops to build a negotiation script. I didn’t even think of it, actually – I just figured you transform server side, you break newsreaders, so avoiding it was easier.

Darice says:
November 05, 06h

I haven’t tried XSL yet for my feed but I use PHP to generate
the feed in a file named: rss.php It works fine in newsreader like Feedreader and FeedDemon. So server side feeds are supossed to work even with extensions like .php or .asp

November 05, 06h

good stuff…implemented a very simple version of it on for our current RDF and it works a treat (although i still need to delve into xslt a bit more to make it a tad more exciting)

James Wu says:
November 05, 06h

Personally, I don’t believe it is an issue at all; most aggregators nowadays have auto-discovery for RSS feeds - the cute little orange XML buttons shouldn’t even be linked, since it’s only there to signify the existance of an RSS feed. No?

Dris says:
November 05, 07h

I actually despise the popularity of the little orange buttons, because it’s not just XML, it’s RSS built on XML. I also don’t like that it’s generally accepted to use .xml for RSS filenames, but I follow suite because aggregators sometimes choke on .rss, which is kind of weird. We never use .xml on our XHTML files, so why for RSS?

That was somewhat off-topic, sorry for the rant. Anyways, great demonstration of XSLT. For various reasons, I think XSLT is actually better on the client side (web standards should never be dependent on server-side preprocessing), but each to his own.

Now, I may be wrong, but I think I remember there being way of attaching a CSS file to any generic XML document. I believe it’s done with , which would make sense. I think that might be a better option than transforming the document itself. You could style the RSS elements without any transformation. Makes sense to me. I think CSS is supposed to be a universal styling syntax, not just for one particular strain of XML. Unfortunately, support for this is probably at about the same level as XSLT.

Anyways, cool example; XSLT is going to be great once in full implementation.

Dris says:
November 05, 07h

Oh, by the way… All the articles in the RSS feed that have images are for some reason showing two iterations of the images in NetNewsWire… See Fog Creek Software, Bzzzzt, and Dangling Carrots.

Dave S. says:
November 05, 07h

Dris - adding CSS to an arbitrary XML file is a piece of cake. Use the xml-stylesheet linking syntax, and away you go. Give it a shot; I thought of providing an alternate CSS file as a backup for Safari with this RSS feed, but I haven’t gotten it working properly yet.

A problem I’ve run into doing that in the past is that the data really could use a cleaning up in advance sometimes, which makes XSLT ideal. Although I’m sure creative PHP could handle it just fine.

kami says:
November 05, 09h

“I still havenít figured out that I can dial up without having to click on the blue ĎEí first.”

Auugghh. I get ten or so Blaster.D/Nachi pings every minute. This is why.

Chris Burkhardt says:
November 05, 09h

I’m glad someone else doesn’t like the orange XML buttons (where did those come from anyway?). I had used RSS feeds with a news aggregator (NetNewsWire 8-) long before I ever encountered one of those cryptic orange buttons. I knew what XML was, but didn’t know what the button was. So I clicked it. It took me to a page which had a few lines of pretty meaningless text. I viewed the source, and realized it was an RSS feed (RDF). Why did the button say XML instead of RSS which would have been a gabillion times more useful? I don’t know, but the button seems to have caught on (does some blog software use it? I think a lot of Radio blogs have them).

Anyway, I’m glad I’m not the only one who doesn’t like them, at least without any explaination.

PS: Hi Dave, I’ve visited your site before, but this is my first comment. None of the comment form fields have labels, so I just guessed where to put my name and email – I’m using Camino, and am probably reporting a known problem which you can’t do anything about. Anyway thanks for the read!

Niket says:
November 05, 10h

OK, I am a RSS no-bie (not newbie), so please don’t laugh :)

So if I want to get “RSS notification” of some sort as when Dave S updates this blog, what do I need to do?

I heard that RSS 0.9 and 1.0 is RDF, but RDF is not RSS, and RSS 2.0 is not RDF. Grrrrrrr! Confusion!!

And whenever I try to view an RSS in Opera, it just shows me plaintext (XML?) document. Why? Maybe it Opera figures there is a dumb soul sitting at the terminal and decides to send in “garbage”.

Eric says:
November 05, 10h

To answer the question of “why client side”:

1. XSL is VERY expensive to run. Most big sites could never use live XSL transformation of dynamic content.*
2. Just as you have different CSS files, you can have different XSL files for different view/uses of the site (as the RSS feed illustrates). You can also set up offsite/third-party stylesheets.
3. Sending just the data is a heck of a lot faster than the fully processed document, especially when you set up linked stylesheets that are cached in the browser and pulled in as needed.
4. It’s a big step in the direction of delivering semantically rich information. Although I don’t agree, people often complain that (X)HTML isn’t very semantic, with a well-defined schema no such complaints can be said about an XML document.

*XTP from Caucho actually makes this possible but this isn’t the right place to discuss that type of stuff.

Paul says:
November 05, 11h

Alicia, try… you can use it on internet. no software needed.

Dan Wood says:
November 05, 12h

On my weblogs (e.g. the one linked to from my name), I use a javascript popup window to respond when the user clicks on it in a friendly way, explaining what it’s for. The button is still a valid link that you can copy or drag to your favorite news reader like NetNewsWire, but it doesn’t fill up your screen with junk. (AOL Journals does something similar, I believe.)

Dave S. says:
November 05, 12h

Javascript is probably a more useful, available-now way of addressing the problem. The pop-up window would turn some off of the idea, but I’d rather use that than XSL in a real-world situation.

November 06, 01h

Re: Mike’s query about opening links in FeedDemon in the system’s default browser

Go to Tools > Options… > Browsing [tab]

and check the box for “Open links in default browser instead of inside FeedDemon”

Hope that helps.

Dave S. says:
November 06, 01h

Thanks Elaine, Ronan, Alicia, Steve, I’m going to see if I can’t get an FOF install running on this end. Looks to be exactly what I need.

Bill says:
November 06, 01h

This is pretty off topic but I gotta ask.
I notice that in everyones comments the first time an acronym is used your site has it correctly tagged as an acronym, with the correct text expansion for it in the tag.

Now, maybe I’m wrong but I can’t believe everyone here is tagging their comments for you - and I doubt you are editing everyones comments by hand - so how do you do it? Is there a plugin to your comment system that does it?

Regardless I think it is pretty cool to see.

manuel razzari says:
November 06, 05h

Dave: a fantastic idea. We shall follow it!

alf says:
November 06, 06h

You can do a similar thing using just CSS (no XSLT) like this:

Rijk says:
November 06, 06h

If an rss feed only contains plain text (no embedded markup), it is easy to get it to show in any decent browser by linking to a CSS stylesheet.

An example of a a blog that is directly readable in browsers: .

I’ve set a local copy of, a general rdf/rss style sheet, as my user style sheet in Opera to show me RSS and RDF in a readable way.

Evan says:
November 06, 07h

Hi Eric!

1) Agreed that XSL can be very expensive. But it is wrong to say that big websites can’t handle XSL on the server; they can, and they do. eBay is just *one* example among many. (Actually, eBay’s backend presentation layer is much more sophisticated than one might think, given their ugly output markup.)

2) The server side can handle as many stylesheets as you like, and there’s nothing stopping you from pulling them from remote/3rd-party servers at any point during the process.

3) and 4) – no argument here. :)

Dave S. says:
November 06, 07h

Rijk - you’ll notice the sample weblog you linked to doesn’t actually have any links, anywhere. Obviously it’ll work fine in the newsreader, but skipping the links in the browser kind of defeats the purpose of truncated-entry RSS, doesn’t it? That’s a good demonstration of why a little transformation is nice.

Evan says:
November 06, 07h

Actually, I take that last part back about #4. I agree with you about (X)HTML and its semantic potential. It is a bad idea to serve up some other XML format to end-users just for philosophical reasons, i.e. because XHTML “isn’t semantic enough.” There has to be a solid technological reason.

Elaine says:
November 06, 08h

Dave, IIRC you’re now on a server that can handle PHP? I have the same issue that you do as far as being on several computers and wanting to synchronise my reading, and now I swear by Feed on Feeds ( ).

If I had the time, I’d customize the heck out of it because I don’t like the default layout, but as far as keeping track of what I’m reading, it rocks.

Matt, thanks for the explanation. It’ll be good to see these kinds of descriptions for the “no-bie” emerge over time.

zlog says:
November 06, 09h

I would also swear by ‘Feed on Feeds’ as I don’t have access NetNewsWire (yet).

I have been using it for the last 6 months with no problems and customising it is a breeze.

It should sort all your synchronisation problems too Dave.

Michael says:
November 06, 09h

NetNewsWire is, as has been said, very nice and works well with Safari.

However, I hesitate to say this as I really do love OS X, but the best piece of software I ever bought for it was Alsoft Diskwarrior.

Over time, even OS X needs de-fragging. And if you need to press control+command+the power button, inevitably there will be some damage that needs repairing.

… sorry, I’ve got a bit OT. It was a good idea to have RSS: as you say, it functions in some ways like a replacement for mailing-lists - and as email is pretty much broken (owing to spam) RSS can only get more popular.

Alicia says:
November 06, 09h

Paul: thanks for the tip. Great service! And Dave, you mentioned having an issue with news aggregators not being sync’d among your primary computers as far as what you’ve already read. Perhaps would be to your liking since it’s web-based?

Geof says:
November 06, 09h


Way cool idea. I’ve had that idea in my head but don’t know why I never voiced it to someone who has the chops to make it work. :)

As for a resource to point people to, I think something like would be a good non-techie place to point people. Of course, it would be even better if there was a blogosphere community resource that described it even better than that, and also explained the technical terms for the would-be techies and the real geeks … but then, well, I’m probably dreaming in thinking that everyone would get along. :)

November 06, 10h

Thanks for posting this Dave, since the last site I built was in xhtml 1.1, and I’ve been looking at Atom test feeds, I couldn’t help but notice that syndication feeds are getting easier to read while HTML is looking more like XML everyday, and why have two files instead of just one?

I remember playing with XSL and IE 5 back in early 2000, the support was hit and miss and you couldn’t do much but simple loops with XSL at the time. Since none of it seemed to work in the then-new IE5 for mac, I had to drop it for intranet use. I hadn’t thought to try it again on rss or atom feeds.

Also worth noting: Sam Ruby showed off some simple Atom XML+CSS templates a copule weeks back, but XSLT offers a lot more

November 06, 11h

When I first saw this technique on Anne’s site, I was impressed. The XSL certainly makes the feed look a lot better. But it still seems confusing to present another version of the same content. Users will still wonder what the point is. I’m still not satisfied with what we have here. But then again, I probably won’t be happy until the only RSS links are those embedded in <LINK> tags.

November 06, 12h

I agree. A server side aggregator, like Bloglines (if you want ready to go, works right away) or Feed on Feeds (if you want free, Free, and customizability) is a must, if you read feeds on more than one machine.

mike says:
November 06, 12h

Ack. FeedDemon is OK – certainly feature “rich” – but why oh why can I not use my preferred and default browser for the links?

This seems to be endemic to Windows software in general – overload with features to the detriment of simple usability.

As you can see, I’m not real happy about using Windows at work. ;)

Simon says:
November 07, 01h

Here is a little something that I whipped up in relation to my previuos note about stylesheets transforming themselves. Still a work in progress but it’s getting there.

Simon says:
November 07, 02h

Hmm. I’ve just had thought that for sites using client side xsl files (which if IE 6 can handle them may become more prevelant). For each system stylesheet, include a link to a stylesheet that renders it in a similar fashion to you RSS style sheet. If that makes sense, I’m a bit brain melted right now.
The way I see it though is you look at a page, do view source and go “ooo let’s look at the style sheet” and when you do that you get another nice looking page displaying the stylesheet. And the stylesheet that does this also can display itself in a nice fashion.
Ok it’s only really useful on a page that is being used for teaching type of stuff (like here for instance) but it might be worth a thought. I’ve done a few tests on it and will do some more when I get home.

Kevin Davis says:
November 07, 06h

Hi Dave,

I like the idea of actually explaining what a syndication feed is. Thank you for the (general) recommendation! I added an explanation to my feed.

November 07, 07h

Have to disagree about XSL not being useful for larger sites. We’ve just built a corporate intranet for a large (100,000+ employees) company and we use XSL to create all the navigational elements. The site’s navigation is stored in an XML skeleton, allowing the client to make major modifications to the site’s architecture and have the site immediately update all pages to prevent broken links. We use separate XSL sheets to pull each level of navigation plus the DHTML menus and it works nicely.

November 07, 11h

About Server Side XSL:

Isn’t it impossible to use user server side XSL with an RSS feed? If you run the RSS file through a server side XSL parser then it will just return an HTML file, and it will no longer be an RSS feed.

You would need two links, one to the un processes RSS, and one to the XSL processed one. That kind of defeats the purpose of this technique.

What makes Dave’s method so cool is that you can take the same URL and stick it into a RSS news reader, or a browser and it will work in both.

jgraham says:
November 08, 05h

CodeMonkeyX: No, that’s not the case. It is quite possible to have one file served up as different content types to different user agents. Facilitating this is the purpose of the Accept header that the browser sends.

Using Apache, it ought to be quite simple to do what is required for serving RSS to RSS readers and HTML to web browsers using the MultiViews option (this allows you to send distinct files with the requested filename but difdferent extensions in response to different Accept headers). In fact, I tried this, and it worked; but only when I specified the headers sent by the UA. Using a small sample of RSS readers, they couldn’t detect a feed at my test location, suggesting they were being sent the html instead. I don’t know if there’s any standard in the accept header for RSS readers? If not, there really should be, for this reason alone.

Notice that the logical conclusion of this approach is to have no feed link at all, anywhere on the site. Instead, you could point a browser at the homepage and get (X)HTML, and point a feed reader at the page and get sent atom or RSS, as it prefered. But to do this, feed readers need to send consistent and useful headers.

November 12, 02h

Common practice seems to be to include the RSS feed as a link in a META tag, while also providing an orange XML button to make your readers aware of the feed. Other sites have a Feeds page that lists a variety of feeds available (eg: the latest comments, latest news etc.)

The W3C homepage has a nice feed (link below) that gets styled by a simple stylesheet so the browser shows it in boxes and various fonts. Unfortunately, unlike Dave’s example, the links aren’t clickable (there’s no embedded HTML there - unless there’s a CSS command to make an element become a link you could add? Like you can make anything a table or table cell (so lists can be styled as cells)).

Dris: “I actually despise the popularity of the little orange buttons, because itís not just XML, itís RSS built on XML.”

Ahem. Someone else forgetting what XML stands for. It’s a framework on which to build whatever you like (eg: XAML). So RSS built with XML is perfectly sane. And since the RSS *is* XML, why not use an XML button? Or better still, one that reads “RSS (XML)” or “RSS/XML”. I’ve seen some sites with buttons for every variation of RSS as a feed!

A great page for explaining all the versions of RSS comes from Mark Pilgrim at

As usual his writing style is clear and easy to understand, while detailed enough to warrant reading.

Frank BoŽs says:
November 12, 03h

With todays browser there is a simple solution for linking your rss content: reformat it via css. Anybody knowing what to do with rss can use it in his favourite news aggregator, and the guys just clicking away will see a page showing the rss content, but reformatted in a nice and viewable way.

Just check out

Using Mozillas capabilities you can also add xlinks to your rss content.

November 12, 12h

I’ve just set up my own RSS 2.0 XML feed. Anyone care to test it for me? Have I got the code right?

I’ve also added a stylesheet so it doesn’t look too bad if you click on the big red button. (Sorry, no orange.)

I’m also having problems styling non-standard tags. Can anyone help? Or will I have to use XSL?

All is explained in the post on my site:

November 14, 08h

This is a great blog post - very insightful and the comments have opened my eyes to many viewpoints. The only thing I can add that might be interesting is this:


aggregated says:
November 15, 10h

So the big revelation here is that you can transform eXtensible Markup Language with eXtensible Stylesheet Language Transformations? Thank you captain obvious ;-)

[DS - Considering the post is titled ‘Plugging the RSS *Usability Hole*’, that’s just an ignorant comment.]

I’ve seen styleheets that do this knocking around for a while now. Actually I hadn’t considered the usability problems, what I had considered was scripting a page that let the user add feeds of there choice, all translated using xslt/css, an online aggregator if you will. This has been on my todo list for at least a year, if people are going to start inlining stylesheets I’ll have to remember to parse those out.

E. Naeher says:
November 17, 10h

A bit late to the party here, I know, but I’d like to point out that I am fairly certain it’s not just IE 6 that can handle client-side XSLT. 5.5 and possibly 5.0 can do it as well, and IE generally does it quite well – the msxml core code is fairly well regarded I think.

There are some things Microsoft has done right.

Ross says:
December 29, 04h

I’ve replaced the XML button on my weblog with two things:

1) A Subscription form from, that lets users supscribe to my blog via email

and 2) A link to the “Subscription Options” page that creates for any site in it’s database:

(disclosure, I created Localfeeds)

Justin says:
April 10, 01h

Thanks for keeping it an open discussion Dave!

It took me browsing this site with my handheld to find the essentials section (yes, I’m new around here).
Great idea about the RSS feed information page, much better than the button. It pretty much followed the plain-jane W3C XHTML Strict buttons and company right out the door.
Not so sure that once you get to the information page you still should be nervous about the user clicking the RSS feed, but either way XSL could surely help.
My disagreeability comes with the lack of enthusiasm for server-side XSL transforms.

Any server-side processing alleviates all worries about “does it look correct on the client-side?”, that alone is worth it’s weight in gold. Want to keep your XSL logic under lock and key? Solved with server-side processing, nobody can find it without an HREF.
Transforming XML to XHTML is here now, it is widely used and extremely useful. I try to keep my content in XML form (or database), then translate it to whatever medium need be. This is where XSL comes in and my appreciation for ASP.NET. I know the majority of folks here are not Windows fans, hence the lack of mention of ASP.NET and it’s excellent support of XSL Transforms. I’m not familiar with PHP’s XSLT support, but I’d hazard a guess that it’s still in the beginning stages.

What about efficiency? Server-side caching is not ground-breaking and solves the problem by abstracting from the programmer. If the XML or XSL hasn’t changed, then show (send to client) the already parsed XHTML (from the XML/XSLT), the web server takes care of all this for us (if configured to do so). Very quick response and doesn’t leave the XSL parsing to client.
What if you want the raw XML? Integrate a link (perhaps the orange RSS button) into your XSL document that links to the raw RSS feed (raw XML).
OK, enough with the banter and on with some real-life examples…

A raw XML document (albeit very outdated):

The same document, with an XSLT applied on the server:
(notice the link at the bottom to the raw XML)

This XSLT works flawlessly in every browser I can think of, even Netscape 4.x. What’s not to like?