In the early days of the #fediverse user numbers (aka hosting costs) were low and enthusiasm was high.

Admins made their instance because they wanted to. Moderators volunteered because it felt meaningful (or whatever). We all had similar values and vibes were good. When the hat was passed around everyone happily threw a few bucks into it. Setting up a small instance can be done fairly easily by using a docker image so only basic linux skills were needed.

All that is about to change. 1/n đź§µ

ActivityPub, the language used by instances to syncronise is... verbose.

Let's imagine a person who has 500k followers spread across 10k servers. Each post that such a person sends creates 10k Sidekiq jobs. Each interaction—another 10k Sidekiq jobs. If the post gets popular and gets 1k favorites (that's 1/500 of the total followership of that person) in a short period of time, we're talking about 10M Sidekiq jobs. And all of that needs to be coordinated by one server. softwaremill.com/the-architect

Show thread

This is ok when user numbers are low. What's going to happen at 100 million users?

Show thread

At a minimum, a Mastodon instance needs about 4GB of RAM gist.github.com/nolanlawson/fc. This can only increase as user numbers do.

A medium-sized instance (by today's standards, which will be a micro instance next year) can easily use 1 TB of storage hub.fosstodon.org/more-upgrade and cost about $2000/mo to run, with everyone involved unpaid.

Show thread

Pretty quickly we find that the default installation of Mastodon is not suitable and various upgrades and re-configurations need to be made, requiring a skilled administrator to correctly identify where the bottleneck is and what to do about it. The changes described here nora.codes/post/scaling-mastod are not rocket science but going beyond that into more complex scenarios is going to require people with lots of experience and a professional background. Thousands of them.

Show thread

At the same time, the nature of the userbase is changing. Early on the fediverse was populated by people who chose to be there because of strong feelings about #FOSS, ads, privacy and so on. We're now seeing people arrive who are revolted by what twitter has become but who were quite happy there before even with all it's ads, surveillance and racism. While these people are far greater in number they will be less likely to pony up a few bucks when their server needs to eat.

Show thread

Future, much bigger, waves will be people who would *prefer* to use twitter et al but who no longer have a choice because twitter is dead. If their fediverse admin is running out of money or starting to charge a subscription they'll just move to a different server.

Show thread

It's possible that the blossoming of our lives due to the awesomeness of the fediverse will be of such obvious benefit that people of all waves willingly support their instance's patreon account and we all live happily ever after. But anyone who has been to a city knows that as the population goes up the friendliness goes down.

Show thread

Volunteers burn out. People with specialised skills are rare and in high demand. Sooner or later, bills need to be paid. How are we going to do that?

Ads - an anathema to us and without tracking and creepy AI unlikely to be very attractive to advertisers.

Subscriptions - sort of like $8 per month for a blue tick, isn't it.

Patrons - universities, municipalities, philanthropists. What's in it for them?

How do you think this is going to work out?

Show thread
Follow

@rimu One thing that Mastodon server owners need to remember is that they can limit their users. It's OK to have millions of small instances.

In order to help that along, there needs to be adequate server management tools and documentation to reduce the need for specialized expertise.

I can imagine personal/family servers of up to 200 users each.

Sign in to participate in the conversation
Librem Social

Librem Social is an opt-in public network. Messages are shared under Creative Commons BY-SA 4.0 license terms. Policy.

Stay safe. Please abide by our code of conduct.

(Source code)

image/svg+xml Librem Chat image/svg+xml