A very rusty fence/rail thing on Santorini

It's 2024. Let's have a WEBRING

Sep 24, 2024

It's no secret that I'm old. The last time I got carded was at Costco buying a case of beer and the cashier gasped "OMG you're OLD. Oops I'm sorry!" because I was 40 at the time but didn't look it. (We had a great laugh about it).

Vicki posted last week and touched upon how the internet is infected with the problem of not having enough people. The non-human bots, LLMs, automated spammers are flooding us out of visibility. As things continue, the small web, the connections between individual unique humans with all their quirks and interests are going to keep gaining importance as being a differentiator from the noise.

And of course, I joked on Bluesky about bringing back webrings for data people. Something I've quipped about every so often after the death of Twitter. But this time, I needed to blow off some steam and spend a couple of hours building something silly.

And so I did the thing. I adapted a very simple webring system for data people to use.

TL;DR: If you want to add your blog/newsletter/personal site to the ring, contact me or submit a PR after reading instructions in the GitHub repo below:

GitHub - randyau/datawebring
Contribute to randyau/datawebring development by creating an account on GitHub.

What the heck is a webring?

Unless you were active on the internet before 2003-ish, you probably have no idea what the hell I'm talking about, so allow me to explain.

Back in the late 90's, early 00's, search engines were still largely useless. Before the arrival and dominance of Google, finding stuff on the internet involved using a hodgepodge of search engines like Altavista, Hotbot (my personal goto at the time), Ask Jeeves. They all were "meh" at their jobs, and so if you really wanted to find something you often had to use multiple ones. The web was also much smaller back then so there was a good chance what you wanted to find didn't exist.

The alternative is to use a curated web directory, Yahoo being the most successful version of that, though there were many niche ones of various qualities. If you were really desperate, there used to be printed books (like this one on Internet Archive) that listed interesting websites to visit. A fair chunk of those sites would be dead or moved by the time the books hit the shelves, but it was an option.

But what about the reverse problem? What if you were someone who created their first website about something? How would you get people to find your new site when search engines coverage was spotty and you were some link in a giant phonebook of a web directory? Aside from submitting your site to all the search engines and web directories, one thing people started doing was joining this thing called a "webring".

The easiest way to think of a webring is the linked list you maybe learned in an into CS class. Every website would put an iframe on their page somewhere and their site would be given an index number in a big circular linked list of web sites.

Users can interact with the webring in three ways: browse to the next site in the ring, browse to the previous site, or jump to a random site. Presumably, since the webring is curated by a centralized admin and relevant to a particular topic, users are motivated to browse from one to the other. Since the iframe code is shared across sites, the user experience would be somewhat consistent. The "ring" concept came in because in theory if a user kept hitting "Next", they'd eventually loop back to the original site they started with.

Webrings were popular for the time, and they were all managed by human curators who decided what was relevant to the group. Typically sites associated based on what their central topic was, be it hobbies, anime, music, celebrity fansites, etc.. Getting onto a ring with a popular site would generally be a boon for traffic. They'd also form a very primitive kind of SEO since it would guaranteed you'd get at least 2 links to your site from other (hopefully) reputable sites.

Eventually, this form of associating sites fell out of popularity because search engines got really really good in the mid/late 2000s. Your new site could be crawled by the big search engines within days or hours of creation if you knew how to submit your site. Search relevance algorithms improved so much that the overhead of maintaining the webring (mostly removing dead sites) wasn't worth it.

But now, we're living in an age where Search quality has degraded a ton. Social media helped herald the death of quirky personal websites and has made it really hard to find human-generated content on the internet now. So... given that we're on the cusp of an informational dark age, let's try out some old methods that worked for a similarly dark age.

How things work in 2024

I have to admit I don't know very much about how webrings actually functioned on the back end during their heyday. There were platforms that provided them as a service, there were public implementations, etc. My hazy memory of the era involved pasting some code (usually HTML, maybe some JS) to a site and asking the owner to add you to the ring. I'm sure on the admin side there was a whole webapp that allowed for management of the list of sites, handling of moderation requests, etc.

But in 2024, I don't think there's a need to recreate all that overhead. In fact, I don't want to run any servers at all.

So, I found a very simple webring framework called onionring that has a very permissive license. It runs entirely on a handful of JavaScript files that are so simple even I could understand the code – and I don't know any JS at all.

The code essentially has one file that lists all the sites that all the client widgets pull. The widgets use JS to look at the page URL and does some regex to figure out which site the widget is appearing on. Then it determines the previous/next links based on that ordered list of sites. No tracking, no telemetry, no analytics, no shenanigans.

The only problem I needed to solve was how to host these files and manage everything, and I realized that GitHub pages would work just fine. In fact, letting everyone open pull requests against the main list would make management easier in the long run if people actually want to use this thing. Data people are luckily mostly familiar with GitHub.

Join the linked list

So if you're a human and write, however infrequently, or have a personal site or something that is somewhat related to working with data, consider putting a couple of lines of HTML into your site and join the ring. It's a very lightweight process and there's no formal quality bar – so long as whatever content is already there is relevant. I've actually put the widget in the footer of the newsletter site. It's sorta ugly there but that's as far as my coding/design skills allow me to go.

Things like this tend to work slowly because there's no automation involved. But I hope you'll help me make this a useful thing.


Standing offer: If you created something and would like me to review or share it w/ the data community — just email me by replying to the newsletter emails.

Guest posts: If you’re interested in writing something a data-related post to either show off work, share an experience, or need help coming up with a topic, please contact me. You don’t need any special credentials or credibility to do so.


About this newsletter

I’m Randy Au, Quantitative UX researcher, former data analyst, and general-purpose data and tech nerd. Counting Stuff is a weekly newsletter about the less-than-sexy aspects of data science, UX research and tech. With some excursions into other fun topics.

All photos/drawings used are taken/created by Randy unless otherwise credited.

  • randyau.com — Curated archive of evergreen posts. Under re-construction thanks to *waves at everything

Supporting the newsletter

All Tuesday posts to Counting Stuff are always free. The newsletter is self hosted, so support from subscribers is what makes everything possible. If you love the content, consider doing any of the following ways to support the newsletter: