14th Nov 2022

Protecting Open Ecosystems such as Mastodon from Centralisation

Mastodon is entirely open source, built on open standards, and is completely distributed with no central control. No one owns it, it's been tried and tested over years. It works, we're done! :confetti:

Well, no.

What came before

Email was all of that. Enter Gmail and time - now if you want to be sure your email's get to who they should, you have to make sure you jump through any hoops Google say you should, or else forget it - your email won't get to Gmail users. Gmail is the dominant email provider. So they largely control the ecosystem.

Browsers were all of that. Enter Microsoft, Apple, Google and time - today the vast majority of browsers are powered by the Chromium engine - the de-facto standard, which is largely controlled by Google. Mozilla, the open source poster-child has in all practical ways collapsed and failed. Safari uses a custom variant of the far less popular WebKit engine, but outside of iOS webkit is essentially as dead as Firefox. Browsers are beholden to one or two Big Tech companies, who can more-or-less do what they like. So they largely control the ecosystem.

Git was all of that. Enter GitHub and time - now a ton of people don't even know that GIT is not GitHub, or don't care about the distinction. You can still self host GIT and there are other providers; but say "GIT" and most people think and use GitHub, along with all its closed-source additions and embellishments - it is the dominant GIT provider. So they largely control the ecosystem.

Podcasts were all of that. Enter Spotify and time - now podcast shows are being drawn into "Spotify exclusives", a closed Spotify owned entity hijacking open tech; slowly cannibalising open podcasts by eating the audience and ad revenue. Spotify is in the process of becoming the dominant podcast provider. Soon they'll largely control the system.

Being open source, built on standards, and distributed, is not defence against centralisation or capitalist take-overs. The tech and philosophy alone won't save an open ecosystem from efforts to centralise it.

Where Mastodon is now

Mastodon is not new. It's been around, actively developed and used, for years. It's evolved very well for the people who've been building and using it all that time - those open-source, left-leaning, open-minded, technology aware people. It's been tried and tested by and for those people, even resisting efforts by right-wing bad-actors to invade the space, like when Gab, the white-supremacist movement tried that, became the largest node in the fediverse, and promptly became isolated. Thankfully if you join Mastodon now, it's very unlikely you'll see anything of Gab or Truth Social - the right-wing instances that are hugely at odds with the majority of the Fediverse. The system as it stands right now largely works. The ability to create and/or join an Instance with rules and members that suit your worldview has - so far - stood up to the test of real-world use.

However...

Mastodon is experiencing a huge influx of users as people abandon a Musk controlled Twitter.

This makes Mastodon of interest to companies wanting to make money. Now, the pressure begins, and a test unlike anything Mastodon has seen before is coming.

The threat to open ecosystems like Mastodon

The threat to open ecosystems like Mastodon is what people outside of the community do when it the ecosystem hits critical mass. That's the trigger. And Mastodon has now been noticed by people outside of the existing "traditional" user base. There are going to be venture capitalists with money to burn, tech savvy engineers and business people capable of doing the work, and opportunities to begin the centralisation of control. Those efforts start now.

This is exactly what happened with browsers, email, GIT, podcasting, and I'm sure another handful of examples I've not thought of.

Once it's clear that there is an sufficiently sized addressable audience, that means there is money to be made by people who don't share the "open philosophy" upon which these systems are built . These people will exploit whatever they can to become the system, and to grow it. As the evidence of decades of open systems development shows - it can be done; the software itself, the license agreements, the current user base, these are not protection from this centralisation of influence.

How to mitigate this type of ecosystem threat

The question Mastodon developers, enthusiasts, maintainers, and champions should be asking right now is: how did those other open projects get swamped, sidelined, and subsumed? How did the open source versions become also-rans in fields they invented?

The answer in my opinion is pretty simple:

Companies took over because they offered clearer messaging, easier on-boarding, and better ease of use than the existing open versions.

