Atom is better than RSS, in ways that matter

(chrismorgan.info)

68 points | by frizlab 10 hours ago

10 comments

  • jillesvangurp 54 minutes ago
    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.

  • encomiast 4 hours ago
    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
    • leoc 13 minutes ago
      No thanks. We've spent enough decades living in squatter camps built on the ruins of other people's lazy decisions. It's past time to move out now. Worse is worse; worse is shit. And there's nothing endearing or funny about Winer's bad behaviour.
    • hardwaresofton 3 hours ago
      > Gabriel offers the examples of the adoption of C over Lisp, Unix over Lisp machines and VMS, and x86 over reduced instruction set computers as examples of technically worse solutions defeating more elegant ones by arriving to market first.

      Even (especially?) as a person that appreciates Lisp, Lisp losing this fight twice is kind of funny.

      Wonder if it’s going to happen an nth time with Guix vs Nix

      • eikenberry 1 hour ago
        Worse is better isn't about first to market, it was about simpler beating correct.
    • 4ndrewl 1 hour ago
      Isn't this just VHS v Betamax again?
  • ladax72707 2 hours ago
    Most of the online content I consume comes to me either via RSS or Atom (I don't have numbers on the split). Not once have I thought - "Gosh darn it, this blog uses RSS instead of Atom, even though Atom is so obviously the better choice. Now I don't even want to add this blog to my feed." ...
    • kelnos 1 hour ago
      I don't think this article is aimed at consumers, but at developers who might have to write parsers, or people who are trying to decide what feed format to use for their own content.

      Though you might be upset about RSS being used when your reader screws up with it, because some things are difficult to interpret. Of course, you won't know why it screws up, and you'll probably blame the person who wrote the feed, not the format itself.

  • tim-projects 39 minutes ago
    What about activitypub? I thought that was the new format to use..
  • pavel_lishin 5 hours ago
    The three ways of encoding the string "<xmp>" in the title all look like awful gibberish to me.
  • vivzkestrel 3 hours ago
    - since we are on the topic i got a question for you

    - what is the best way to store rss data inside postgres

    - will you store it as raw xml directly? or will you process it and store it?

    - what format will you store it as if stored inside postgres?

    - how will you handle updates to the feed? rss doesnt do websocket push as far as i can tell so you have to poll which gives you the entire feed with a few items removed and a few new items added in the best case scenario. how do you diff this for storing?

    • Kwpolska 1 hour ago
      If you're building a RSS reader, you'd probably want to process the data and store all relevant fields as columns for storage. Not much point to storing the XML.

      Entries in feeds should have a guid you can use to detect updates/entries you have already seen. RSS readers typically don't delete entries that disappeared from the feed - entries disappear from feeds to limit their size.

      You can get live updates to some RSS feeds using WebSub.

      • vivzkestrel 35 minutes ago
        - the idea behind storing the raw feed items instead of processed ones is

        - what happens if your processing logic changes 6 months down the line?

        - for example today you decide you want to remove all extra spaces and lowercase all titles before storing them

        - 6 months down the line you want to revert, what now?

    • mmakeev 1 hour ago
      [dead]
  • ksec 2 hours ago
    I remember ( I may be very wrong ) eventually RSS and Atom became one and the same thing for consumer and that all RSS reader would parse Atom feed, RSS became the logo and the name people know, atom was used behind the scene.

    Apart from iTunes, as the article said.

    It has been 20+ years I do hope someone on HN can now spills the beans as to why.

    • konsalexee 2 hours ago
      I think literally 90% of people that know RSS, if you ask them what Atom is, they will probably reply RSS.

      I liked thought the article as I never deep dived in the differences

  • leephillips 2 hours ago
    The article is correct. Anyone who knows what they’re doing builds an Atom feed, not RSS. In fact, I thought this was common knowledge a decade ago.
  • superkuh 5 hours ago
    Atom is better than RSS in the way Betamax was better than VHS. With the same outcome and consequences for practical use.
    • chias 1 hour ago
      Not relevant to the overall discussion, but this VHS vs Betamax thing is actually a myth, borne from confusing Betamax (a home consumer version, comparable and inferior to VHS) with Betacam (a professional format, which could use the same physical tapes as Betamax, albeit at much shorter runtimes so not suitable for movies).
    • jpease 3 hours ago
      As in we now use neither?
    • thaumasiotes 4 hours ago
      What? Not at all. RSS is a product category. Many RSS feeds are, if you look into them, Atom. Your RSS reader just doesn't bother to tell you, because why would you care?

      Try putting a Betamax tape into a VHS VCR and see if you can watch it.

      • superkuh 3 hours ago
        Atom is a response to not wanting to support backwards compatibility like RSS does in order to improve things. https://web.archive.org/web/20080216234454/http://www.sixapa... It's explicitly a different thing.

        This is like pointing at the monitor of a desktop computer and saying, "that's the computer". It is effective to communicate with people who aren't interested in computers, but it's also not true and the distinction does have important consequences for behavior. Atom is not RSS even if some feed readers support both and most people don't know what feeds are.

        And because of that, and the early popularity and widespread adoption of RSS, the better format (atom) isn't used nearly as much. And calls to increase use of betamax/atom generally went and go unheeded.

        • stymaar 2 hours ago
          > and the early popularity and widespread adoption of RSS, the better format (atom) isn't used nearly as much.

          That may have been true 20 years ago, but now that pretty much no-one uses either of them , I'd be surprised if RSS was still meaningfully more widespread than Atom. (Except everything is being called RSS).

          https://news.ycombinator.com/item?id=49141336 is the only valid response to your VHS/Betamax comparison, really.

          • verisimi 2 hours ago
            I use RSS multiple times daily.
            • stymaar 2 hours ago
              And you're also on HN, you're not exactly the average human being.

              Do you use “RSS” as a protol specifically, or do you use “RSS” as in “any feed no matter the protocol”?

            • kelnos 1 hour ago
              One person using something doesn't mean it's popular.
  • Vinnl 1 hour ago
    tl;dr

    Atom can do < or & in titles, and offer both a summary and the full text.

    Some podcast apps (Apple Podcasts) don't support Atom, so then plain RSS is better.

    So it doesn't really matter that much.