RSS is Wonderful

Feb 7, 2021

Computing

By: Brandon Quakkelaar

I am not a big social media guy anymore. Over the last few years I’ve been actively avoiding it. I’m not a fan of each platform’s privacy concerns, and users need to be very cautious to avoid flamewars and infinite doomscrolling. If we aren’t careful, social media’s default state seems to devolve into just destroying trust and goodwill. I prefer society in real life.

However, avoiding social media means that we lose a lot of interesting articles, funny memes, and informative videos that are shared on those platforms. Maybe that’s okay since there’s a lot of unproductive and even destructive activity happening on social media. But, I still want online communities that allow us to:

  1. Share ideas
  2. Stay informed
  3. Discover new sources of information

Sharing Ideas with Blogs Instead of Social Media

Sharing our own ideas is a fairly solved problem. For years people had their own homepages instead of social media. Does anyone remember Geocities and Angelfire? Those services offered web hosting where we could all create our own html “homepages”. More recently homepages have given way to the blogs like this one. But it’s basically the same thing. The main difference is blogs imply continuous posting of longform articles, whereas homepages didn’t always receive regular updates.

A strength of sharing with blogs is they require more effort and thinking to articulate an idea. That’s a feature, not a bug. Rather than hastily firing off status updates or “micro-blogging” our whims that may be misunderstood and end up haunting our future selves, instead blogging encourages us to put work into a long form explanation of the things we care about. It can be far more rewarding for us and also for our readers.

Stay Informed with RSS Feeds

With blogs came RSS feeds. RSS stands for Real Simple Syndication. It’s a technical specification for a protocol designed to publish content. But over the years RSS became synonymous with other protocols, like Atom, that are designed to do the same thing. With RSS we can curate our own feed of information. We can collect feeds from all the blogs we like, and we can get notified of new posts by subscribing with an RSS Reader. Readers will aggregate posts and list them chronologically for us. When the blog publishes content to their RSS feed, then it will be in our RSS reader without being subject to an invisible ranking algorithm like that which exists in social media. RSS is far more honest in that way.

To see an example of an RSS feed, take a look at quakkels.com/index.xml.

Discover New Blogs with RSS Discovery Engine

So, blogging and RSS feeds solve two of the three things I’m trying to replace. Social media offers really appealing mechanisms for discovering new content. Things like Youtube’s Recommended section algorithmically highlights new videos and channels that we might like based on what we’ve already watched. Also, sites like Reddit algorithmically highlight user posts based on a combination of user interaction (both upvates and downvotes), rating, and chronology.

RSS doesn’t have those kinds of discoverability features. To get them, typically we need a third party algorithm to help. Many feed readers offer those kinds of categorization and recommendation features. But I’m interested in a way to transparently discover related blogs that avoids hidden algorithms.

I thought back to the days of Geocities and Angelfire. Back when even Google wasn’t around. Web Rings were fairly common in those days. The core concept of a web ring was that one site will link to two other sites that were part of the ring. One ahead of themselves and one behind. So users could go forward or backward in the ring and discover related sites.

Inspired by Web Rings from the 90s, I created a tool for serendipitous discovery of blogs called RSS Discovery Engine. Similar to how web rings work, I make the assumption that interesting blogs will tend to link to other related blogs, and therefore, linked blogs are likely to also be interesting.

RSS Discovery Engine works by taking the URL to a blog, or any site with an RSS feed, and examining all the posts in the blog’s RSS feed for links to other sites. When a link to another site is found, it’s inspected to see if it also has an RSS feed. If the new site has an RSS feed, then it’s added to the results list. Since the content of RSS feeds change it’s common for results to change as time goes on. So returning to RSS Discovery Engine and spidering a URL a week later might show new results.

Discovery Example

Here’s a quick example of how RSS Discovery Engine works. It’s FOSS is a blog I already enjoy. I’ll start by entering it’s full URL into the search bar, and clicking “Spider”.

Raspberry Pi’s site showed up in the results.

When I clicked the “spider” button for Raspberry PI, I got a bunch of related and interesting results back.

As I continue scrolling I find the Arduino blog.

I can visit all these sites directly to see if they look like the kind of thing I’d like to return to. And, all of these sites have their own RSS feeds that I can plug into my reader.

RSS Discovery Engine’s Future

I think the ideal online community is decentralized and free from secret proprietary algorithms. Blogs, RSS, and tools like RSS Discovery Engine help cultivate such communities.

RSS Discovery Engine is pre-alpha software. It has a while to go to iron out all the wrinkles and deliver as much transparent and decentralized functionality as it can.

If you’re a Python programmer interested in contributing to the RSS Discovery Engine project, I invite you to take a look at the repository and to contribute via GitHub.

Further Reading

Thanks for reading. Feel free to send comments to blog@quakkels.com.