That's the the mechanism they used to grab user share, then the narrative, and then the de-facto control. It's not some superior technology, it's not a built in user base because of a recognised "brand", and it's not infinite wealth to pour into it (though that helps for a while).

Companies have a focus on making the thing people want to do the easiest thing for any user to do. Companies are also keenly aware that there are vastly more people wanting to try a product that are ignorant and outside of the existing ecosystem, than are currently in it or aware of it.

Companies centralise open systems by being the best at enabling "outsiders" to join in.

The winning strategy is to have a clear focus on serving the potential user who knows a little less than the typical current user. A company succeeding at this will walk that "new user-base" ever "lower" to enable ever more people to join. Only after that strategy starts to plateaux do they bother adding more proprietary bells-and-whistles. The core product was simply the open source version, but aimed at people that are not quite as nerdy as the typical user of the open source version.

If Mastodon want's to retain it's current culture, if it wants to avoid being subsumed by some company that's able to flood the Fediverse and push out the current instances to the fringes - then Mastodon needs the same laser-focus on providing the easiest onboarding and user experience it's possible to provide. If companies are unable to do that better than the open ecosystem way, then they can not gain a foothold to exploit.

Priorities

As I have said, Mastodon is great. It works brilliantly for its current users, and is a joy to be a part of. The hard work and deep thought of those that made each aspect of it is clear.

I hope Mastodon developers and maintainers recognise that this can only remain the case if they also understand that the user base is going to change, significantly, and quickly.

It's my opinion that the current way of dealing with onboarding is unlikely to scale in a way that will maintain the existing behaviour and cultural norms. I think that's been fairly obvious in the recent weeks - even though the people joining Mastodon at the moment are still essentially the sorts of people that Mastodon is already made of, there has been obvious friction, confusion, frustration, and fatigue. Mostly civil, and mostly resolved fairly quickly; but it's there already.

The truth of the matter is, people further from this current cultural and experiential norm are coming. People even less likely to read up on what it is they're joining, less likely to pay attention to the norms, less likely to listen to current users who - inevitably - are going to become more tired and less tolerant of the influx of new users who are less and less like themselves.

We have to make good onboarding of new users the number one priority. It has to be less manual, less complicated, less assuming of technical competence and cultural similarities than the methods of the current moment.

As a relatively new user myself, and with some first-hand experience under my belt as well as trying to help people even more new than myself: I would push two specific issues that I believe should receive the highest priority, and I think these are the two things any company with investor capital would tackle immediately.

Simplifying languages, explanations, and terms where possible

Remove the assumption of any technical knowledge.

e.g., "Choose an instance" is more specialist than "Choose a server" which is more specialist than "Choose a community". But at the end of the day, you're choosing a community. "Server" and "instance" are the technical details of that action, not the end goal.

As for usernames; there's confusion because the shorthand of using only the first part is not a Mastodon username, it's an instance username. But that's what people are used to thinking of a username.

I would suggest that the language around "usernames" is changed to "Mastodon Addresses" and effort should be made to equate it to an Email address - which is actually how it works, and is more readily apparent that there might be many @myname users, that each exist in different communities.

I'd suggest renaming "local" to "Your Community". "local" is a bit technical.

For example, when switching to the "Local timeline" in the Mastodon app, the dismissible explanation currently reads: These are the most recent public posts from people whose accounts are hosted by mstdn.social. Too technical for some users who gloss over it; maybe try These are posts from people in your community; mstdn.social. To see posts from other communities, look at the Other Communities Timeline.

Likewise when you click on the Federated Timeline you're faced with this explanation: These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about. That is certainly too technical for many new users; maybe rename the Federated Timeline to "Other Communities" and re-word the explanation as These are posts from other communities that are friendly with your community.

Improving Onboarding

This is the big one. There ideally needs to be a One True Starting Place anyone searching for Mastodon gets to; and it needs to guide users into an appropriate sign up for the user in question, requiring them to do as little thinking as possible.

