There Are No Instances in atproto

19 points by viktorstrate 10 hours ago on lobsters | 24 comments

When people ask about instances, they are asking about independent operators. If Bluesky the company disappeared, would there still be a network?

notjack | 2 hours ago

Yes. There are independent operators of every portion of the stack. There's some weirdness with the PLC directory service specifically that would make that particular service trickier to switch over than the others, but even that one still has independent operators for it.

A synonym to "yes except for this one central service that's hard to switch out", is "no"

singpolyma | an hour ago

They said that one is tricker to switch. Not that there's no other operator or that switching is not possible.

Also using that part at all is completely optional

We're talking about one central service operated by Bsky which there is only one of, which everyone is using regardless of which app server they use or which host their account is on, right? That's not decentralized. How tricky it would be to switch the entire community from one directory server to another is entirely irrelevant.

jcalabro | 49 minutes ago

FYI plc directory is being handed off to an independent Swiss Association so it will be out of the hands of Bluesky PBC

https://docs.bsky.app/blog/plc-directory-org

I don't think that's any better, it's still just as centralized

goldstein | 56 minutes ago

could you link an open-registration independent appview + relay?

the virgin birth in network terms: a decentralised network of a single server.

Tells you true believers.

ahelwer | 4 hours ago

Cryptocurrency pioneered this approach a decade ago. I remember the tedious arguments about whether this or that project was decentralized. It took embarrassingly long before I realized I was using my distributed systems knowledge to do the equivalent of being an archeologist arguing against the accuracy of the Egyptian theme on a slot machine. It’s just there to add a bit of flavor; people don’t really care whether a given project is decentralized in truth.

SpindleyQ | 4 hours ago

"It's just like RSS, except with a handful of enormous expensive servers in the middle that I'm not going to bother drawing in my little diagrams" feels... disingenuous. There is no ATProto app that talks directly to PDSes like a desktop RSS reader or podcatcher. If it worked like RSS you could just use RSS.

gcupc | 3 hours ago

The diagrams are (perhaps intentionally) misleading with the endpoints labeled "app". You might think that means an app running on your desktop or your phone, which is what the analogy with RSS suggests. In fact, the "app" in the diagram is an ATProto "appview", which in the RSS analogy would be "Google Reader", except mandatory.

easrng | 3 hours ago

You don't need appviews. None of my atproto apps rely on an appview (ex. https://atpkgs.easrng.net, https://pen.wisp.place) appviews aren't needed for simple publishing, you can pull directly from the pds. If you need social features/backlinking though you do need to consume the whole network or rely on someone who has (like https://constellation.microcosm.blue) which is quite unfortunate and would be quite easy to fix imo, PDSes could just send and collect backlink notifications themselves...

srtcd424 | 2 hours ago

I do get the impression that ATproto is potentially a good architecture for all sorts of things, but not actually for Bluesky, which seems a little awkward.

boramalper | 7 hours ago

For the curious:

goldstein | 3 hours ago

this would be true if there was an app 2. for now the picture is indistinguishable from the facebook picture, as all the blogs feed into bsky.app, and you can’t really avoid* using bluesky-the-company’s infra. (“all the blogs” is also a stretch, as >94% of them are hosted on bsky’s PDS anyway).

notably, tangled, named as another example, is also not decentralized, you have to use tangled.org to view repos.

*if you’re Black, you can try Blacksky which I think is now actually independent? that’s a huge step, and I hope Northsky will follow at some point

natkr | an hour ago

Even Blacksky feels like it had a few rounds of "we're totally independent now, promise!" => "oops, except for that part" at this point.

I implemented ActivityPub on my blog. People can follow me from Mastodon, and I can like or reply to their posts and it shows up correctly in their timeline. They can see all my posts in their instance when they click my profile, and many people would never know I don't have a real Mastodon account when they interact with my profile.

In order to do this, I had to implement WebFinger, a few endpoints, and a periodic job.

As far as I know, I can't do that with AT. Is there a way for people to follow my blog from BlueSky by implementing the right endpoints in my site?

thisalex | 7 hours ago

So, identity is separated from hosting and from reader. They could be packaged together, but that’s not a requirement. Right?

Are fully federated instances possible at this point? Does blacksky tick all of the boxes? I think there were some complications initially

singpolyma | 7 hours ago

Yes blacksky runs everything themselves last I checked.

freddyb | 4 hours ago

Ok cool, where is the list of interesting atproto apps, then? :)

Verfeuil | 9 hours ago

If I read this correctly : there are no instances, but there are "hosting" that host your data. You can have a different "projection" (e.g. some app) that interacts with your data (or anyone's data) that is elsewhere.

But if the question is : where is your data ? It's on the hosting side. So, there are no instances, but there are servers that hosts your data and they decided not to put a frontend on them. Unlike on mastodon, that does both, but that seems not mandatory for activity pub, as it covers both server protocol and client protocel, no ?

pgeorgi | 6 hours ago

The hosting side is simple, even: There are pretty minimal implementations of the "PDS", the Personal Data Server.

Problem is, they interact with Relays (that merge all that data in a single stream) that the self-hosting docs note require lots of bandwidth, and with AppViews (basically: the actual application), for which the docs point out that they need to replicate the entire data set they're working with: "the first thing you would need to do here is replicate all of the data in the network for the Lexicons that your application handles"

So, a distributed data store alright, but a lot of expensive machinery required to get at it.

gcupc | 5 hours ago

So much so that there are a low single digits of appviews.