Live data from Hacker News

Are we decentralized yet?

arewedecentralizedyet.online

91–100 of 292 posts

Re: Are we decentralized yet?

#91
post #58
post #2

Neat! I'm not surprised at the findings here. BlueSky (for the average user) is pretty much a drop in replacement for Twitter. Despite the smaller total numbers in Mastadon, it's great to see that the ecosystem seems to be successfully avoiding centralization like we've seen in the AT-Proto ecosystem. I suspect that the cost of running AT proto servers/relays is prohibitive for smaller players compared to a Mastadon…

Running a PDS server for yourself and a few friends is not very expensive afaik, but there's also not much benefit to doing so, because the point of the PDS is to have a clean separation between your own data and the rest of the network. The expensive things in ATProto are the Relay (crawls/listens to PDSs to produce the firehose) and the AppView (keeps a DB of all posts/likes/etc to serve users' requests). Expensive…

> For a lot of stuff though ATProto is built in a way that you shouldn't have to host your own; you can implement your own algorithmic feed that reads from the Bluesky Relay's firehose, or your own frontend that still gets data from the Bluesky AppView.

ATProto isn't "built this way".

Twitter was also built in a way where you could implement your own stuff - and then Twitter took that away.

With Mastodon, there is one large instance (controlled by the non-profit Mastodon gGmbH). If they tried closing themselves off, their users would be losing access to the majority of people in the network. Plus, while non-profits aren't perfect, they don't have VC investors to answer to.

Bluesky could decide to stop publishing the firehose or restrict its APIs - just as Twitter did. Given that they control 99.55% of the network, they can close it off without worrying about their users losing access to anything. And Bluesky is a for-profit company that has raised around $30M in VC.

What you talk about isn't a feature of ATProto. It's a feature of being centralized and having a company willing to let you use their servers for free (at least for now). This was the case with Twitter for a long time. You could read the Twitter firehose and build your own apps and frontends getting data from the Twitter APIs - just as you can do from Bluesky today.

But unless there's a reason why shutting off the firehose/APIs would be bad for Bluesky, they can do that at anytime. It might anger some users (as Reddit and Twitter both did), but they control the network and network effects are powerful. For most Bluesky users, they'd continue using it because they aren't there for some open protocol. They're on Bluesky because Twitter became a nazi bar. Until we see real decentralization with ATProto, it's just a centralized network like Twitter or Reddit which hasn't shut off its firehose and public API yet. Hopefully that won't happen, but it certainly could.

Re: Are we decentralized yet?

#92
post #46
post #10

Earlier quoted context omitted.

I don't disagree but I do wonder if a.) discoverability is really so intractable in a decentralized environment if you're willing to throw a lot of resources towards indexing and b.) if that middle ground isn't like balancing a pendulum upside down - a very fragile equilibrium. A bunch of decentralized units might join together, or a large centralized unit might fail, pushing the pendulum to either side. You can thin…

The fediverse folks are violently against any efforts for discoverability. They like the high bar for discovering and joining. Any attempt gets brigaded and shut down quickly

They're against opt-out discovery, not discovery in general.

Re: Are we decentralized yet?

#93
post #8

Keep the needle pointing north. Towards the center of that dial. Too decentralized, and you can't find anything. Nobody uses it. Too centralized, and censorship takes over. Nobody can speak freely.

“Too decentralized” critics should form a non-profit where public hosts can register and build an opt-in index for all the decentralized content. Then there is no discoverability issue. I wouldn’t be surprised if Facebook tries to eventually capture that data with Threads.

Mastodon (the company) is building one: https://www.fediscovery.org/

Re: Are we decentralized yet?

#94
post #36

Earlier quoted context omitted.

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.

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:pl…

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.

Re: Are we decentralized yet?

#95
post #85

Earlier quoted context omitted.

Running a relay is not expensive anymore (it used to be), with recent changes it's about $30/mo. Running an AppView that ingests all ongoing Bluesky traffic (and puts it into database) is more expensive ($300/mo currently) but if you were happy with a partial view of the network, you could get it down by a lot.

I'm admittedly not versed in the AT protocol, but $30/month is high for me. Something like $10/month is quite fair, and i would expect should be more than enough for a VPS to host my and 2 other members of my family for any social network service...This $10/month is overkill for other servers on the ActivityPub via say gotosocial, pleroma, etc. Not that ActivityPub is perfect or anything like that, i just mean that $…

