So, if you’re online poisoned like me, you may have noticed that Bluesky CEO Jay Graber has been having sort of a slow motion, low-key public meltdown for the past several weeks. Most recently, in this interaction with a user.
[…]
Even with practical technical decentralization, the vast majority of Bluesky users are on, well, Bluesky. Bluesky was never really packaged as something that was relatively easy for someone to spin up on their own servers; the network has been historically extremely centralized, and only small minorities of users have broken off.AT Proto decentralization doesn’t exist as a practical reality, and if it ever does it won’t be for years. Most of the work driving effective decentralization is being done by third parties, who have limited guarantees about future compatibility with possible breaking changes on Bluesky’s end.
Bluesky inc isn’t really making ‘a protocol’, they’re making Bluesky, the monolithic (to within a rounding error) social network that they operate.
I do genuinely believe that the Bluesky team set off from the start to create a decentralized protocol, but unfortunately for them they ended up running a social network. And at this point, AT Proto has become essentially a sort of ideological vaporware; a way for Jay Graber et al to run a social media platform while claiming they don’t run a social media platform.
This is, of course, just another iteration of the Silicon Valley monoproduct: power without accountability. The tech industry elite are very much like Gilded Age railroad barons – buying up whole towns, breaking up strikes, imposing top-down economic policy on whole sectors – except all the while they claim that they are just technology enthusiasts playing with their little trains.
This depends on what you think the purpose of ActivityPub is and subsequently the type of scale. ActivityPub is designed for horizontal scale in a “social network”. If you have lots of participating entities with a more or less similar number of interconnected subscriptions ActivityPub scales extremely well, unlike ATProto, which needs to more or less ingest the entire network in its firehose.
But you are right that ATProto is better designed for “social media”, meaning that most subscriptions are one sided affairs with highly visible “influencers” being the main point around which the network operates. Obviously this is what most commercial networks are more interested in as it allows profitable advertisement and other forms of social influence.
I see these two types as entirely different forms of social interaction, and couldn’t care less about the latter. So I am not worried at all about scaling issues of ActivityPub, as it scales extremely well in the “social network” type of interaction.
Yes. It’s only a problem if you expect or want the Fediverse to be the future of social media, which it isn’t.
I like this take, but I wonder if there’s eventually a combinatoric problem with having hundreds of thousands of small instances, each with thousands of connection to other instances? I have no idea how that relates to the network/computational constraints…
That needs a longer explanation.
An instance does not interact with all other instances. It only syncs with other instances when users follow someone there, join a community, …
But that’s also a problem. It means you can’t search the entire Fediverse from a particular instance and find new and interesting discussions and people. There is no discovery feed. For that, you need something like Bluesky’s relay. That relay actually does keep up with what everyone is posting and archives it.
But that’s one aspect of Bluesky that draws a lot of criticism by Fedi people. A full relay is expensive to run and not something anyone can self-host. Pruned down versions are doable, though. If everyone actually did run their own relay, then one would get you the combinatorial problem.
In practice, large instances are the Fediverse solution to the discovery problem. You can see what the many users on that instance post. Also, the many users subscribe to many things and so a large instance will cache much content from elsewhere. That architecture encourages centralization.
There’s other difficult issues. So you have a little server that serves your content to a few followers. Some celebrity with millions of followers would have to rent an entire server rack. But what if little old you interacts with a celeb and now all their followers try to fetch your content from your little server? Common problem. You just need caching. EG the celebrity rack also serves your content to their followers and takes the load off your server. But now whoever is doing the caching can also filter replies. There’s no simply solution there.
Modern webservers don’t have a problem serving thousands of requests as long as they are spaced out a bit timewise. And since each AP instance only sees and interacts with a small part of the overall network it should not become an issue to expand the network horizontally. It is anyways probably better to think of interconected archipelagos and not of a singular network in the case of ActivityPub.
Is that really true though? Say we end up with 10k servers with 100-1000 users each, even if only 10% of those users have a connection to a server that no one rose on their server is connected to, that’s still a highly connected network.
Then add boosts from other servers (that incentivise cross-network follows)…
Mastodon already has those numbers you mention and there are no performance issues in the overall network.
I don’t believe that’s true… It currently has around 9k servers, but I think the vast majority of those will have less than 10 users.
Anyway, there’s currently about 1m active users, so the real question is will it scale by 3 orders of magnitude? And my point being that I’d expect the network to become more connected as it scales (at least for the main archipelago, which is probably always going to house a majority of users).
MAU is a very incomplete measure of active users as by far the most users lurk and post very little.
In total numbers Mastodon has about 10m users and only 30% of those are on mastodon.social, the rest is distributed on the 9k other instances. That’s pretty close to the scenario you stated.