joinmastodon.com seems to be that for the moment, and it does a good job for a somewhat IT literate audience. It needs to be even better than it currently is. How?

Firstly, I'd suggest we assume that people getting here have no technical experience. They don't know what an instance is, don't know what a server is even. Imagine the haven't heard of Mastodon because they're aware of the fediverse, or are developers, or know a developer. Assume they were some random person with zero knowledge of IT, who managed once upon a time to get on Twitter, and they just want to "join the Mastodon and talk".

Make doing that as guided and simple as possible.

Whats there now - although great - is still assuming a basic understanding and context a greater and greater proprtion of people won't have. It's still aimed at a type of nerd. There are still assumptions that are quite technical; even the assumption that reader cares to know any of this stuff is likely inaccurate.

People wanting to do a thing are generally cutting corners to get the thing done; they don't read instructions. Few people read the docs first; no matter how fluffy the docs are made. RTFM, right? You know it.

I would suggest having a dirty great "Join Mastodon" button right at the top of the homepage (and retain all the current stuff beneath, it's good). That Join Mastodon button needs to go to an on-boarding process not unlike that of a computer game. I imagine it flowing as a multi-step series of prompts along the lines of:

  1. "Mastodon is split into communities of like minded people; to start with, you will be joining a specific community - tell us what group of people or topic makes you the most happy, excited, or comfortable to be with?" MULTIPLE CHOICE OF SOME SORT
  2. "Based on your answer, we suggest you join one of these Mastodon communities, which are made of people that share those interests and experiences" LIST HERE
  3. click join
  4. "Great; this community is run by NAME HERE, who pays all the bills and helps keep everyone in the community happy and safe; before you join - please be sure you've read the rules of the community - so you know what is tolerated, and what is not. Mastodon communities won't put up with behaviour they have stated is unwelcome. Short bullet form excerpt of rules CLICK OK
  5. "Your Mastodon community will be @whatever.ext - You should now choose a username to be known as." PROMPT
  6. "Great! Your Mastodon address (like an email) is @username@whatever.ext - whenever you want to talk on Mastodon, go to whatever.ext and log in with your Mastodon Address and password."
  7. Why not try the official Mastodon App (iOS, Android), or you can always try a different app later.

Guided introductions within the Mastodon app

The app itself could benefit from a sort of "console game tutorial" system. Again; no one wants to read instructions or documents to bring them up to speed. They want to play immediately. At the same time we have to introduce concepts to users on how to play the game / do the Mastodon correctly.

Right now, that's not handled by the software - after seeing first hand what often happens when new users drop in, it too often seems to go along the lines of:

Given the above I have often then seen the following:

Repeat for many new users. This is bad. And it is not the new users' fault. Nor is it the fault of the developers who have worked hard to get things where they are. It's simply a matter that there is still a gap between the two which has not been bridged effectively for less technical users.

The ideal scenario is to remove as much of the "user orientation" from your communities' responsibilities as possible and instead simplify language, streamline onboarding, and move explanations into a guided first-run tutorial. Which, ideally, would be a tutorial per feature and which runs the first time the feature is used. Rather than a wall of text / bad tutorial experience.

This one's harder and needs more consideration and design iteration; but I think it's pretty vital, and again - what a company would be doing immediately.

Conclusion

Mastodon, the service, the software, its creators and maintainers, is really good. It's a joy to use, and very well thought out. It will now grow far beyond those people and the audience for which it was developed. To retain the soul and the control of all of that, Mastodon has to be excellent at involving new users and guiding them to the same understanding, philosophy, and behaviour they want to see flourish.

If not Mastodon... some company will step up and do it anyway. And we know how that goes.

It's the same story for all open source ventures. At some critical mass tipping point; you have to pivot and put Jo Average firmly in sight as the main user to address, and to address as well as possible. Or, you lose it all.