←back to thread

Are we decentralized yet?

(arewedecentralizedyet.online)
487 points Bogdanp | 2 comments | | HN request time: 0.001s | source
Show context
jchw ◴[] No.45077739[source]
I think this compares AT proto PDSes to Fediverse instances. In many ways this actually underplays just how grossly centralized AT proto currently is, since some of the components are 100% centralized still. (Whereas Fediverse instances, all downsides considered, are at least self-contained fully-independent instances.)
replies(1): >>45077763 #
edavis ◴[] No.45077763[source]
Which components are you referring to?
replies(1): >>45077826 #
jchw ◴[] No.45077826[source]
In case of Bluesky, there will also only ever be a single instance of the App View. As far as I am aware though in practice there's really only the official relay or indexing services either.
replies(1): >>45077855 #
skybrian ◴[] No.45077855[source]
Why can't someone run another App View?
replies(2): >>45077960 #>>45078116 #
jchw ◴[] No.45077960[source]
You can, it just won't be the Bluesky App View, so it's not really Bluesky. It's not like the fediverse where the instances own the URLs of the posts: they go through app views and there's a canonical URL to a Bluesky post and that's through the official app view.
replies(1): >>45078096 #
danabramov ◴[] No.45078096[source]
This seems misleading.

Different AppViews would obviously be branded differently, but the whole point of ATProto is that there is a shared "picture" of the world. People are running alternative AppViews that consume Bluesky posts (and serve Bluesky threads).

Here's the same thread on three different AppViews:

- https://zeppelin.social/profile/did:plc:iyz5zf463ic52vqbonyu...

- https://blacksky.community/profile/did:plc:iyz5zf463ic52vqbo...

- https://bsky.app/profile/did:plc:iyz5zf463ic52vqbonyu2ebu/po...

These are three independent webapps indexing the same information and serving it independently. They're not different frontends for one API; these are all independent backends.

replies(4): >>45078361 #>>45078607 #>>45078905 #>>45080537 #
jchw ◴[] No.45078607[source]
OK, to be honest, I'm surprised anyone runs a third-party Bluesky AppView even just as a curiosity. I genuinely can't understand why anyone would run one of these except as a raw curiosity.

If 99% of the people are using the default AppView, the default relay, the default indexers, the default PDSes, etc, etc... that just means that everything that almost the entire userbase sees is completely controlled by one entity. It's technically possible for people to use alternative services, but the community would have to wrestle the majority control of the network away from Bluesky Social PBC for it to really matter. Running an alternate PDS or even AppView seems like mostly a symbolic gesture since whether anyone can actually see your posts is still up to the whims of one entity, just like Twitter, and that's partly because there's no way to really "own" the URLs of your posts or profile. The canonical URLs are one domain owned by one company. The others are just alternatives.

But:

> the whole point of ATProto is that there is a shared "picture" of the world

I think everyone does understand that ATProto "solves" some of the problems with decentralization that you can observe from the Fediverse, but when you look at the practical reality of ATProto, it's hard to figure out exactly what aspect of decentralization users are supposed to be able to still benefit from. The whole thing could be re-centralized and literally 99% of all users wouldn't notice anything different. If you get censored by the entity running the primary AppView, or even deeper, you could theoretically run all of your own components... but then you'd just be talking to pretty much yourself. Even if you did succeed and somehow wrestled away a substantial portion of users, (which would be extremely expensive and impractical), now you just have the same split world that exists in the Fediverse, but with AppViews/moderation services. It kinda seems like the "shared picture of the world" concept is actually somewhat incompatible with having an actual decentralized network where users meaningfully have control.

P.S.: I know that mentioning censorship is automatically polarizing, but with Bluesky I really feel like I have good reason. I tried Bluesky briefly a long while back just out of raw curiosity, and I actually managed to get my account taken down with zero posts. I literally was just following some artists, mostly Japanese, and I assume one of them got banned for something NSFW. I'm not even sure I liked any posts that were NSFW. Needless to say once I got unbanned I just deleted my account and gave up on it. I wasn't really planning on using it for anything, so it's not like I am horribly offended by this, but it definitely gave me an idea of how Bluesky Social PBC moderates. No thanks.

replies(2): >>45080532 #>>45082507 #
1. skybrian ◴[] No.45080532{3}[source]
Having multiple implementations available is an important step towards decentralization, even if most people don’t use them yet. It shows that it’s technically feasible and will help shake out any bugs.

Getting people to actually switch will be harder, and presumably it would involve both promoting the alternatives and adding features that some users will find attractive.

replies(1): >>45085380 #
2. jchw ◴[] No.45085380[source]
The issue is that Bluesky did their big public launch long before anyone could even run their own PDSes. Instead, they spent a bunch of time working on shit like integrating Namecheap for DIDs. And if you use Bluesky to go and create a DID and set up a domain for it... it will be a centralized DID managed by plc.directory, which is also ran by Bluesky Social PBC, and you can't run your own equivalent of plc.directory, and the alternative DID method that is still supported is used by basically nobody.

Technically people can run their own components for most things, but everyone just knows bsky.app. What's the point? You're never beating them in Google Search. You're never gaining critical mass. People are just going to be really confused at why there are multiple domains that have the same content, and I imagine search indexes will be confused by that, too, probably massively deranking any of the alternatives.

This all makes running your own Bluesky components pretty self-defeating. You can go through all of the effort to have parallel infrastructure for Bluesky, only for an AppView that is doomed to be irrelevant. 99.99% of everyone you interact with is on Bluesky Social PBC's centralized infrastructure anyways and there's basically no chance of that changing. And unlike Bluesky, you don't have shit loads of investor money to spend, certainly not the $15 million that Blockchain Capital invested in Bluesky Social PBC last year.

I think Bluesky Social PBC was well aware of all of this and chose to launch this way anyways, because they absolutely did not have decentralization as a priority. And yes, I know that users on Hacker News are screaming at the top of their lungs, "Users shouldn't care! Users shouldn't care!" But guess what, Users actually cared. People were pissed off about Twitter and wanted a durable alternative that wasn't plagued by the fact that someone could just buy it and take control over the whole platform. Bluesky Social PBC sold Bluesky as a better decentralized alternative to Twitter.

For all of this performative effort though, it's all worthless. Someone could buy Bluesky and immediately close all of the doors; stop allowing new external PDSes and start closing off access to relays/etc. from anyone else. There's not really any reason to actually do that right now, since decentralization is not even a threat to Bluesky Social PBC's control over the network, and unless someone shows up with millions of dollars to blow on a network they don't even have the benefit of being the public face of, they really never have to worry about it anyways.

I criticized a lot of aspects of the Fediverse for a long time, but at least the Fediverse actually delivered on one thing: it actually really is practically decentralized, with all of the ups and downs that that comes with. Users are distributed across instances, so there is no central gatekeeper that would stop me from talking with them. You can almost always avoid any instance-related drama by just running your own instance and interacting from there, if you want. Bluesky will never have that. For Bluesky, users that Bluesky Social PBC doesn't like will be invisible to the vast majority of the rest of the network.

And I'm sorry, but that's not what a decentralized network looks like.