An important note here is the $30/mo is for the relay which is _not_ something the average user will ever need to run

Instead, you're looking for hosting a PDS which you absolutely can do for $10/mo (or less)

I run a PDS on a OVH Cloud VPS for $5/mo for myself, some alts, and some bots

Re: Are we decentralized yet?

#96
It would be great to add nostr, but nostr doesn't really match this model. Nostr doesn't need a single server to hold your identity, your app connects to many "relays" at the same time.

Re: Are we decentralized yet?

#97
post #78

Earlier quoted context omitted.

How does it work? In ATProto, there is no need to do this on-demand because the data is already there in the AppView. When you want to serve a page of replies, you read them from the database and serve them. There is no distributed fetching involved, no need to hit someone else's servers, no need to coalesce them or worry about limiting fetches, etc. This is why it works fine for threads without thousands of replies…

There is a detailed explanation available at the link I posted. Second header, "Approach".

What do you expect the performance characteristics to be compared to querying a database?

Re: Are we decentralized yet?

#98
post #8

Keep the needle pointing north. Towards the center of that dial. Too decentralized, and you can't find anything. Nobody uses it. Too centralized, and censorship takes over. Nobody can speak freely.

> In economics, values below 100 are considered "Highly Competitive", below 1500 is "Unconcentrated", and above 2500 is considered "Highly Concentrated".

Fediverse is almost straight left, and it's already 690. Straight up would be 5000. This is non-linear scale presented linearly.

Re: Are we decentralized yet?

#99
post #46
post #10

Earlier quoted context omitted.

I don't disagree but I do wonder if a.) discoverability is really so intractable in a decentralized environment if you're willing to throw a lot of resources towards indexing and b.) if that middle ground isn't like balancing a pendulum upside down - a very fragile equilibrium. A bunch of decentralized units might join together, or a large centralized unit might fail, pushing the pendulum to either side. You can thin…

The fediverse folks are violently against any efforts for discoverability. They like the high bar for discovering and joining. Any attempt gets brigaded and shut down quickly

Some are. That doesn't mean they can do anything about it.

Remember, "the fediverse" is a bit like saying "the internet". "Internet folks are against centralization." Are they?

Re: Are we decentralized yet?

#100
post #76

Earlier quoted context omitted.

>I suspect that the cost of running AT proto servers/relays is prohibitive for smaller players compared to a Mastadon server selectively syndicating with a few peers, but I say this with only a vague understanding of the internals of both of these ecosystems. This isn't quite right. ATProto has a completely different "shape" so it's hard to make apples-to-apples comparison. Roughly speaking, you can think of Mastodon…

That's a big post that doesn't really explain in what way can smaller players federate with ATProto or how the structure allows federation. Reading through it, it just sounds like sharding/scaling for a centralized service that's meant to be owned and provided by a single entity.

>in what way can smaller players federate with ATProto or how the structure allows federation.

Each of the pieces I've described (PDS, Relay, AppView) implement the protocol specified at https://atproto.com/. Anything that acts as an ATProto PDS can be used as an ATProto PDS, anything that acts as an ATProto Relay can be used as an ATProto Relay, and so on. I'm not sure I understand the question so pardon the tautology.

The structure allows federation by design — a Relay will index any PDS that asks to be indexed; an AppView can choose the Relay it wants to get the data from (or skip a Relay completely and index PDS's directly); anyone can make their own AppView for an existing or a new app. That's how there are multiple AppViews (both for Bluesky app and for other ATProto apps) ingesting data via multiple Relays from many PDS's. There aren't many independent operators of each piece (especially outside of PDS self-hosting) but nothing is privileging Bluesky's infra.

Additionally, Bluesky's reference implementations of each piece are open source. So people run them the same way you would usually run software -- by putting it on a computer and exposing it to the internet. To run a custom PDS, you can either use the Docker container provided by Bluesky (https://github.com/bluesky-social/pds) or implement your own (e.g. https://github.com/blacksky-algorithms/rsky). Ditto for other pieces.

>Reading through it, it just sounds like sharding/scaling for a centralized service that's meant to be owned and provided by a single entity.

You're right in that the goal is to make it on par with centralized services in terms of UX and performance/scaling. However, it is decentralized.

The picture at the end of this article might help: https://atproto.com/articles/atproto-for-distsys-engineers

Post reply on HN