Autopergamene
Fediverse and the new era of social networks

The era of social networks
I consider myself a child of the internet, in that I discovered it towards the end of my childhood and spent most of my time there during my formative years instead of, you know, outside. Moving from AIM, to forums and IRC – where I met my wife! And then later on as the era of social networks arrived, to Facebook, Twitter and Reddit (yes I skipped a few). Since it began, the Internet has organically gone through many phases as people found new ways to interact and share, and the tools and technologies gradually evolved to meet those needs. And this was a direct result of that, people needing new ways to interact that weren’t possible before. When the big social networks came, it felt amazing at the time. Despite my love for IRC, it felt somehow revolutionary to be have things be centralized, to have everybody on the same app, talking together in an endless river of content and interactions, like borders and hierarchies didn’t matter. But then the years passed, and more and more we started to see the cracks in the paint. We started to see how harmful these giants could be, and how having them under the control of private corporations was having direct lasting consequences on societies throughout the world, and on people themselves. We started to see how little the users of these platforms actually mattered to the people behind them, sometimes even actually harming and extremizing them in the process through biased algorithms, targeted advertising and filter bubbles, just because hate drove more traffic than love.
New standards for new uses
When the winds started to shift, once again people on the internet sought new solutions that didn’t have the same issues. There were various experiments throughout the last decades to create decentralized social networks and protocols (like diaspora*), and from those emerged applications that still live today like Mastodon. After some time letting those third party standards evolve, in 2018, a W3C working group was formed called the Social Web whose goal was to unify them and make them officially part of the platform. Something open, distributed and evolving, that would put people first. This working group came up with a couple of standards for various aspects, but the one we’ll take an interest in today is ActivityPub, itself built upon various past ideas.
Slowly and behind the scenes, while the big social networks kept growing, ActivityPub started being adopted by these distributed social networks on the fringe, including Mastodon, connecting more and more of them together. This shaped into a network of different applications capable of communicating and interacting with one another seamlessly, that we now call the Fediverse (for federated universe).
What even is the Fediverse
While I’m an ardent proponent of the open and distributed nature of the Internet, it took me forever to actually investigate these solutions properly. Like a lot of people I can be reticent to change until forced otherwise, and the more the big social networks grew, the more also did their value and attraction. It became hard to leave Twitter or Reddit and people are regularly praised for taking breaks off it because we collectively know that they aren’t entirely healthy. It didn’t help that the Fediverse is complex in nature to grasp after years of monolithic apps, and every time I tried in the past I failed to “get it” and abandoned.
While I left Facebook years ago, I only recently tried to leave Twitter and Reddit again as concerns over their management grew and became more apparent. It really made me understand that there was no coming back, that you can’t wrestle control of a walled garden out of its gardener’s hands, and that these platforms were never going back to the nice face they had put on when first gaining traction.
So once again I started to look into the Fediverse and now that I understand it more I’m amazed by it. What really helped me grasp how it works, is to actually compare it to similar technologies of before the social network era, like emails. Communication by email happens across millions of servers around the world, and people use emails through a wide variety of clients with differing capabilities. You can write an email in Apple Mail, send it through GMail’s server to someone on a Hotmail server somewhere that will then read it in Microsoft Outlook. The interface is separate from the server is separate from the content. The Fediverse works the same way: I can view a given thread from a French server running Lemmy (a Reddit-like client) while someone somewhere will comment on it from Mastodon on a server dedicated to technology (for example). Here again: the interface is separate from the server is separate from the content. It’s like if you could tweet a comment on a Reddit thread, or see Tiktok videos on Youtube. Which is a hard paradigm to readapt yourself to since we’ve been formatted over the years to think of content as being intrinsic to the platforms. You don’t read a thread, you read a Reddit thread, and if you want Twitter to see it you post a link or a replica of it, but they become two separate pieces of content with two different comment chains, which isn’t the case in the Fediverse. Content exists outside of platforms, just like emails exist virtually. You can delete an email from a server, but the person at the other end still has it, because the email is not its local cache on the email server, it is the data itself.
Joining the Fediverse
With all that in mind, it can be extremely difficult to join the Fediverse, not because of a high barrier of entry, but because there are thousands of entries with no barriers and no instructions on which to pass through. As mentioned before, using the Fediverse means making a choice on several facets of it depending on what suits you best, and I feel that it helps to process those separately. While this is the part that most people struggle with, it’s important to remember that because of the very nature of the Fediverse, these choices have actually little impact. You can change software and client and such and still access the same content, so don’t stress it out too much!
-
First, you need to decide on a style of social networking: how you want to consume content? Are you more of a fan of microblogging like Twitter? Do you prefer networking between communities like on Reddit? Or just a stream of images like on Instragram with no text? Several Fediverse applications answer to different needs and design patterns, so before you pick one you need to know what you’re looking for. In my case I’ve always been nostalgic of the forum era which is why Reddit spoke to me, so I settled on that.
-
Then, you need to pick an application that fits that need. For my use case there were several options available, the main ones being hyped at the moment being Lemmy and KBin. The application layer is the backbone that makes things run, it’s the logic that is going to sync content in and out of the Fediverse. There’s others than these two but at least you can’t go wrong picking either as both are solid for this use case.
-
Once you have your application picked, you need to pick a server (or instance). This is a subgroup within the larger Fediverse, with its own rules and principles. When you create an account on an instance, you agree to abide by its rule when interacting with the content both within and outside, since you’ll answer to the admins of the instance you chose in addition to the ones of the communities you interact with. Some instances are themed around different languages, some around different ideas of what is free speech, some around a given theme or media. But ultimately all instances talk to one another so don’t stress it out too much, you will see the same content regardless of where you sign up. You can even have multiple accounts on multiple instances. And it’s even recommended to not go for the instances with the most users since you’ll make it reach capacity sooner for nothing. One of the main benefits of the Fediverse is its distributed nature: the load is shared amongst all instances so it’s better to pick a cool little instance than to join the Big One™ of the moment. For Lemmy for example you can use Lemmyverse to browse and filter instances.
-
Once you’ve found an instance that seems to match you, and you’ve created an account, comes the time to subscribe (or follow) to content you’d like to see. This is when comes into play the concepts of scopes. Just like viewing your regular social network timeline through different prisms, Fediverse content can be explored in gradually broader ways: 1. First comes your subscribed content, those are the communities you’ve joined, the people you’ve followed, etc. Those are the content sources you’ve explicitly vetted and that will constitute your *home *no matter the app. 2. Then comes local content, this is the content of the instance you have picked. As said before some instances are themed around common things, for example if you’re joined a french instance of Lemmy, you can browse Local and see a diverse array of french communities and people, cities, local news etc. If you’ve joined an instance around tech maybe your Local is tech news and open source discussions and such. Or maybe you’ve joined a generic instance and Local is just a random assortment of things. 3. Next is the federated content, that is content of other instances linked to yours. Each instance can just like you decide to subscribe or block other instances, which creates a local network of instances usually aligned on the same principles. 4. Finally comes the global content which will be, you guessed it, EVERYTHING across the Fediverse. Keep in mind of course that while these distinctions and different layers can seem redundant, the standard was thought out to fill the various needs of people using social networks very differently. It’s possible that you’ll spend your time maybe browsing a few of these facets or only one. I know for example that I’ve always been a fan of Reddit’s All view so I’m not that interested in local/federated content, because I’m here for randomness more than curation. Now because everything is distributed, you might have multiple communities that fill the same niche but on different instances. For example both @technology@beehaw.org and @technology@lemmy.ml are about the same topic, so which would you subscribe to? And my answer so far is both! It doesn’t matter, they’ll pop in your feed regardless and over time perhaps some will merge with others, or not, it’s okay! Content is content, and as long as it’s not shielded from the rest, there is no downside to having multiple communities around the same things. In fact if you look at Reddit it was actually very much the case that there existed a lot of duplicate communities with different rules or languages. Just like you had
/r/AmITheAsshole
in english,/r/suisjeletroudeballe
in french and/r/True_amitheasshole
for people who felt the morals of the main one didn’t align with theirs. The same is true for the Fediverse, but it instead becomes much easier to “group” communities by instance or ignore one altogether. -
Finally, and optionally, you can pick a different client than your application’s default one. For example if you’ve picked a Mastodon instance you can use Elk instead, or if you want to check your Lemmy instance from Android you can use Jerboa and so on. This is the same as for usual social networks, just third party clients for desktop and/or mobile that present the same thing slightly differently or with power tools built in.
Interactions within the Fediverse
As I said before, content in the Fediverse is global and platform agnostic. Which means that you need a way to refer to things in a canonical agnostic way as well. For this on the Fediverse you’ll often see identifiers constructed like @foo@bar
(or !foo@bar
they’re the same) which is very similar to the way email addresses are constructed. So for example, @technology@
lemmy.ml
points to the technology
community on the lemmy.ml
instance, just like @anahkiasen@blahaj.lemmy.zone
refers to my account on the Blahaj instance. For the actual content it gets trickier since you rarely interact with the canonical version of a thread/message but with its replica on your own instance.
Let’s take an example of a thread posted on the lemmy.ml instance. I can view it in its original context as a post directly on that instance, where it’ll be presented to me as read only since I have no account there. Or I can view it in my own instance where I can comment and upvote and stuff. All I need to do is copy paste its URL in my instance’s search and I’ll see the equivalent thread there. But I could also paste the link in my Mastodon instance’s search and also find it there. All three are the same piece of content, with the same comments and upvotes, seen through three different lenses and all synced together in almost real time. And I could interact with that content from all three standpoints without other users having to know where I commented from.
That’s why I say it’s ultimately not worth it to stress it out about where you land, what app you use, etc. While not all of the applications support import/export and instance migration yet, ultimately most will and there is no wrong choice that can be made. The content will always be there, ready to access no matter how and when you decide to.
Growing pains
Of course because of the nature of how the Fediverse works, it relies even more on open source efforts than your standard social network. If you’re migrating or at least testing the waters, don’t discourage yourself too much if everything is not yet at feature parity. You’ll need to give time for people writing these softwares to get there, or through the beauty of FOSS you can of course contribute directly yourself. If for example you use kbin as your application layer, well it’s written in Laravel! So your favorite feature is only a PR away.
Similarly, while the distributed nature of the Fediverse means each server has less load to handle, it also means you need a lot of smaller servers. And people to admin those, and keep them online, and such, once again for the most part for free unless they have donations setup. This is why I stressed out it’s important to not flock to the biggest instances, because you’ll only hurt the platform as a whole. Basically with a whole new paradigm of social media, we need to once again reason about the best ways to make it work. Because advertisement is not going to be the financial source of this era of social networks, just like it’s barely holding together the last one.
Another thing that needs to be thought out is moderation, one of the other big wounds that weakened the last era of social networks. This is where I think the model of “together but separate” that powers the Fediverse will be its saving grace. With the ability for instances to follow/block each other, it’ll be easier for bad actors to be concentrated into instances where the rules fit them, instead of mingling with everybody else by default. Of course nothing prevents bad actors from causing havoc on other instances, but as the tools evolve to account for federation, so will modtools, and it’s likely that eventually some of the moderation will also be federated. So that a bad actor coming in an instance to spam would get banned, and that ban would be preemptively passed along to other instances for them to decide wether to also ban. There are also already initiatives to list bad instances, so that when more official tools come in, it’s easier to shield particular communities from others.
I don’t have the solution myself to the problem of internet toxicity of course, but I’m counting on global open source efforts and W3C standards more than on profit driven closed garden on that one. Each time someone migrates to the Fediverse, they bring traffic and visibility that in turn help its growth. And while growth is not an end goal in itself, it’s a necessary step here to overtake the current social networks.
Another big deciding factor in the future of ActivityPub is how it handles growth and more profit-oriented actors. Meta for example is going to release an ActivityPub social network soon, and it’s going to be interesting to see if they bastardize the concept or hide the federation aspect away, etc. The mood might also radically change, since currently the audience of the Fediverse is still somewhat small enough that people are all nice to each other, but it’ll be a test to see how big growth spurs affect the communities and how the tools evolve in reaction.
Conclusion
So come on! Join the Fediverse, give it a try. You don’t have to quit the other social networks at once but you can get familiarized already, look around, it does no harm. Maybe improve something if you know how to code. There are applications for every type of content, and a lot of websites in place to help you discover and curate content, so I’ll let you search around.
You can start maybe with fediverse.party which documents apps and tools around the fediverse and what niche they fill, but it’s far from being the only resource so it’s hard to link to the One Best Page™ that will help you join. Ultimately like all newish technologies, the UX and user friendliness will come gradually. But I hope I peaked your interest and that I’ll see you around!