Federation: The Future of the Internet?
Let's talk about Elon and Mastodon.
Hey all! Long time, no see! I know it's been a bit since the last post. As expected, my semester ramped up in difficulty and I've been swamped with work for a few weeks now. I'm glad to report that midterms have passed and I finally have more time to reallocate to the blog!
Today, I want to talk about some current events, namely Elon’s acquisition of Twitter that actually went through a little over a week ago and is sweeping the internet. For those unaware, surprise! Musk’s $44bn bid for twitter was accepted, and he is now the CEO of the platform.
That’s a little scary. Objectively speaking, Musk’s overpriced bluff led to him buying the company for way more than it’s worth. For him to break even, he’ll have to increase profit margins by a significant amount, a challenge made even harder by the fact that Musk’s “free speech” narrative led to advertisers leaving in troves. This leaves one group of people stuck holding the bag: Users.
None of this is speculation, by the way. Elon himself confirmed that “Twitter cannot rely entirely on advertisers" after suggesting that verification, the previously free system created to combat impersonators, become a paid service in the near future.
Many users have already started to jump ship in anticipation of a rapid decline of quality on the platform. Popular video game reporter Nibellion posted a final message on his account on October 30th, stating that he was stepping away from the platform and reporting as a whole. As shown above, Stephen King threatened to leave if he is eventually forced to pay for previously-free services on the platform. Several other content creators, like electrical engineer Strange Parts, have set up backup accounts on alternative platforms like Mastodon. Let’s also not forget all of the aforementioned advertisers leaving as well.
This isn’t the first time that mass backlash has threatened to sink an entire digital platform. Almost a year ago to the day, Discord CEO Jason Citron teased a web3 integration that would supposedly be coming to the platform. This impromptu announcement was met with large amounts of protest, people cancelling their subscriptions to the platform, and a flood of negative posts on their feedback forums. Many users suggested swapping to other platforms, like Rocket.Chat, Signal, or the Matrix network. Just two days later, Citron released a follow up statement which said that “[they had] no current plans to ship this internal concept” and a few days later they seemingly abandoned the idea.
One common thread between both of these events that I find interesting is how the most popular alternatives for each platform both used a radically different architecture than most platforms nowadays: they centered around decentralization and this new concept of federation. That raises one major question I’d like to dig into: What exactly is federation, and why does it make these platforms so appealing?
Federation and ActivityPub
First off: No, decentralization in this case does not refer to the use of cryptocurrencies, blockchains, or web3. I know the term has been commandeered by tech bros and crypto traders as of late, but federation uses a different, classical form of decentralization that doesn’t result in large amounts of wasted computation and ecological destruction.
Federation is the idea that you can have several, individually run servers that communicate with one another using a common standard. Each node can be configured to enforce a certain set of rules or outright block communications with other nodes they might find problematic. Lastly, users from one server are able to interact with users on any other server within the federation. This conglomerate of interconnected but individually managed servers is called the Fediverse.
While federation is a resurging concept, it isn’t new by any means. One of the best examples of federation has been around for decades now: Email. Anyone can spin up an email server on their own domain, then send mail to any other user on the internet, regardless of what server their email is hosted on. That’s because under the hood, all email servers use a tried-and-true federated communication standard called SMTP. Any server that is able to understand and communicate in SMTP can exchange information with any other server in the network. The result is a technology that allows users from Gmail to send messages to users on Outlook or Yahoo (and vice-versa!) with no issue.
If this idea of federation works for email, then why couldn’t it be applied to other communication applications, like texting or social media? Over the past decade or so, many developers and computer scientists have asked themselves this question, and began developing new standards that aim to tackle this issue. The most popular Twitter alternative, Mastodon, is built off of a relatively new W3C standard called ActivityPub. Discord’s (And Slack/IRC’s) federated alternative is called Matrix, a standard maintained by the organization of the same name.
So what are the perks of federation? What are the drawbacks? If it’s so cool and new, then why isn’t everyone using it already? Let’s discuss.
The Perks
When I first sat down to draft up the outline for this article, I had a pretty hard time coming up with a comprehensive list of both the positives and negatives of federation. Most of the points here revolve around ActivityPub servers, as those are the ones I’ve tinkered with the most as of late, and that’s the network people will be looking into if Twitter crashes and burns.
The first and probably largest perk of federation is the fact that— by design— communities are smaller and more tight-knit. When you sign up for Mastodon, you start by picking a home server. Each server has its own rules, history, and community, so your home server should be the one that you feel the most comfortable with. You’ll find lots of communities on Mastodon. There are servers for people with similar identities, ideology, interests, and more! You can take a look at a list of many public servers here.
Servers are usually moderated by a team of people who not only enforce the server’s rules, but also have the ability to blacklist communications with other servers. Any user can report content from anywhere the Fediverse, and the filed report is sent to your home server’s moderation team. They then have the ability to silence or outright block communications with the problematic server. This essentially makes each server autonomous, granting the server’s collective the ability to decide who and what they want to interact with on the Fediverse.
This concept is pretty interesting to me, as it seemingly entirely eliminates the effectivity of what I’m calling “culture clash,” or the fight for dominance of norms in the general discourse. Well, phrasing it like that makes it sound deeper than it really is. Let me provide an example of culture clash that I believe could be mitigated by means of a federated platform.
As a kid, I was diagnosed as being on the spectrum; only a mild amount, but still enough that communication was hard for me. I didn’t realize that communication depends on so many details which I wasn’t able to pick up on until I was older. You know how texting is a pretty monotone medium, where a sarcastic “sure” and an affirmative “sure” can be written the exact same way? Imagine not being able to differentiate between the two, but all of the time, in both face-to-face and phone communications. That’s how I went about talking as a kid.
I think I found some solace on the internet because communicating with other people was a challenge regardless of whether it was in-person or text-based, so why not just talk with the people who understood me better? At least on the internet, we could use what are called tone indicators to explicitly tell the other person what the tone of the message was, whether it be sarcasm, surprise, seriousness, or some other tone. These indicators actually made talking in text easier than talking in person, so the internet kind of became my home.
As I’ve gotten older, my communication skills have grown with me, so I no longer need to attach these indicators with every message I send. You’ll rarely find me using them nowadays, except in the rare case that I want to make the fact that something is sarcastic painfully clear. Tone indicators are a tool to useful help a very specific group of people, neurodivergent people, participate in the general discourse. But using them isn’t a requirement to be on the internet.
Nowadays I see that there’s a new generation of people who have thought that it’s a good idea to make their neurodivergence a personality trait, which is a… questionable decision, but one that I can understand if you’re trying to meet other people who identify and think similarly to you. On the other hand, there’s a select subsection of those people who are trying to strong-arm tone indicators into the general discourse, sometimes accusing people who don’t use them as being inconsiderate, or in extreme cases even calling them ableist.
This is that culture clash that I’m talking about. Sure, there’s a vocal minority within every group, and culture clash behavior isn’t exclusive to neurodivergents. It can be seen in many fields ranging from politics to fan culture, and between groups of different age ranges or nationalities. Let me be very clear: no-one’s a villain here. Not using tone indicators is just a minor oversight, a difference in habit. It is not intentional inconsideration, and nowhere near ableism.
On a federated network, the chance of this argument happening are much less than on a centralized network. Neurodivergence-focused servers could make their own little sub-network within their corner of the Fediverse, and they’d then have the ability to choose who they talk to and halt communications with any servers that they deem unfriendly. On the other end, servers that are blessed with the misfortune of having to deal with “culture clash crusaders” could just block the user’s home server and call it a day.
It's like talking to your friends and their friends versus talking to an entire city. When you’re just chatting with friends, you all have common interests, culture, and experiences that bring you together. When you talk to an entire city, you’re able to convey your message to your friends, but you’re also talking to a lot of other people who might not understand or agree with what you’re saying. This can lead to a lot of pointless arguments and man-hours lost to people composing meaningless witty responses. So, why subject your thoughts and conversations to the judgement of a bunch of people you’ll probably never see again? Why not just limit your audience to your friends and their friends?
You could argue that setting your account to private on current social networks is an easier solution to this issue, but I would rebut with the claim that the two solutions are not identical. With private accounts, you’re restricting the people who can comment on your posts to people that you’ve explicitly approved. That’s the equivalent of just talking with your immediate friends. In the Fediverse, the way the system is structured automatically restricts the outreach of your posts to just the people and servers you interact with on a normal basis. This allows your friends the chance to reply, but also other people in tune with your communities as well. This is the equivalent of talking to friends of friends: a middle-ground level of outreach that allows you to meet and talk with new people similar to you and your friends, without risking interactions with hecklers or haters from hostile communities. This is part of the beauty of the Fediverse that’s very hard to find anywhere else, except for traditional human interactions.
The second reason that I find the Fediverse very interesting, if I can nerd out for a second, is the fact that it’s open-source and very dynamic. The only thing that’s constant with the Fediverse is the ActivityPub standard, but even that can be changed with a revision from the W3C. Say you don’t like how Mastodon looks. Just make your own app that implements ActivityPub and does whatever you want. I’ve seen some people complain that the Mastodon doesn’t play well with certain accessibility features like screen readers, but the beauty of open-source means that anyone with access to a computer and some technical know-how can make an app that does work with those features. The sky is the limit here!
In fact, I feel it’s important to note that the Fediverse isn’t just restricted to microblogging. Many forms of social media are able to coexist on the network. PeerTube is another media sharing service similar to YouTube, which allows users to share videos they make. FunkWhale is a federated Soundcloud alternative that allows users to share music or audio snippets. Plume is a macroblogging service, similar to the one that I’m using to host this article right now, that communicates with the rest of the Fediverse. Best part: because these services all implement ActivityPub, they all mesh with one another.
Imagine being able to scroll your feed and not only see your tweets, but also new posts from your YouTube subscriptions, favorite blogs, subreddits, and more, all in one place. That’s the end goal of the ActivityPub network. It aims to be your one stop shop, not because some algorithm is vying for every free second you have, but because it is designed to be open and work with as many platforms as possible.
Also, did I mention that there are no advertisements? Mastodon and ActivityPub proudly don’t support ads, which is awesome from both end-user experience and privacy standpoints!
So that’s the plus side of Federated social media! It allows for more granular control over who you interact with, combats culture clash by design, and aims to become your one-stop shop for interacting with the internet. It’s this giant web of small communities interacting in a means that is more natural and more human than the centralized networks that have been perverted by corporate entities over the past decade or so.
Of course, that’s not to say that federation is the perfect social networking solution; every rose has its thorns, after all. How would a mass transition to such a network go? What hurdles might exist that would make it hard to move to, and what differences might it have with current solutions that would cause users to be unenthused?
The Criticisms
I’ll start the criticisms section by addressing the elephant in the room. Each time I asked my friends for their thoughts on the matter, the first point on their list of questions was always the same: “If you’re allowed to curate your network, wouldn’t your feed just end up being one giant echo chamber?”
I don’t have a proper rebuttal and I also don’t think it’s incorrect. Because your circle of friends gets to select who they wish to speak to, and also who they don’t speak with, it does end up creating a bit of an echo chamber. But when I discussed this with two of my close friends, one of them suggested the idea that maybe it isn’t too different from current social networks anyways.
I mean, think about it: Modern algorithms— like Twitter’s— look at the people and topics that you’re following or commonly like, then use that information to feed you even more content that you might like. If you’re avid on the block and mute buttons, then you can also block out pretty much everything that doesn’t fit into that picture. The result of combining these two points? Just another flavor of echo chamber. So, is Mastodon really creating a new issue here? You decide.
Let’s circle back to the theoretical migration idea. Say Twitter were to go under tomorrow, and that everyone migrated to Mastodon or some other Microblog on the ActivityPub network. How would such a migration go?
Before we go any further, I think it would be nice to do some analysis to see what the current state of the network is. Mastodon is a relatively new platform, but it’s also been around long enough to have several established communities. Would Mastodon in its current form be welcoming and able to support this mass transition of users? Let’s see who's already there.
To do this, I downloaded a list of all of the active servers on the aforementioned public server listing, and then ran some code to analyze the dataset and count how many times certain words or phrases would appear in server descriptions. I’ve published the Python code I used to do this analysis on GitHub.
Now yes, I am aware that this is not a foolproof means of getting an overview of the network. First off, there is probably some selection bias because I picked the search terms. There were also several terms that I could not search for due to technical reasons. I searched for the political term “left” but not “right” because many progressive servers mentioned “human rights” in their descriptions which led to false positives. Also, the listing I have is most certainly incomplete; I have a hunch that right-leaning servers don’t want to be listed publicly. There is definitely a better way to analyze the network than what I did, but I’ll leave that work up to the data scientists and statisticians reading this.
Regardless, this is what I found:
Of the 1119 active servers on the listing, only 680 of them had information attached to them. Of those, my most frequent hit was “general,” which is… not that surprising. Following that, we have “tech” and a three-way tie between “software”, “privacy”, and “game”. From this data, we can conclude one thing pretty easily. The network as it stands is very technology focused, and techy terms appear a lot more frequently than others. Is there a reason for this correlation?
Here's my leading hypothesis as of now: Each server needs at least one tech-savvy user to front the capital and time it takes to host and maintain a server, therefore each server has at least one user that is interested or invested in technology-related subjects. If this is true, then it makes sense that those topics would be some of the most popular on the network. This raises the question, if only techies are here right now, how easy would it be for a non-technical group to join the network?
...Not very easy, at least in the way we would want. Not every group has someone willing to spend all of the time and money it takes to rent a server, configure it with Mastodon, and maintain it. It's very much easier for them to just pick another popular platform that already exists and move over there. But let's say they were dead set on moving to Mastodon, so they just decide to sign up for someone else’s server, like the popular Mastodon.Social server. They're officially a part of the network now, but we’re also back to the issue of having one central server control most of the network.
Okay, let’s also hypothetically say that the barrier for entry wasn’t so steep, and that in the future, anyone could spin up a Mastodon server as fast as they could spin up a Discord server or subreddit nowadays. There are already services aiming to tackle this issue, like Masto.Host, which allows you to pay a monthly fee for their own server. Then the issue becomes even more simple: Most people just don’t want to pay to use social media!
For a prime example, just look back at the event that sparked this entire conversation. Twitter is now charging $8 a month for verification, a previously-free feature that many high-profile users would call essential. The response? Outrage! Mass exodus!
This kind of leads us into a different topic that also needs to be discussed. Servers are expensive to run! For a good example just look at Twitter. They're hemmoraging money at the moment, losing over $4 million a day, supposedly because operating costs are just so damn expensive. Their infrastructure team was already instructed to cut back on cloud spending in an attempt to lower that amount by $3 million. That's a lot of money!
The only reason that most platforms nowadays stay afloat is because they have alternate revenue streams like advertisements, sponsorships, microtransactions, or optional subscription services. (e.g., Sponsored posts, Reddit Coins, Discord Nitro) Notably, only one of those sources doesn’t involve users giving money to the hosts.
It’s here that I’ll interject with a bit of advice my dad told me as a kid: “There are no such thing as free services. You either pay for the service, or you are the service.” There’s an unholy amount of money in targeted advertisement and information gathering, and on a platform that has “privacy” as one of its top 5 frequent topics, I think ads would be a pretty hard sell.
Maybe the mass migration would change that sentiment, and the desire for a free network would begin to overrule the desire for a private one. That's a situation that could very well happen, but as of right now probably won't. So how would a giant Mastodon platform manage to keep the lights on? Patreon, maybe? Your guess is as good as mine.
At this point in the article, we've talked about enough hypotheticals to be considered borderline deusional, so we might as well keep going. Let's say that Mastodon's dev team has a change of heart and starts allowing ads on a per-instance basis using Stripe or something as the payment processor. Would advertisers and social media departments even try to work on Mastodon?
We spoke earlier about Mastodon having this middle-ground level of outreach, and it's pretty easy to see how this would hurt advertisers. Maybe banner ads would work, but promoted posts? Two things. First, there are countless servers on the Fediverse; reaching all of them is a near-impossible challenge. Second, any server that doesn’t like the company can just ban the account or block their home server. Mass outreach just doesn't work on a platform that wasn't designed for it.
In fact, it might be worthwhile to take a step back and look at one of the main factors that make or break these social media campaigns: Virality.
Everyone and their grandmother has heard about viral videos at this point, and it's a major factor as to why people come to social media in the first place. Any user or brand can post something funny and become a niche internet microcelebrity for a day or two. How, on a network where your posts are intended to reach only as far as your extended friends, does virality even work?
Mastodon does have a built-in trends feature that looks at what topics are being posted about, but it only considers the servers you communicate with. It doesn’t properly reflect the trends of entire network. You can easily go viral within your circle, or maybe circles once or twice removed from yours, but to go viral on the entire Fediverse? I don’t think that’s even possible.
So, would a social network that removes one of the core tenets of the internet and has little to no sources of income even have a chance at succeeding? I don’t know. I really don’t.
The Conclusion (Or Lack Thereof)
Mastodon— and by extension, the topic of federation as a whole— is one of those topics where I could sit down for months, just thinking and theory crafting about it, and I would still end up uncertain about its future when I'm done. It’s one of those social experiments where no-one can predict what will happen with it until it actually happens.
Federation does encourage a more natural way of communicating, I think. Revisiting the analogy of talking to friends vs talking the entire city, I think more personal connections and smaller circles are a good thing. But it definitely doesn’t come without its drawbacks, like the concern for echo chambers. And then there’s the whole “who’s going to foot the bill” question that I don’t think anyone has an answer for.
There are several other arguments I’ve entertained while writing this but exempted them for the sake of brevity. One person I consulted suggested taking Twitter and converting it into a public service. Obviously, having the government own the public discourse is a bad idea unchecked. Is Mastodon a better solution? If so, who would run the servers? Cities and states or private entities? Maybe a mixture of all three? Is this even a good idea? I leave all of these questions unanswered and as an exercise for the reader.
I’ve also entertained the idea that maybe federation's drastic change of pace is a good thing for the general public. Perhaps virality and connectivity has done more harm than good in our culture and swapping to a more personal network like Mastodon would do everyone a favor. It would decrease the amount of predatory ads we see and brands masquerading as your funny internet friend. But maybe it also makes social media lose the enamor that helped make it what it is in the first place.
I guess it depends on what you want out of the internet, at the end of the day.
At the start of this paper I was a stark advocate for federation purely from a theoretical standpoint, but after analyzing it in greater detail, I feel like I'm left with more questions than answers. Are you signed up for Mastodon or Matrix? If not, do you plan on signing up eventually? Do you think that a federated social network would be good for the public, and if so, how would you go about bringing it to fruition? Are there any points that I missed? I’d very much like to continue discussing this topic further, so I implore you to leave your thoughts in the comments.
That's all I've got for now. I'm gonna go back to hanging out with the stray cats that chill on my back porch. Have a good one, and Go Noles!
I’d like to thank my friends Nick, Maya (@mayartist_), and Noah (Suspect3) plus my partner Bentley (@bentley.maddox) for helping me throughout the process of writing this article. They really helped me take my thoughts from a super scattered outline and convert it into what you just read. They’re all really cool people, so go check out their links!