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.
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.
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.
"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.
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.
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...
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.
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
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?
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 ?
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.
orib | 6 hours ago
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.
mort | an hour ago
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
mort | an hour ago
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
mort | 31 minutes ago
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?
mro | 8 hours ago
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.
beto | 2 hours ago
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.