@medium your rss feeds are @ mess

Alan Levine
7 min readSep 27, 2014

RSS, is an old, supposedly dead technology, that still works wonders. And yet, is a messy standard. One that medium.com does wrong.

Really Simple Syndication. Or Rich Site Summary. Or just RSS. Such a powerful useful bit of technology, dating back to the 1990s. It’s a way for one site to dynamically have its content automatically updated from something published at another site.

As I was learning how to use this in 2002, I built Feed2JS a free web service (still in operation 12 years later) that provides a cut and paste method for people to embed RSS feed content in their web site. In the last few years I have built at least 10 web sites for education organizations that use this method of aggregation to run what some are calling Connected Courses.

It is, unlike the Hotel California approach of many social media silo sites, the way the internet itself works, a distributed universe of independent, individual publishers that are openly connected. In both directions.

So often declared dead. Google said it was not worth their effort to support an RSS Reader. When they upgraded to API 1.1, twitter decided they did not need to provide RSS feeds.

Yet RSS works. Simply?

Beautifully. In Connected Courses we have over 220 educators publishing, sharing ideas in their own digital spaces yet bringing them together in one shared space on the web site. Via RSS. This is the way the web was designed in the first place.

RSS is a standard.

Yet sites like medium.com, which provide a lovely, rich platform for publishing, do it wrong.

Let me show you how.

Everything I publish on medium is available at https://medium.com/@cogdog I am suspicious of having “@” symbols in the URL, but technically it is valid. Services like twitter are good at mapping them to a URL w/o the “@”, so I can enter http://twitter.com/@cogdog in my browser and twitter rewrites it as https://twitter.com/cogdog

RSS works well when a web page adds some extra data in what it publishes to offer a link to the content’s RSS feed. For example, if you view the HTML source of anything published on my blog http://cogdogblog.com/ (oh how much better the web would be if people were not afraid of doing a little detective work and bump their web literacy).

View source of http://cogdogblog.com/ reveals the secret code for not just an RSS feed, but three different flavors

This information that Wordpress publishes by default in its templates, allows other sites and tools to “autodiscover” RSS feeds.

At one time, this was considered important for web content developers put into the stuff that ends up in your browser. It’s ridiculously simple to do correctly.

Or at least in the old days, sites would publish little RSS icons with “Syndicate Here” links. It was a one click operation to add a site to your Google Reader.

Google gaveth and tooketh away.

But alas medium. On my medium page there is no indication at all of an RSS feed. The rationale typically is that few people understand what it is.

So I look under the hood at the source HTML of my medium.com page.

Finding an RSS feed in HTML source for my medium.com page at medium.com/@cogdog

It’s even hard to find, since in the effort to minify (minimize the file size), medium decides to remove the carriage return characters it its own source HTML.

It says, “no one looks at the HTML source so we decided to make it unreadable to humans”.

But even worse, in prbably yet another effort to save a few k of data, medium.com does not even report a full URL for my feed — it returns simple /feed/@cogdog — a relative URL a browser might understand, but not another site expecting to autodiscover an RSS feed URL.

For Connected Courses, I provide a tool to help people find the RSS feeds for their sites (since so many make it as difficult a challenge as medium.com) -I call it the “Magic Box”. You enter the URL for your web site, and it looks for the patterns in the source HTML for how RSS feeds are coded (I prefer to build sites that allow a means for people to learn the concept of an RSS feed rather than just automating the process to “make it easy”).

Because medium.com does not publish a full URL, my Magic Box does not produce magic.

Failure to find a full feed URL because its published wrong.

How much effort would it take the developers at medium.com to report a full URL in the output?

But that does not even matter, because there are more problems. When I try to edit a correct medium feed URL (that opens in a browser), the Feed Wordpress plugin we use on sites like Connected Courses fails: (note, whatever was blocking this from working has disappeared, so medium fixed ONE thing on my list ;-)

Now I have to contact another developer to ask why their software cannot get the information from medium.com. The “curl” function is how one web server can request the content of a program from another. It might be that medium.com blocks such requests. It might be a problem with “@” symbols in URLs for the curl function (here I am wildly guessing).

And yet.. there are more smelly things in medium’s feeds.

The Feed Validator is an extremely useful that examines an RSS URL to determine if it is properly constructed. What makes a standard work is when publishers follow guidelines to write output so other tools can use information. When I test my medium.com feed URL in the Feed Validator… #FAIL

Feed Validator for medium.com RSS feeds

So even if I could get Feed Wordpress to accept a medium.com RSS feed, it likely will not work, because RSS parsers rely on RSS feeds having valid constructs.

Sometimes I can get around validity problems by running RSS feeds through Feedburner — but see what happens if you try a medium.com RSS URL:

It’s bad when Feedburner cannot get an RSS feed.

It might take a knowledgable developer 20 minutes to diagnose and fix this problem on medium.com. It’s a template fix (I guess).

But the thing is— because of the force of influence of Google, Twitter, and other entities that control our experience— services, tools like RSS are deemed of little importance.

All of this matters little to you, likely. It does to me. And I will seek end arounds, duct tape, to try and make things work.

Like a zombie, RSS never really dies. Until people totally ignore it.

I am not ready.

Hello, @medium? This is a simple fix.

Thanks.

UPDATE (Oct 1, 2014): My genius friend @mhawksey found a solution that can convert medium RSS feeds into something we can use in Feed Wordpress sites- run the feed through Yahoo pipes, and use its own RSS feed. I made a pipe that can take any username and create a valid, usable feed.

UPDATE (May 23, 2015): Rather interesting that medium “channels” or is it “collections” of writings, such as The Message, have an RSS feed (no one would no again) that does have it’s URL in its source as a full URL e.g. https://medium.com/feed/message

This is good:

Peeking at the source of http://medium.com/message — look! it’s a fully formed RSS feed URL! Yippee

However feed of it found in the source HTML of one of their writers has it’s feed represented as a relative URL still, this is not good.

UPDATE (November 29, 2018): It’s been a while since I checked, but thanks to a tweet from Bonni Stachowiak I came to see what the mess looks like.

And it looks like my beefs are fixed. The discoverable feed for my channel is correctly in the source as a full URL https://medium.com/feed/@cogdog and it does correctly validate with the W3C feed checker.

Way to clean up the mess, @medium! Now, if anyone beyond me really uses RSS anymore…?

Image credit: “First Rain (228226305)” by David K from Dallas, USA — [1]. Licensed under Creative Commons Attribution-Share Alike 2.0 via Wikimedia Commons — https://commons.wikimedia.org/wiki/File:First_Rain_(228226305).jpg#mediaviewer/File:First_Rain_(228226305).jpg

--

--

Alan Levine

Barks about and plays with web tech. Likes photography, guitars, storytelling, blogging, biking, coding, the Who. Hates likes, egos, spammers. Has shots.