unstory

If this is the solution, I want my problem back.

Web feed formats

One of the default "auto modes" for writers is the RSS feed. They want to share their writing somehow. Plenty of writers don't own a domain name, but somewhere on their site sits a clunky RSS file in XML format. A horrible-looking file. If you have never seen one and feel like hating yourself, open any rss.xml from a random website or read the spec:
RSS Advisory Board

The website name explains most of it. RSS is supported in practically every feed reader and aggregator out there.

Some "rebels" go with Atom instead. Another piece of internet history. The more adventurous people can read the badly written novel known as RFC 4287:
The Atom Syndication Format

Standard reading material if you were sentenced to life imprisonment.

In simple terms, Atom was created to fix the inconsistencies in RSS by introducing a clear, fully standardized format. It defined things like unique IDs, timestamps, content types, and extensions more consistently, making it easier for publishers and feed readers to work together reliably. Cleaner on paper, more rigorous as a spec. In practice, from a writer's side, it fixes nothing you would notice. Readers and aggregators end up treating Atom feeds exactly the same way they treat RSS. Most readers and aggregators support this format too.

There's a third, rarely used option: JSON Feed. Simple, slightly modern, a human-readable JSON file. It doesn't carry the whole history of the internet. The spec is short and easy enough for a human to read:
JSON Feed

The homepage of the JSON Feed spec ends with "subscribe via RSS." That tells you everything you need to know about this format. Not every reader supports it. Many modern ones do. Most writers probably don't even know it exists. The people who use it tend to treat it as an alternative sitting next to RSS or Atom, not a replacement. Creators of JSON Feed themselves still ship RSS alongside it.

All three are garbage, just in different shapes. Atom fixes nothing from RSS that a writer would notice. JSON Feed fixes nothing from either, beyond swapping XML for JSON, which mostly helps the machine parsing it and slightly the human reading it. And every one of them is busy escaping HTML. Imagine building a format for sharing HTML content that requires you to escape HTML to use it. Isn't that crazy? It looks like the actual goal was never to share HTML. Just to ship something over XML or JSON.

JSON Feed is nicer and cleaner, sure. Next to those archaic formats, it feels almost sane. But the escaping is still there because the JSON format demands it. RSS and Atom let you hide HTML content inside the <![CDATA[]]> shenanigan, except that the exact closing sequence I just typed can't appear inside it either. An impressive little hack for escaping the escape hatch.

Choose your pain.