Why Atom is Technically Superior to RSS for Modern Feeds
Atom is better than RSS, in ways that matter
I argue that Atom is technically superior to RSS and should be the standard for all feeds. While many differences seem minor, Atom offers clear encoding semantics for titles and a better distinction between summaries and full content. Unfortunately, Apple's early dominance with iTunes forced the podcast industry to stick with the messy RSS format, leaving Atom unsupported in that critical space despite its advantages.
I want RSS dead.
- tjansen
I agree that Atom is easier to use and better defined in some ways. But why on earth would you want to put unrestricted HTML in the title in the first place? How is a reader supposed to handle that? It's just a weird thing to allow.
In practice, the differences between the syndication formats don't really matter. Today even less than when they were created, as a solution for most of the differences is just a prompt away.
In my humble opinion, JSON feed (https://www.jsonfeed.org/version/1.1/) is the most practical format. By a small margin, but still...
- it's really simple and doesn't use XML
- it doesn't allow stupid things like HTML in titles (which I guarantee >50% of all implementations can't handle correctly)
- JSON Feed allows feeds to have a <favicon> and a (square!) <icon>, which is a very practical thing for readers. You can use the <favicon> in lists of feeds, and the <icon> to present a single feed. Atom has a small square icon and a <logo> which is supposed to use a 2:1 aspect ratio. 2:1 is completely useless. No site has a logo in 2:1. It's also useless for most full-name logos, like 'New York Times'. (RSS is, of course, even worse; it doesn't even recommend an aspect ratio, practically guaranteeing that RSS readers can look bad)
You can see that JSON feed has been designed from a feed consumer's point of view: what does an RSS reader need to make a feed look good? While Atom and RSS have been written from an abstract publisher's point of view, making everything […]
- robalni
There are so many formats and standards and people using different sets of them that I feel like we need an organisation that selects some of them and decides that those are the ones that people should use.
Everyone could become a member of that organisation and vote for which standards should be part of the next version of the selected set.
Maybe there could be a new version every other year or something.
This would give us some kind of leader that shows the way.
It would make it easier for developers if people were more focused on fewer standards and there would be a well defined point in time when we would upgrade to the new set of standards.
For those of you who are familiar with RISC-V, it would be like the RVA23 spec: one big collection of things to use that can be targeted and talked about as one thing with one name, rather than everyone having their own collection of extensions that they use.
- qznc
Atom is correct to a degree that is annoying.
It is XML, so not all HTML5 is allowed. You would have to convert your HTML5 to XHTML5. Possible but harder than string-concatenation.
It requires full self links, so you must put your domain name in there as relative links would be an error. When using a static generator, why should I care where the files are published?
My website has valid Atom feeds. Still, it's an annoying format to me.
- encomiast
Didn't we get enough of this fight 20 years ago? Let's not piss off Dave Winer again. Reminder: https://en.wikipedia.org/wiki/Worse_is_better
- jillesvangurp
If you publish content, Atom is the superior format. All the parsers support it so there's no argument there against using it. You use it, everything should work just fine. There are no real downsides.
The issue with RSS of course is that there is a lot of really crappy and ancient code out there that should have died a long time ago written in languages like PHP, Ruby, etc. by people who did not really care about details. Details like having unambiguous time stamps (what do you mean, you don't live in my time zone?), or details like "this text is not encoded in UTF-8 but in my unspecified locale specific ASCII variant" (why?!). Or indeed "this description contains malformed tag soup with some of the tags escaped".
Also, while most modern RSS and Atom parsers are pretty decent, it's not that hard to find feeds that still have parsing issues despite these frameworks giving it their best effort. Part of the reason is that the code that generates these feeds is a lot less well covered by frameworks. Lots of content management systems out there that use some wonky templating, home grown scripts, or other improvised shit to generate their feeds. That always was the biggest problem.