Mastodon Is Bad (But It Might Be the Best We'll Get)

The Mastodon header logo: a stylized elephant head overlapping the m, and all letters lowercase

We've had our share of moments where it looked like Twitter might be unalived, either literally or effectively, and in each of those moments, one alternative emerged from the mists like the wooly pachyderm it chose as its mascot: Mastodon. And each time, I signed up for a (sometimes new) instance, looked around, and promptly forgot about it.

This time, with the purchase of Twitter by a billionaire fool who seems determined to stumble into totally destroying the business before he can hand it over to his right-wing buddies, the likelihood of needing a new place to hang our posts seems a lot higher. And once again, awaiting its moment, is Mastodon's fediverse. Maybe as a result of it all feeling far more real this time, people seem to be, like, actually using the service in large enough numbers that forgetting about it and going elsewhere isn't what happened.

Instead, this time, I find myself stressed out by it, and by what that stress means for my future on big, public social networks. Because the thing about Mastodon is that it's a mess in ways that make it a real problem to use. Unfortunately, it's also the only option on the table that doesn't seem like a hard no out of the gate.

A Brief Overview of the Fediverse

If you haven't used Mastodon, or if you have but aren't really sure how it's different than other Twitter clones, or why those differences matter, let's start with a brief, probably somewhat incorrect overview of it.

On the surface, Mastodon is, essentially, Twitter. There's a feed of posts, there's a box where you can post text and maybe an image or video, you can follow people or be followed by them, and you spend a lot of times checking your notifications to see if someone liked or replied to that joke that only you find funny. That's intentional: Mastodon's built to be a true Twitter alternative, which means a part of its appeal is working more or less like the bird site.

Under the hood, though, Mastodon is something very different, and the way those differences add up are the source of both its greatest strengths and biggest frustrations.

The first, and most key difference is that there is no single "Mastodon". While Twitter, like most other social networks, is a centralized space where everyone posts into (and reads from) the same big source, Mastodon is a Federation of Instances (though not entirely United) (I'll get to that soon). Anyone can spin up their own Mastodon instance, the way you would a Discord server, and in that state, the only people posting and reading those posts would be the people who joined said instance. The key to it all is that instances can "federate" with others, creating a patchwork of instances that allow people to follow and keep up with folks on other servers.

Again, we hit a point where it's almost essentially Twitter to a user who has stepped back just far enough not to think about the piping. You've got a wide world of accounts, and you can more or less keep up with all of them, regardless of which instance you made you home.

The key here is... almost.

All the Pieces Matter

If you listened to a friend and decided to join Mastodon, went to the home page, and clicked Create Account, you probably were hit by this page or something like this:

A screenshot of the Mastodon Servers website. At the top left, "Servers. Mastodon is not a single website. To use it, you need to make an account with a provider -- we call them servers -- that lets you connect with other people across Mastodon". The sidebar of the page lists regions you can filter servers down to, and the main body of the page has the top three servers where you can apply to an account,"

What's missing here? Maybe a description of what choosing a server means? What it will do to your experience? Whether you can move servers if you choose incorrectly? Literally anything about what this concept entails?

A core problem with Mastodon is that it wants to portray the illusion of the simplicity of a Twitter while also having made a bunch of decisions not to hide the complexity of its systems. This page gives the impression that you can click on one – any one! – of these servers, get roughly an equivalent experience, and never have to think about it again. It also gives a conflicting impression: that these servers are all distinct (look at that cute artwork!) and will affect your experience somehow.

Once you've gone through account creation, you're met with the same seemingly-simple-but-actually-perplexing mix of a straightforward facade over an interface that pushes Mastodon's system architecture directly into your face.

A screenshot of the Mastodon sidebar. From top to bottom: Home, Notifications, Explore, Local, Federated, Direct Messages

This mostly looks like the Twitter sidebar, but... wait, what's "Local" vs. "Federated"? How is that different from "Home"? And what about "Explore"?!

This is where the choices you make start to matter, and how they impact your experience of using Mastodon. They aren't the ones that'll really matter later, unfortunately, but once you beg a friend to explain all of this to you, it's when the underlying complexities of a federated social network start to hopefully make some sense. I say complexity without judgment, as you might see this complexity as a feature. But there it is either way: a lot to take in.

If you haven't asked a friend yet what this all means, I'll give a quick explanation, because it's going to matter soon when I talk about the potential problems we (both individually, and as a group) are going to face should we go all in on Mastodon. Home is a feed only of the people you follow; their Toots (take the time you need for a giggle if this is your first time seeing that) and the things they Boost (basically a retweet). Local is a feed of things only on your chosen instance server. If you signed up for mastodon.social, that Local feed is everything else happening there, in chronological order. Federated is... everything. Like, basically, if you had a Twitter view that was literally every single thing being tweeted in chronological order, that's basically this, across all connected Mastodon instances. Finally, Explore (which I'll admit I didn't understand until just now) is... I think the equivalent of trending topics and tags on Twitter, but trending only via the view of your local instance.

That Federated tab is, I think, the clearest example of where Mastodon's choices to show users the bare metal of their conceptual framework gets challenging. How is a normal user supposed to use that tab? It's massively overwhelming, updating too fast to keep up with, and essentially unfiltered. There are certainly use cases, but it's unlikely anyone just joining is going to know what they are, and yet there it is, in a primary position like it wants you to make it a part of your routine.

The thing that is usable and interesting is that Local tab, but this is where the implications of choice start hitting you. If you didn't choose the right instance, one of the potentially killer features of Mastodon – that you can be on a server with a topic or community you really vibe with and get a nice feed of just their stuff – is only useful if you understood what you were choosing in the first place.

But, okay, fine. You chose a server. You found people to follow. You figured out what all of this meant and you got onto an instnace you're interested in either by luck or choice. All should be well now, right? A little bit of complexity that you can ignore, a few weird choices, but nothing else can go wrong. Right?

Welllllllllll...

Remember that whole concept of Federation? It's not exactly a given, and the choices of the people who run both your instance and other instances you have nothing to do with could end up leading to big problems.

Defederation, Moderation, and Impermenance

Let's say someone created a Mastodon server, and the focus of that server was to be a place where all of the folks who used to use Gab could congregate. So, y'know, a server full of Nazis. And those Nazi Gabbers do what Nazi Gabbers do: organize harassment of anyone they hate, which is basically everyone. What do you do?

On Twitter, you'd block them and report their individual accounts, then hope you're in a rare period of Twitter moderation actually doing its job. It's not a great system, and one we've seen a couple dozen terrible failure modes from. Perhaps the single worst thing about a centralized social network is that you're at the mercy of that company's enforcement policy, when those policies are rarely on your behalf in the first place.

Mastodon has its own version of this: on any given instance, if crappy people have signed up and are causing problems, an admin can boot them off of that instance, the way the mods of a Discord server can do. They might go sign up for some other Discord, but they're off of that one. That's an implication of your choice of server: Not just what their code of conduct is, but how or whether it'll be enforced. For someone used to a centralized network, that you need to look more deeply into moderation to get the benefits of it is not well communicated.

The ability to protect from bad actors doesn't stop there, though, because you're also federated with a bunch of other instances that your own admins can't moderate. Because of this, it also has a tool called Defederation. Any individual Mastodon instance can decide, at any time, that it no longer wants to be connected to another server. Its users can't contact yours, and visa versa. No need to individually block. They're all cut off from the archipelago.

Cool, right? Mostly, yes, but like all things, at scale this gets weird in ways an average user may not understand until it's too late. Defederation is a choice of an individual instance, so if I'm on instance A, and my friend is on B, I might have an admin that cuts Gabserver off, but my friend might still be getting crap from them. That's another implication of your choice that you might not think to look for out of the gate: Will my admins protect me from bad actors on other instances? Blocking individuals is easy, but what's the policy on defederation? At what scale will they cut an instance off? How will you know what's going on as they decide?

It gets more complicted from there: an instance that isn't explicitly for bad actors, but one that's refusing to moderate or defederate from bad instances might in and of itself be a reason for servers with tighter codes of conduct to cut them off. What that means is you could be on an instance that seems, to you, to be totally normal, only to find yourself unable to see or follow a bunch of your friends without even knowing why.

This isn't a theoretical concern. The instance that was, for some time, considered close to the "official" instance (mastodon.social) is a server with exactly this problem. Its moderation policies are poor, the head of the server seems sympathetic-at-least to reactionaries, and other instances are considering defederating from a server that a lot of people joined thinking it was the default and normal option.

This is essentially what happened to me. I joined Mastodon.social because I couldn't figure out how to even choose from the other servers, and just wanted to see if I'd even like Mastodon. I was warned by friends that the above situation was going on, but even with that warning, where else to go didn't have a clear answer. I'm a fairly technical user, someone who's used almost every social appliance the internet has ever had, and even for me, I was feeling choice paralysis and anxiety over what using this the best way meant.

What does that mean for people who really do just want a place to see people they like make funny jokes or see if they really did just feel an earthquake or to check out the reaction to a presidential debate? How are they supposed to know what to do so they never have to think about this again?

They can't, or at least I don't see any way in the near future for Mastodon to be something a user can get on without thinking more deeply about than they do any of their other social networks. You can argue that this is good, that we take our technology for granted too often, and you may even be right. But since Mastodon itself isn't making the argument that thinking about this is good, or even giving you a clear way to think about it if you agree, it's unlikely users are going to until it's too late and the instance they're on gets swarmed by Nazis or cut off for reasons they don't even know how to look up.

I wish that was the end of the problems, but we have one more layer to this particular onion.

The Challenge of Locality

Looking at all of the above problems of whether a server is moderated well, if it will defederate the nazis, if you can trust the people running it... they all suggest that either finding the smallest possible server that most acutely meets your needs or running your own server would be best. That way you can trust the mods, you can trust the people local to you, and you have enough influence to cut off problems before they occur.

Unfortunately, amongst the many things neither Mastodon itself nor the Mastodon community is doing a good job of communicating is what it means to host an instance, and just how many avenues of liability and effort one opens by trying. No matter how local a local instance is, it's still effectively a social network in the eyes of the world. That means things like DMCA takedowns, civil liability, and law enforcement subpoenas are real problems you might need to deal with someday, especially if your server is for more than just your closest friends.

What happens if someone on your server does something that leads to real world harm? Something that isn't obvious harassment that you could have easily caught, but nonetheless leads to the suffering (or even death) of another person? Take liability out of it: is that something you want on your shoulders for the rest of your life? Would you even think of that as a possibility on your own, or know what steps to take to reduce the likelihood of that happening, before you created your own server? Because Mastodon isn't making sure you know before you start an instance, and neither is a large segment of its most vocal, techy fanbase that doesn't have to worry about these kinds of problems on a daily basis.

Even if you choose not to run a small server, but join one yourself, life isn't smooth sailing. A Mastodon instance is a server in every way: it can go down, it can get overwhelmed by traffic, it can stop running and never be turned back on again. A Mastodon instance is no more inherently permanent or stable than a self-hosted blog. Dozens of things can lead to it dying or becoming nigh-unusable, even if it never runs into the problems of defederation and moderation raised above.

You might choose the Right Instance only for it to die on you without warning, without any clear way to move to a new instance with your follower/ing list intact. Not to mention your posts. On top of all the other challenges of where to plant your flag, you also have to balance the need for trust in your mods with an instance that seems more likely than not to stick around.

How is anyone supposed to do that successfully by anything other than luck? I don't think they can be expected to, and ultimately, that's a key weakness to Mastodon that I'm not sure how we overcome enough to trust in it as a service.

And Yet...

...is there anything better?

The answer, very likely, is no. Twitter had no direct competitor, so the only options are nascent services spinning themselves up as quickly as possible to take advantage of the damage Musk is causing. Hive, Post, Cohost... all services you could only charitably call in beta that haven't proven any more likelihood to know what they're doing than your most niche of Mastodon instances. Worse, these are mostly venture capital-backed, and all that that entails.

The victory scenario for any of those apps is to become most or all of the things that made Twitter such a mess, with no guarantee it'll replicate the parts of it that made it worth enduring for so many of us. One way or another, choosing to be on one of the commercial options means agreeing to be the product of a company we have to trust even less than Twitter until proven otherwise.

Mastodon, at least, is insulated from the corporate issues that have plagued modern social media networks. Its success would bring in new problems, but a lot of us are in a place where new problems would at least be refreshing. There's some control we have over Mastodon's future, while we have none over the others. If we're going to enter into a contract with a service we barely understand the implications of, I'd rather a16z not be on the other end of that deal.

Which is why it's going to be on Mastodon to make some hard choices in the coming months. How is it going to ensure users know enough about the choices they're making so they don't regret them later? Are there ways to make it easier for users to navigate the storms that come through unexpected defederation, server loss, legal attacks, and whatever else we can't see coming? What options does it have to make using Mastodon not feel like reading stereo instructions until someone kindly helps you through knowing what you don't need to care about?

Mastodon frustrates me a lot. I'm cranky when I use it, and crankier when something goes wrong and I can't. I also would rather it succeed than any of the other options, even though it doesn't seem all that likely to me. I hope I'm wrong.