23 ms·
There are no instances in ATProto
- agnishom 4mo ago> Are people migrating to alternative hosting? Yes, are they? Where are the alternative hosting that do the same thing as Bluesky?
- danabramov 4mo agoHere's a list of active alternative hosts: https://blue.mackuba.eu/directory/pdses https://blue.mackuba.eu/directory/pdses As I mentioned in the article, I literally migrated to https://eurosky.tech/accounts/ https://eurosky.tech/accounts/ yesterday.
- agnishom 4mo agoPerfect. That is exactly what I needed to know
- bjkeefe2 4mo agoIf you're curious about atproto and feel like a n00b about it, this is a great place to start.
- axus 4mo agoSo all the censor needs to do is cut off one host? And then you upload everything to different host and connect that?
- chokolad 4mo ago> So all the censor needs to do is cut off one host? And then you upload everything to different host and connect that? Which host?
- danabramov 4mo agoWhat kind of censor? Whoever operates hosting can decide to ban someone from hosting. This isn't different from how Cloudflare would ban you for hosting something illegal. Whoever operates an app can decided to ban someone from that app. This isn't different from how a forum moderator can ban you for something they don't like. Whoever operates services in the middle may decide to ban someone for network spam/abuse, same as cloud services may do if you abuse their limits. You can always try to host your stuff elsewhere, and you can always access the same network from another app whose decisions you prefer. So it's basically same as usual on the internet, but each role is separate, and you can mix and match what works for you.
- lyu07282 4mo agoExactly this, people seem to confuse decentralization with federation. The Blockchain is decentralized, the fediverse is federated, big difference. I think it's because what we actually want and need right now (with western regimes dialing up censorship and repression to eleven) is decentralized social media, but that doesn't exist yet unfortunately.
- allwashedup 4mo ago[dead]
- Raed667 4mo agoSemi related post on why the moderation of federated Mastodon instances is a problem: https://blog.raed.dev/posts/mastodon_moderation https://blog.raed.dev/posts/mastodon_moderation
- timbray 4mo agoTo be fair, from 2022. I would argue that moderation in Fedi is holding together reasonably well. There are a few popular instances that lots of people think are overly aggressive/purist in their moderation policies, but the people using them seem to like what they're getting.
- kajman 4mo agoI haven't used Mastodon, but my experience with Lemmy was a lot of petty fighting about who should be defederated. The OP's reference to warring fiefdoms was very spot-on for that scene. I imagine it's a huge turn off to casual, well-adjusted people exploring the space. But I wouldn't know. There's, of course, another sort of grossness to corporate moderation from above, but at least with ATProto you can take your identity and content to another AppView, if it wasn't shown there already. AFAIK, any fediverse migration tooling requires a cooperative host server you haven't already been banned from.
- inigyou 4mo agowas that lemmy.world? As you have discovered, some instances are full of drama. Such is the nature of decentralisation. If you don't have some parts of the network full of drama there's probably a central entity suppressing it.
- AKSF_Ackermann 4mo agoI wonder why were relays mentioned only mentioned in passing and there was no elaboration on how they interact with the rest of the network. Maybe because doing that would show that there are in fact "instances" in atproto, but who knows?
- uberex 4mo agoI just searched up Relay and I guess Relay is like Feeder in the analogy? I don't need it? And if I want it I choose one (many?) or run my own.
- hooverd 4mo agoYou need a relay unless you want to have all the same NxM scaling problems as Mastodon.
- neko-moe 4mo agoNot really, considering there aren't that many app servers. Each PDS sends out its events, those events are picked up by whoever wants them, mostly relays but some apps might directly subscribe. The more apps in play, the more connections, but it is not the case that for every new PDS, every other PDS now has to open an additional connection. It scales with the amounts of apps, not PDSs.
- deleted 4mo ago[deleted]
- hooverd 4mo agoMostly because having a big centralized firehose relay is less decentralized than people want to admit.
- danabramov 4mo agoThat's not true. It's not centralized in any way that matters. The Relay Bluesky uses is open source, you can run your own for $30/month if you really insist on doing that, it's trivial to pool between multiple apps if you want to lower costs, and there are already a few independent ones you can just use directly now, for example: - https://pdsls.dev/firehose?instance=wss%3A%2F%2Fatproto.africa%2Fxrpc%2Fcom.atproto.sync.subscribeRepos https://pdsls.dev/firehose?instance=wss%3A%2F%2Fatproto.afri... - https://pdsls.dev/firehose?instance=wss%3A%2F%2Feurope.firehose.network%2Fxrpc%2Fcom.atproto.sync.subscribeRepos https://pdsls.dev/firehose?instance=wss%3A%2F%2Feurope.fireh...
- uberex 4mo agoThanks! Your name makes me think of a funner pre-LLM time when Elm and Redux was new and cool. Great explainer!
- HashThis 4mo ago[flagged]
- ChicagoDave 4mo agoThis sounds like BlueSky without the user-directed self and grouped moderation tools. That’s not censorship. It’s showing you the door if you’re a jerk. And it sounds awful.
- Melonai 4mo agoI'm pretty sure this comment is not written by AI, but those last few sentences really really made me think it is. It's a little sad that this type of antithesis now always has this AI-written connotation to it. "That's not you cheating. It's you looking for emotional fulfillment. And frankly? That's courage."
- HashThis 4mo agoHi. It wasn't written by AI. I wrote it
- ChicagoDave 4mo agoWell I was riffing off the xkcd free speech comic. https://xkcd.com/1357/ https://xkcd.com/1357/
- toomim 4mo agoAT does have instances. They are just grouped differently. In BlueSky, there is only one single "AppView" instance in the entire network. There is one instantiated "Firehose". Each user can instance his own "PDS". In ActivityPub/Mastadon, the instances are "sender's server" vs "receiver's server." The difference isn't that there aren't "instances" in AT proto. It's just that the instances are segmented differently.
- hooverd 4mo agoYou can have your own AppView and Firehose. They're just relatively expensive to run versus a PDS.
- danabramov 4mo agoRunning your own firehose is not expensive, fwiw, it's $30/mo. If I were making a "serious" app I'd probably do that. Otherwise, relying on community-maintained ones seems fine. Running an AppView for your own app is not expensive at all. It can be as cheap as you want. It's only expensive if you want to store gigabytes of Bluesky posts and serve them to millions of users — i.e. if you want to build the full Bluesky AppView. But why would you want to build a Bluesky AppView? That's part of what I'm alluding to in my article — atproto isn't "for Bluesky". You can build any social app.
- JoshTriplett 4mo ago> But why would you want to build The problem is that that sounds like "you shouldn't want to compete with Bluesky". Which makes it dangerously centralized.
- danabramov 4mo agoI don't understand how running your own Relay is related to competing with Bluesky. A Relay is just a dumb websocket broadcaster. Yes, you can absolutely run one on your own if you don't want to rely on any of the existing ones. I don't think this has to do with competition.
- muglug 4mo agoAs far as I can tell, Relays[1] are the glue that makes ATProto work performantly. I think they're supposed to be content-agnostic — they just shuttle data through, reducing the number of services each AppView needs to be aware of. As the blog mentions, the big improvement vs Mastodon is that Relays, AppViews and PDSes are separate services with their own distinct scaling demands. It's a rather beautiful solution to a system design problem. [1] https://atproto.com/guides/glossary https://atproto.com/guides/glossary
- RobotToaster 4mo agoThey do remove content directly from relays. They claim they only remove content that is illegal to host, but I don't know how true that is, and there is always the risk it could change in the future. https://docs.bsky.app/blog/blueskys-moderation-architecture#infrastructure-moderation https://docs.bsky.app/blog/blueskys-moderation-architecture#...
- chokolad 4mo agoIf that becomes a massive problem - host a relay with different moderation policy.
- NoGravitas 4mo agoThe scale-down floor for running an ATProto relay or appview is much, much higher than the floor for running a fediverse instance.
- ascorbic 4mo agoSince sync 1.1 last year, you can run a relay on a relatively small VPS
- chokolad 4mo agoYou can scale down as much as you want. You don't need to run full relay if you want to follow only a dozen of accounts. I bet you can run something like that on a raspberry pi or something similar. You will not get the search over all of the network, but that's something you don't get with your personal mastodon instances either.
- timbray 4mo agoATProto is an interesting protocol and there is lots of room to argue about its plus and minuses (and about Fedi/Masto's), but lots of people are already doing that so I won't. My concern isn't technology or culture, it's money. At the moment, ATProto is existentially dependent on Bluesky PBC, a venture-funded startup ($100M from Bain Capital). There are people doing good work to make it more decentralized, more power to them, but at the moment it's still deeply centralized. And it's hard to see what the business model is that will support what Bsky PBC does at a global scale. Eventually Bain will want to see a revenue stream that justifies their investment; maybe there's a way to do that that doesn't involve enshittification but it's certainly not obvious. You can dislike the instance-centeredness of Fedi/Masto (seems to have worked OK for email over the decades) but it's an actual thing that's actually working. And offers account migration without losing followers if you don't like the instance you're on. And has multiple really excellent client software packages. And seems to be covering its costs through a mixture of Patreon, co-operative & nonprofits, some Euro-gov help, all without any VC input. It can't be bought or owned by anybody. Put another way, this is a really interesting space. But the technology is less interesting than the culture, and the culture is less interesting than the m money.
- jrm4 4mo ago"Seems to have worked OK for email" THANK YOU. It seems like far too few in this space really understand the benefits of actual decentralization. ATProto feels like "centralized, except also we get other people to do the hard work with few of the benefits."
- kajman 4mo agoI think email is a pretty poor example of decentralization in the modern internet. I pay a company to not have to worry about hosting my own and I've still had emails blackholed by the massive providers for unknown reasons I can only assume are some combination of the custom domain* and the provider. I went back to using Gmail on my resume and for applications after nearly missing out on an interview because of it. *: Not an .xyz, has proper SPF and DKIM records
- 4mo ago
- RobotToaster 4mo agoThere's basically only one instance. There's only one PLC directory. There's very few full relays (edit: appviews), none that I'm aware of that don't mirror bluesky censorship/moderation decisions.
- iameli 4mo agoThere are many relays, here's a list of 13 but it's not comprehensive: https://tangled.org/firehose.club/community-firehose-list/blob/main/relays.toml https://tangled.org/firehose.club/community-firehose-list/bl... Bluesky's moderation actions are generally implemented as moderation labels which take effect at the AppView level. Sometimes they'll take down someone's PDS or censor from their relays, but I don't believe third-party relays are aware of those relay takedowns at all.
- RobotToaster 4mo agoYou're right, I was probably confusing appviews with relays.
- danabramov 4mo ago- There's no "instances" so I don't know what you mean by this. - Re: PLC directory, indeed, there is only one of those. I think this is a legit point but it's worth considering the whole point of PLC directory is to be the single minimal stateless open source part that lifts identities out of apps and hostings. PLC governance and maintenance is being spun out into a Swiss organization (https://atproto.com/blog/plc-directory-org https://atproto.com/blog/plc-directory-org). Longer term the idea is for it to have a similar role to ICANN. Here's more on that: https://youtu.be/9z0z-Qu66yM?si=_8Dcw1M3VSKFGZhm&t=493 https://youtu.be/9z0z-Qu66yM?si=_8Dcw1M3VSKFGZhm&t=493 - Re: full Relays, they're easy/cheap to run, and you can run one yourself if you think the other ones are coordinating with Bluesky and don't trust their decisions. You don't need to depend on something else to do that.
- JoshTriplett 4mo ago> PLC governance and maintenance is being spun out into a Swiss organization (https://atproto.com/blog/plc-directory-org https://atproto.com/blog/plc-directory-org). Longer term the idea is for it to have a similar role to ICANN. And since that sounds like a massive centralization problem, how do we have a dozen more of them with independent governance that aren't all controlled by either the same legal entity or by whoever has legal leverage to compel that entity?
- jrm4 4mo agoYes, and this is exactly why ATProto is worse and more dangerous. Instances are safer. precisely because they are more genuinely decentralized. The ability to forever tie your stuff to a person, strongly, is exactly what the surveillance state would want. Mastodon's model gives you plausible deniability. It's safer.
- danabramov 4mo agoI'd say atproto gives you a clear sense of what's tied to each of your identities — you can go and explore your repo in a browser. There's nothing to say your identity has to be "tied to a person" anymore than your Mastodon account on some server is "tied to a person". It's true atproto has a "scraping is the default, so expect it" vibe, whereas maybe you're arguing Mastodon allows security by obscurity?
- Melonai 4mo agoI don't think I agree. There's nothing intrinsic about the PLC and PDS servers that tie an AT account tighter to your own identity, than an account on an ActivityPub instance in my opinion. Correct me if I'm wrong, but I'm guessing by plausible deniability you mean that ActivityPub essentially forces you to shred your old account if you need to move instances? Apart from the fact that AT also doesn't impose a "one DID per human identity rule" (yet?), allowing you to move between AT identities and PDS instances as much as you like, there's no hindrance to anyone that really wants to track your account movement between AP accounts of they even slightly want to do so. By default ActivityPub leaves a little entry on your old account saying "the person behind this account move to instance so-and-so", which is what allows you to migrate your followers with you in the first place, but that leaves just as much of a trail than your DID moving from PDS to PDS, and if you want that message to not be there, giving you said plausible deniability, you're just back to creating fresh accounts every time, just like AT. I mean I think it's hard to say that one platform is better than the other in that regard because the platforms are really really similar to each other from a broad perspective. If you take ActivityPub, break up the concept of an instance into one part that keeps the data and one part that shows the data, scrap the usernames in favor of random IDs, and stick a few more services in between, you've already arrived at the AT protocol, the oversimplification aside.
- INTPenis 4mo agoATproto sacrifices true decentralization for consistency, Mastodon and AP does the opposite, sacrifices true consistency for more accessible decentralization. At least that's how I understand it, because running an AP node is much more accessible to regular selfhosters than running one of those content relays in AT. So all you'll ever "decentralize" in AT is your own data, it's more about owning your data rather than collectively owning a part of the network. And we've been over this many times before on HN.
- tao_oat 4mo agoI'm not sure there is such a thing as "true" decentralization :) In my mind it's more of a buffet of tradeoffs rather than a single sliding scale. FWIW, in the AP world there are several individuals and small teams running relays/mirrors/caches/AppViews and so on -- but you're right that this could get more expensive as things grow.
- INTPenis 4mo agoI agree, with the state of things as they are now. I prefer AP for one reason, it's more accessible to the people. I would prefer to see small computer organisations with member fees, and donations, that run their own little node, instead of huge monolithic components. That's why I never liked bsky, because it was too monolithic. I never liked the monolithic AP instances either. If we're going to decentralize, let's properly decentralize. As soon as something becomes huge and monolithic, it's a red flag.
- h14h 4mo agoThis is an interesting take because AtProto feels both more accessible AND more decentralized to me (at least with my current mental model). With ActivityPub, because running an instance requires hosting the data, the application, and dealing with all the subsequent scaling challenges, you kinda have to choose between being taking on active ops responsibilities or tying yourself to someone else's instance (which will probably be one of the bigger, more centralized ones). If you decide you don't like an instance you picked and decide to move (unless things have changed) you're kinda stuck needing to start fresh. With AtProto, it's trivial to jump ship to a different application platform and continue using your same identity. Exporting your data from a platform and self-hosting is a bit of a UX challenge, but at least it's possible. As an example, I recently started using Tangled for the first time and was able to login using my existing bsky-backed domain (h14h.com). No need to create a new account or pick a new username -- it was as if I were already there. Then getting set up w/ self-hosting my git repos on a VPS was an afternoon of work at most, and it's just some backend service chugging away that I almost never have to think about. The worst that will ever happen is I see a banner message in tangled.org saying something like "your repo is out of date and may be compatible with the latest version of Tangled", which I can solve by simply rebuilding & redeploying a docker image w/ the latest versions. Granted, AtProto is definitely harder to wrap your head around architecturally. But actually interfacing it with a user is much simpler, IMO.
- skybrian 4mo agoAn important distinction is that blogs have their own websites and they're not required to publish full articles in their RSS feed. Bluesky doesn't normally work that way - everything in the PDS gets replicated. They are also encouraging people to put put full blog posts in the PDS for easy replication. So, anyone who wants to index it gets a copy and you have no control over what they do. You don't have to do it that way, though. You can publish your blog on your own website and just publish links to it on Bluesky.
- kajman 4mo ago> So, anyone who wants to index it gets a copy and you have no control over what they do. How does this differ from scrapers hitting the blog directly?
- skybrian 4mo agoWeb pages aren’t digitally signed, aren’t necessarily indexed by search engines, and there are ways to block bots with things like captchas. You also have much more control over the UI. If your blog has comments, you can moderate them, for better or worse. With a PDS, the replication happens first, before anyone reads it, and the UI is out of your control. Maybe that’s okay, but people should understand the tradeoffs.
- cavoirom 4mo agoHow can people control the comments about their blog post on Hacker News? I think my example is closer to what happen in PDS and App View.
- AnthonyMouse 4mo ago> Web pages aren’t digitally signed, aren’t necessarily indexed by search engines Neither of these prevent scraping, and the lack of the first one actually makes it worse because every scraper has to go to the original server and bog it down instead of getting it from anyone with a copy of the data that they can verify using the signature. > there are ways to block bots with things like captchas These don't work if you have anything resembling high value content, because AI can solve them now or do the same proof of work as a real user when all they need is to get a few hundred articles once. If they want it enough they can also pay someone in a low income country to download them manually. Fundamentally if you post something that any human can access then someone can copy it. Public is public. And if the content is the equivalent of blog comment posts, they can probably still get it, but in that case why even care if they do? Notice that this is the same thing that happens on the centralized services, e.g. Facebook uses your Facebook posts to train AI.
- WorldMaker 4mo agoGoogle Reader feels like an ominous pick for an analogy. Sure, RSS survived the Google Reader shutdown, but not all the communities that used RSS (many that still don't know what RSS is) survived. It feels almost "Freudian" to claim a thing is decentralized and then by analogy keep pointing to a massive (social) centralization of a decentralized ecosystem as a good thing. But especially one that we already know the ending for. Google Reader united a lot of RSS houses, value added a social graph and social commentary between them, and then at the whims of executives Google Reader fell and nearly killed RSS, but certainly destroyed an impressive social graph. As an analogy that doesn't give me a lot of confidence in ATProto.
- cavoirom 4mo agoIn exchange we have many excellent RSS Reader. Just as recently someone talked about NetNewsWire.
- WorldMaker 4mo agoI like Newsblur. It has some social tools that remind me of Google Reader at its peak. I have friends that like The Older Reader. It has some social tools that remind me of Google Reader at its peak. Neither of those social spaces communicated between each other. What we have is a "diaspora", what was once one larger community has moved on to a lot of smaller, more disparate spaces. That's not necessarily a bad thing, but a lot of trade offs were involved, a very large community feeling was lost, and a lot of intangibles were lost (friends with Gmail accounts that could easily follow and interact with us in Google Reader but are lost trying to navigate any other RSS Reader, for instance).
- NoGravitas 4mo agoOminous, but accurate. Imagine RSS but you couldn't use a desktop or mobile RSS reader, but only Google Reader or a comparably scaled clone.
- danabramov 4mo agoWell, the whole point of atproto is that the social graph also lives in the “blogs/RSS” part. The apps just index it. So in this analogy, anyone would be able to bring Google Reader back to life or compete while using that same graph. That’s actually how http://leaflet.pub http://leaflet.pub works now if you’re curious.
- 1dom 4mo ago> Every single time a post about atproto hits Hacker News, somebody asks in the comments: “But where are all the Bluesky instances?”. The problem is, there are no instances in atproto! The question is a category error. Instances are a Mastodon-brained concept, and I wanted something I can link to that explains this clearly. I feel like you've (perhaps purposefully?) misinterpreted "instances" just to plug ATProto specifically at the expense of ActivityPub (and RSS, a bit). I think you lower yourself by doing this: 1. it forces you to omit and contort the interesting technical truths about ATProto and Activitypub, like Relays and their pros/cons for ATProto and account migrations and pros/cons for ActivityPub 2. it creates unnecessary conflict and criticism and seems unnecessarily divisive for 2 platforms solving problems in such a similar space It's also just seems a bit silly: why would you assume that when someone asks "where are the instances?" they're not using the common mainstream use of the word "instances", like, servers, or running software, or VMs, or containers? Sorry if this is overly harsh or I've misunderstood, but it gives me a strong vibe that it was motivated by disdain and frustration towards ActivityPub and ActivityPub users rather than wanting to legitimately inform the world about ActivityPub. I did enjoy the diagrams and the explainers though! I just felt like the subtle digs and pops at activitypub were an unnecessary distraction.
- danabramov 4mo agoI'm being a bit cheeky in the article's tone but I am fairly confident from discussions in the past that "But where are Bluesky instances?" is a common question which usually demonstrates a misunderstanding of the architecture where "having instances of an app" is seen as a measure of decentralization. My article was an attempt to dig at this specific misunderstanding by comparing it to "But where are Google Reader instances?" which I think illustrates its absurdity. I genuinely do think that the two pictures I provide close to the end clear this up in a way a lot of early atproto/ActivityPub discussions completely gloss over. Re: Relays, I wrote here on why I didn't include them: https://news.ycombinator.com/item?id=48600963 https://news.ycombinator.com/item?id=48600963. They're kind of incidental perf optimizations rather than essential to the model. In the post, I wanted to focus on the model.
- JasonSage 4mo ago
- JoshTriplett 4mo agoI appreciate how this explains the difference between the two. But I also found it a little frustrating, because it answered one part of the question but failed to answer the question so what does ATProto do to solve the problems that instances solve? For example, when this article dismisses defederation as merely a mysterious reason you might not see posts from your friends, it fails to answer "so how does atproto solve the problems that defederation solves?". Because the default reasonable answer to assume, given this framing, is "it doesn't".
- danabramov 4mo agoIf you’re asking about moderation, it works similarly as you’d expect it to work in a everything-RSS world. At the hosting level, the hosting you use will likely ban you for clearly illegal stuff. Same as blogspot dot com or Cloudflare could ban you for certain things. At the application level, application admins/mods would moderate as any app does. This is similar to running any web service today with user generated content. It’s up to app developers to choose. Apps can also provide primitives for userland moderation, like Reddit does, or even ability to plug your own extra moderation services (which Bluesky allows). But again, this is largely how it works on any app with user-generated content. There’s no “defederation” because there’s no analog of “community instances” that may fight with each other. There’s hosting, there’s apps, and there’s app-level moderation that works according to each app’s developer’s choices. Does this help clarify it?
- JoshTriplett 4mo ago> Apps can also provide primitives for userland moderation, like Reddit does, or even ability to plug your own extra moderation services (which Bluesky allows). This is the part I would be looking for, in an article talking about "there are no instances". Is there a standard protocol for this, so that anyone can spin up a shared moderation service that people can subscribe to if they're aligned with it, and be able to plug that into any standard app built on the protocol (not just Bluesky-the-company's app)? Or is this something specific to Bluesky-the-company? If this is a standardized part of the protocol, then that answers the question of "how does ATProto solve the same problems defederation solves". There are several other things I can think of in the category of "how do you solve the problems that ActivityPub uses instances to solve", but they're things I've already asked in other parts of this thread, namely "how do you make the parts of the system not shown in the tidy hosts->apps M:N graph decentralized, too".
- rzzzt 4mo agoNobody asks _how_ are all the Bluesky instances :(
- jchw 4mo agoLet's say I make a post on Bluesky, which is decentralized. My post is very contentious. It is blocked by the moderators, and the moderation service can't be disabled on bsky.app. I am now invisible on bsky.app. So when this happens where do we go? Forget about "instance brain", your problem is Bluesky is vastly more centralized in practice than the theoretical marketing. Because if it was truly practically decentralized you could actually point to numerous instances of the service, but last time I raised this point there were... 3. Except one of them was actually not running the full appview and we weren't 100% sure the other one was either. I'm sorry man, but this isn't going to cut it. A lot of people are absolutely right to not be sold on ATProto as it stands: there is no obvious reason to believe it will become more meaningfully decentralized over time rather than less. As it grows larger, the feasibility of having more "instances" that can run completely independently of Bluesky PBC becomes even less plausible. If over 99% of the users are using Bluesky PBC infrastructure and placeholder DIDs, almost all of the keys to the kingdom lie in one place, and at that point you have invented Twitter with a ridiculous number of extra steps. Can you explain to me why I would ever run my own PDS? Why would I pay to selfhost stuff while allowing someone to control almost everything I can see and do? Unfortunately, this will never get answered. It's very easy to write a long blog post explaining how ATProto is technically decentralized. It's much harder to unpack how it actually isn't really.
- danabramov 4mo agoI mean, this literally already happened (a person was banned, and Blacksky reversed that ban on their app server). So their account only works when seen thorough the Blacksky app. What is a better solution you’d like to see? I think it’s reasonable that there’s a market between these and if there’s enough demand, another app server can become popular. I don’t think it’s reasonable to expect that the apps shouldn’t be in control of their own moderation.
- jchw 4mo ago> I mean, this literally already happened (a person was banned, and Blacksky reversed that ban on their app server). Blacksky is literally the only such example of alternative infrastructure that I know of, and obviously, it will not be applicable to the vast majority of people. Given the rising cost of hosting combined with the fact that the compute needs of running appviews and relays should theoretically only go up, I have a strong feeling that there will not be a lot more of them, either. It's already bigger than ActivityPub I believe and we're in the very low single digits at best. Meanwhile, if we really did get a lot of these instances, then it really begs the question what the actual benefit of Bluesky's ATProto architecture is: if someone is banned on Bluesky and not Blacksky... won't users see a totally different view of the world? Isn't that the same problem ActivityPub sees? How does this really differ from defederation in practice? > What is a better solution you’d like to see? I think it’s reasonable that there’s a market between these and if there’s enough demand, another app server can become popular. If I knew how to fix this, I would probably be trying to help rather than criticizing ATProto. I don't think it can be fixed, so I don't have any suggestions. > I don’t think it’s reasonable to expect that the apps shouldn’t be in control of their own moderation. It kind of sounds like you're admitting that there is no real difference from a user standpoint with browsing to twitter.com vs bsky.app that have anything to do with decentralization. I know I'm not going to win a popularity contest here, you don't even have to bother responding, honestly. But just being honest, I know you're a pretty intelligent person and the work you have done has benefited my life as a developer. I have a feeling deep down you also realize there is an inherent contradiction with Bluesky and ATProto's marketing pitch. I wish you would be honest about it. The Fediverse has value specifically because of its downsides. A version of decentralized social media without those downsides inherently picks up almost all of the disadvantages of centralized social media. To me it seems apparent that all you can do is move the sliders around a bit, and Bluesky appears to net a very tiny percent of benefit from decentralization while bearing immense cost for it.
- cavoirom 4mo agoOne thing I like about the ATProto is the stable identity, I could change the hosting as the author did recently and the other users see no difference. The one down side of the system is the cost. It's cheap to host a PDS but expensive for other components. Users could not relies on "someone" for running those components for free forever.
- danabramov 4mo agoI wouldn't say other components are expensive. Common ones are: - Relay as an optimization. That's cheap-ish ($30/mo) or free-ish if you pool with others. - Your own app server. That's on par with normal web apps as long as you can keep a socket open. What's expensive is if the app you're making is a fully capable copy of Bluesky itself with gigabytes of existing posts — but is that the app you're making? The economics here are identical to normal web app stuff.
- cavoirom 4mo ago> What's expensive is if the app you're making is a fully capable copy of Bluesky itself with gigabytes of existing posts This is the implicit idea in my comment when I said it's expensive. If Bluesky banned me and I could not find another AppView with comparable reach and audience, I lose, the ban is effective. Another problem is ATProto users don't usually associate then with an AppView the same way Mastodon users associate with the instance, it's hard to raise fund to sustain the infrastructure cost.
- danabramov 4mo ago>This is the implicit idea in my comment when I said it's expensive. If Bluesky banned me and I could not find another AppView with comparable reach and audience, I lose, the ban is effective. Okay, but that's always the case when you get banned from a service. The difference here is that it's possible to build a competing service with different moderation decisions being a lens over the same data.
- Zambyte 4mo ago
- MBCook 4mo agoWhen the first paragraph starts out by insulting people for not using the exact jargon you want them to, it really doesn’t make me want to read the rest.
- threetonesun 4mo agoI feel like the charts could be clearer if they showed the primary user experience difference between RSS and AT/AP, which is how do the arrows flow for Bob's response to Cat's post. I understand it fairly well for AP, I don't think I actually get it for AT.
- danabramov 4mo agoI have a different article that goes into this here: https://overreacted.io/open-social/#open-social https://overreacted.io/open-social/#open-social Also here: https://overreacted.io/a-social-filesystem/#links https://overreacted.io/a-social-filesystem/#links TLDR: at the hosting layer, it's like <a href> links, but in JSON. Links can refer to other person's repo (even if it's hosted somewhere else). And then apps index everything, so they can present a coherent aggregated view (like a post thread).
- threetonesun 4mo agoHah, well that's my bad for not reading articles I've saved, after reading those I remembered Puzzmo mentioned this recently and they, of course, got inspired by that second article: https://blog.puzzmo.com/posts/2026/03/02/atproto/ https://blog.puzzmo.com/posts/2026/03/02/atproto/
- p4bl0 4mo agoI think the analogy presented here is broken. RSS doesn't depend on Google Reader at all. Even at its prime, RSS depended less on Google Reader than email depends on Gmail now. In ATProto, AppViews heavily depends on Relays to be useful, and Relays are quite expensive to run. Also, the yellow circles which represent blogs in the RSS illustration are really not of the same nature as the same circles which represent posts on Facebook. Blogs are self-sufficient, for example. I'm not saying ATProto is bad at all, but I feel like this blog post adds more confusion than it clarifies anything.
- pfraze 4mo agoRelays are actually quite cheap now! They used to be a bit more expensive when they archived all the traffic, but in sync 1.1 that was dropped and they can be run on $20/mo VMs pretty trivially now
- hahajk 4mo agoSomeone has to archive the data, right? Perhaps the complexity has been pushed to the AppViews? If I read a post from a month ago, how will my client know how many likes it has or what the replies were? Without reverse links, someone has to look up in a database of all AT actions for likes/replies pointing to that post. Contrast with the inbox/outbox forward/reverse linking model of activity pub.
- IANSYT 4mo agoAppViews already had to archive whatever data from the network they cared about. The change just means that an AppView won't be able to infinitely backfill from any relay, you either need to find a relay that archives all the data you want and backfill from that relay, or you'll need to backfill by querying pds's directly. Or you could just not backfill at all, your AppView can do whatever it wants to really. Clients always talk to an AppView to get information about the network, the AppView manages the building of reverse links, the relay doesn't care about the hydrated state of the network, its just a stream of events which occur on the atproto network.
- 4mo ago
- NoGravitas 4mo agoThis article is deeply, deeply misleading, in that it leaves out relays and appviews in all of its diagrams of the ATProto network. Like, are ATProto identities namespaced by instance/home-server like Mastodon or Matrix identities? No. Does who you are able to follow dependent on the appview you connect to? Yes. Are you able to run your own appview? Probably not (this answer has been upgraded from "No" in only the last few months).
- 4lx87 4mo agoIf it quacks like a duck... An account has a single Personal Data Server (PDS), right? The DID links to a PDS which is the canonical data feed for a user, and where a user's writes go. Data can be replicated but the PDS is treated as canonical. That's much closer to client/server architecture than distributed architecture. There's no P2P database. There's no writes into a DHT or peers. You write to your PDS, then those writes are optionally mirrored. Also discovery happens via DNS, so you don't even ask peers for data. You connect to a relay not as a peer but as a client asking a server for a copy of data that's canonically hosted by the PDS. I don't think it's a stretch to call the PDS an instance and the relay a mirror.
- deleted 4mo ago[deleted]
- danabramov 4mo agoYeah sure that’s a fine way to phrase it. It’s not what most people who talk about Mastodon mean by “instance”. In Mastodon, “instance” is a coupled and inseparable data hosting + app + community + moderation pairing.
- 4lx87 4mo agoFrom a user’s perspective: To use Bluesky I need to create an account, and to create an account I need to choose the server where that account is hosted. Once I have an account I can follow any account even if hosted w/ someone else. That’s the same UX as Mastadon (leaving aside that moving PDS might be easier in ATProto than ActivityPub).
- danabramov 4mo agoWell I think "can move later" makes all the difference because the initial choice doesn't matter to the individual user. It isn't even blocking. Most people don't know they're making that choice, and I think that's fine. In Mastodon, the choice is very high stakes.
- LaGrange 4mo ago
- jdgoesmarching 4mo agoAll the nitpicking in this thread is missing the forest for the trees. You know what’s really bad for decentralization? The rest of the world living on fully centralized apps mostly belonging to one of 3 billionaires with no public protocol in sight. ATProto making some idealistic compromises to improve the protocol as a product is a more effective half-court shot at the winning users from the oligarchy of apps than AP will ever be with its current design. There’s a lot of talent in this community that could be spent building an ecosystem around the protocol far more likely to make a dent in social media centralization, but we’re stuck letting perfect be the enemy of the good.
- AsterXing 4mo ago[flagged]
- lern_too_spel 4mo agoBlogs are also hosted on instances, similar to the Mastodon diagram. The only difference is that the reader aggregator doesn't necessarily have to run on the blog host instance.
- consumer451 4mo agoI really want AT to succeed. It seems to be the nexus of federation + https://signal.org/blog/the-ecosystem-is-moving/ https://signal.org/blog/the-ecosystem-is-moving/
- yerik 4mo agoI read the post a few times, but I still have some questions that I feel weren't answered, probably because I lack the deep protocol knowledge. For context I run a 'single-user' Mastodon instance, and I don't really see how that is any different than either the blog or what ATProto offers. What I'm most confused about is that an 'instance' has just shifted elsewhere. Sure, with AP you have to choose an instance, or just go with the default mastodon.social. AT doesn't seem to have instances but, you have to choose a host, and I suppose there's probably a Bluesky default host. I can't really see how that is any different. You probably could self-host an AT host as much as you can self host an AP instance for yourself (I run mine on a $6/month VPS). The second point I don't quite get is that these apps don't seem to solve the same issues that instances do, and I believe this is the part where I'm lacking AT Protocol knowledge. If, in running my own host, I need to have software that handles access control, authentication, follows, etc, then I'm running an instance, even if it's called something else. If a host stores only data, then at some other place there is software that handles follows, access control, etc; then that software is equivalent to an instance, even if it's called something else. When people ask where the AT instances are, I think about it like this: with mastodon (or any other AP app) I control not only my data, but the code that handles it. With ATProto what it seems like to me is that I can control where my data is, but not the code that handles it (considering the main criticism that you can't run bluesky 'instances', even if instances are called something else). That's why I think 'There Are No Instances in atproto' doesn't convice me. There might not be something called instance or it might be broken down in different components, but there is at least something equivalent. If you have a million different hosts but this data is handled by a single component hosted by someone, then you can't really say it's decentralized. Sure, there are technical differences between both protocols, but from a user perspective without protocol knowledge, it doesn't seem any different from the outside. You download the app and use the default host/instance and if you don't want to be on the default one you have to get technical regardless of which protocol you chose. One bit of feedback is that the somewhat 'snarky' comments directed at ActivityPub might put off the target audience of the post, that are precisely the people who ask where the instances are. But all in all, I feel the article did a good job of explaining the differences (besides the few points I mentioned earlier) and clarifying that ATProtocol has a clear separation between the data and the presentation of the data. While it's something that AP can do (my instance works with mastodon, with pixelfed, and other 'Apps' and my data is in a machine I control), it's not the default and data tends to be tightly coupled with the big instances.
- ponorin 4mo agoATProto is good at what it was originally designed for: decentralizing Twitter. It allows a gradual introduction to the network and ensuring you have control over it at the same time. When a user decides to jump ship from mastodon.social run by Mastodon gGmbH to another server, they are using a similar but different service. It has different moderators, different emotes, different themes, different federation list, etc. They all have a different flavour, and, for better or worse, they come in a single package. When a user decides to jump ship from bsky.social run by Bluesky Social, PBC, first of all... what does that even mean? Do you want an alternative storage (PDS) for your data that will still be read by Bluesky the app and Bluesky the relay? Do you want a different "service" (what @ calls AppView) which is then not Bluesky? Do you want a different handle other than @[username].bsky.social? If that's the case, you don't even need to faff around with alternative PDSes or AppViews, you can just slap your domain on it! Mastodon invites users to federate by giving it a character. Bluesky slices and dices it to a point where the only reason you would bother considering decentralisation is for ideological reasons. And to that point, Bluesky has consistently prioritised building their own service up rather than decentralising. You still can't export photos and videos you've uploaded (through their AppView). Until some time ago you weren't able to return to using Bluesky's PDS once you've moved away. And of course, because ATProto operates out in the open, features such as bookmarks that are supposed to be private doesn't even go through the ATmosphere. (I'd love to know if these are exported but I don't know of a way to open their ".car" file which is neither a plaintext nor a zip file.)
- maelito 4mo agoKind of a similar article, but in French : https://bonpote.com/bluesky-enfin-une-vraie-alternative-a-twitter https://bonpote.com/bluesky-enfin-une-vraie-alternative-a-tw...
- tptacek 4mo agoI've wondered for awhile why someone hasn't started the Blogger.com of ActivityPub/Mastodon: 1 "instance" per person, no weird complicated group dynamics, the service handles all the technical details, the user draws from the same cohort as the people who signed up for Blogger blogs in the early aughts. If there are advantages to ATProto over ActivityPub in this kind of deployment setting, they don't seem clear enough to offset the weird corporate parentage; like, I can see how Mastodon keeps chugging along no matter what companies get sold to who, but I don't see how ATProto survives the death of Bsky.
- danabramov 4mo agoI don’t know what you mean by “instances” here. Leaflet (https://leaflet.pub https://leaflet.pub) is one of those “blogger on atproto” things — is that what you mean?
- tptacek 4mo agoLiterally just Mastodon servers, like Hachyderm, except for a single user.
- krapp 4mo agoYou literally just set up a Mastodon server and only have a single user. That's what I do, and as far as I know it's the only solution. A "lite" version of Mastodon that dispensed with all of the complexity involved with managing multiple accounts and was optimized for a single user might be nice but with a hosted account you're paying for data storage (which Mastodon seems horribly inefficient with) so in practice that extra complexity is moot.
- tptacek 4mo agoRight, my point is, someone should stand up a service, like Blogger did for blogs, which were also trivial for people like us to set up and run on our own. The thing there is it destroys the objection people have about having to find and fit in with a particular Mastodon server community. It also makes Mastodon look more like the original blogosphere and less like Twitter, which is a good thing.
- weare138 4mo agoThe AT Protocol has a federated network architecture, meaning that account data is stored on host servers, as opposed to a peer-to-peer model between end devices. Federation was chosen to ensure the network is convenient to use and reliably available. Repository data is synchronized between servers over standard web technologies (HTTP and WebSockets). https://atproto.com/guides/overview https://atproto.com/guides/overview
- fizwidget 4mo agoThis blog does a great job of explaining the architecture. In practice though I’d thought the “problem” was that Bluesky (the corporation) runs the main app and hosts almost all of the user data. So at the protocol level it’s decentralised, but in practice the system is still very centralised (in terms of who controls it). Not saying this is necessarily Bluesky’s fault, but it’s how things have played out so far right?
- danpalmer 4mo agoThere are other apps, other user data hosting (including personal hosting), and other backend services. It is decentralised in both theory and practice. The only thing you could potentially say is that because Blue sky run the biggest parts, it's not decentralised at the community or mind share level, but that's changing.
- eek2121 4mo agoThe "problem" is that people are looking for problems. This "problem" isn't specific to Bluesky, ATProto, or anything else. Look at any organization: profit, non-profit, group of volunteers, etc. and you'll always find someone that folks have a problem with. I'm not an investor and have no conflict of interest with Bluesky beyond being one of the earliest of users. I also understand the protocol, the company, the website within my own limitations. The site (and app) works just fine. Folks are really focused on finding problems rather than coming up with bigger and better solutions. Note: the majority of folks don't want an ad-hoc p2p solution like lemmy or mastodon. they want their content in one place, and they want to be able to hold that entity accountable. Because of this, p2p social networking will never take off. I've seen more drama surrounding both Lemmy and Mastodon than I have ever seen with twitter, reddit, facebook, etc. combined. That's my 2 cents. Also, apparently my spouse feels the same way. So do my friends.
- LudwigNagasena 4mo agoDoes really do a great job? It just says there are no “instances”, it doesn’t explain how the architecture circumvents all the troubles that it leads to such as auth, sync, discovery, etc.
- istillwritecode 4mo agoThis reminds me of the early arguments about RSS.
- numpad0 4mo agoSo all the content servers under one big auth infra; you could post anything on relays and apps, doesn't matter because your account is banned and nobody has the key to fetch those invalid data from relays. I mean, that's how it went, after all. BS/AT is a fine replacement for twitpic-era Twitter, but it's not a locked-open decentralized social media.
- danabramov 4mo agoI don't know what your first sentence says at all. This doesn't seem related to atproto.
- andunie 4mo agoThe RSS comparison is misleading. Atproto apps are not like an RSS reader that runs on the users' computers and connects directly to the sources of content. Atproto apps are servers that control, filter and shape the content they serve to readers. Atproto apps can censor, shadowban, show ads, algorithmize the feed into anything it wants. The user is powerless and the creator is a victim that can't do anything besides crying. The fact that any person can host their data anywhere is completely meaningless since they have no way of distributing that data.
- anon7000 4mo agoThat’s not really true. For one, you can have different AppViews which don’t do that. The feeds can be algorithmic however you the user want — multiple apps means you aren’t tied to what one central creator desires for those algorithms.
- danabramov 4mo agoThat’s the whole point of “apps”. Apps are opinionated points of view / prisms over the network. Of course they’re able to apply their own moderation decisions. That’s how the whole mainstream web works in general — you can’t even get an unmoderated app into App Stores. The difference is that it’s competitive. New apps can rise up that provide alternative lenses over the network. In the crudest case, literally showing everything. Which is what you wanted. Maybe that won’t get into an App Store but it definitely works if there’s demand for that.
- Borrus-sudo 4mo agogreat job explaining the concept!
- tomgag 4mo agoEvery time I see a post praising ATProto on HN I cannot shake the feeling that this might be the product of a concerted (and VC-backed) marketing effort. ATProto is "decentr-washing" as far as I'm concerned. Even if you self-host as much as possible, if Bluesky's relay declines to crawl your PDS, or its AppView declines to index/serve your records, then to essentially the entire audience you simply don't exist. did:plc controlled by a Swiss Verein, as if this could be a reason to drop all self-sovereignty worries! Credible exit was actually always working well on ActivityPub already, and if you self-host your instance you probably won't even need it anyway. Regardless, there is FEP-ef61 now, so I genuinely don't understand why to prefer ATProto over ActivityPub, even in the foreseeable future. Let's not even talk about Nostr, that natively solves all the issues that ATProto seems to care about. Nostr is IMHO a much superior technology, unfortunately plagued by ecosystem/people and Bitcoin-dictated technical choices (BIP-340 keypairs, brrr).
- cavoirom 4mo agoWe could develop an all in one stack that handle relay, AppView and iOS / Andriod / Web apps to serve small communities and have the Mastodon instance vibe, except one identity could appear on different instances at the same time. It doesn't exist yet, but it's possible.
- franga2000 4mo agoTL;DR: people complaining why there aren't bluesky instances are misunderstanding atproto. There are no "instances" like in Mastodon, atproto is different, it uses many "hostings". Except those hostings are just instances of the hosting software. And there in fact aren't that many. But you're just Mastodon-brained, you don't get it!
- cavoirom 4mo agoCompare to the number of users, that is not many, but still more than 3000. https://blue.mackuba.eu/directory/pdses https://blue.mackuba.eu/directory/pdses
- nirui 4mo agoFacebook is not just a "evolution of this concept". I would argue they, along with Twitter (currently know as X) and other similar service is completely different from blogs. The main different is the designs Facebook has employed manipulated their users to adopt this "scroll down" method of reading. Each item of information is only displayed just a few seconds on user's screen, unless user stopped scrolling at the item they really interested in (and then maybe tap to open it). That's not the same design used by blogs. Think of blogs as mini news sites, it encourages their readers to open the content in a full page to read it without interruptions. And, the readers has to calm their heats down to read long statements, this costs time and demands focus. If you port the design used by blogs and apply it to display Facebook posts, that will be user-hostile, because user has to click each post only to read a potentially very short content. The opposite is true too. You can't encourage user to "scroll down" a wall of long texts just to read the next wall of long texts, because that will be exhausting. You can't even create the anticipation that there's more stuff down, because that will just manipulates the user to keep scrolling down and skip. That's why I think even you technically can aggregate blogs and social media in one app, you should probably be careful about it.
- diimdeep 4mo agoMy uninformed(about this particular enterprise) but educated guess: if tomorrow VC funding evaporates all this network cease to exists. I guess based on feely that 80% of all of these Relays, PDS, Apps including, Bsky are all from few if not one company, meaning centralized behind the curtain, but decentralized evangelism. It is very possible I am completely wrong, and so be it.
- ctdinjeu2 4mo ago[dead]
- basedrum 4mo agoMissing from this is Nostr, which is very similar to Atoroto
- jheriko 4mo ago[dead]
- TazeTSchnitzel 4mo agoThe OP's article and replies in the comments here seem like someone who's comparing an idealised view of what Bluesky could be versus a cynical view of what Mastodon currently is. This troubles me because it overlooks the massive problems with Bluesky as it currently exists. It is hyper-centralised, much more so than Mastodon ever was. Virtually all users have their data stored by Bluesky PBC, aggregated by Bluesky PBC, access it through a website and app made by Bluesky PBC, and most crucially, are subject to the moderation decisions of Bluesky PBC at every turn. And I don't think it's a stretch to call Bluesky an “instance” here. Now, sure, you can use a different instance for most of these services. And that instance can interoperate with Bluesky. But that's the case for Mastodon as well, and the real difference is the Fediverse has had to live with the painful compromises that come with the anarchy of the real world. I think Bluesky will discover its own version of defederation soon enough. I don't think “ah, but you technically theoretically can still interact with people even if you can't see them on your instance” is worth all that much.
- dminik 4mo agoNot much different from threads then.
- lmorchard 4mo agoI'm interested in ATProto, but honestly this kind of "cheeky" post just turns me off. These are different approaches to the problem, they don't have to be adversarial. Another way to look at it: the Twitter-brained perspective is that it's a good thing to build a system where everyone has access to everyone else all of the time - that the global firehose is a primary goal. That notion is not universally agreed upon as desirable. Some folks and groups of folks value membranes with varying degrees of permeability. With Mastodon, each instance is a self-contained community server with the option to link up with peers of similar shape. That this arrangement makes a whole-world view difficult is seen as a feature-not-bug by many users. Also, since each instance is a self-contained complete unit of microblogging-shaped community, that means a relatively small technical team can host & maintain that unit for a decent-sized group of folks with relatively cheap cost. Put a bunch of those together in federation, and you have a chance at a pretty well-distributed spread of moderators and caretakers. Depending on how any particular instance's funding and governance is setup, that can also result in members being more or less involved in the running of the place. (Which, also, is why some folks value being "belonging" to a particular instance.) In ATProto, the "instance" is the complete stack you'd need to have ownership over the whole shebang. Some folks and communities value that. Versus Mastodon, Bluesky is just a much much bigger box. You can also separate Mastodon from ActivityPub. You can make new apps atop ActivityPub - and folks are. Photos, videos, calendars, etc. It's based on JSON Linked Data, and that's expandable to other types of activities and data. If you really wanted to, you could make a great big all-encompassing app UX that handles everything. But, I guess no one's found that interesting enough for it to take off yet.
- flaburgan 4mo agoAs a (kinda former, as the project is mostly inactive now) diaspora contributor who followed closely the creation of the first decentralized social network (with GNUStatus and Friendica), I'm really interested about this explanation, but it asks more question than it explains. First of all, why did we move away from blog with RSS with app readers? (We did not fully abandoned that by the way, there are still some excellent RSS aggregators out there such as https://flus.io https://flus.io) Because Facebook not only it allowed us to react / comment on what we were reading, it also allowed us to follow the reactions of others. The principle behind social network is that you don't follow a website author and so you know when they post, like RSS does, but you follow an account, and so you know every reactions they do. Imagine being informed when someone that you find interesting is commenting on a blog you did not even know it existed? And who themselves are following, so probably you should follow those people too, and discover even more blogs with interesting content! There were technics to try to do that with blogs back in the days. Planets (public blog aggregators) to read linked content, pingback to know when your blog post is quoted somewhere, etc. But none of this was easy, efficient and complete as Facebook was. So everyone migrated there, because it made content discoverable, which means visibility, which exactly why we are publishing on the web. But Facebook is centralized. This is a big flaw, we don't want to depend on a corporation to publish online. And so, here come decentralized social networks. I am not going to describe the Federation (the diaspora protocol) here as the comment is already way too long, but it does allow what I described above, at the cost of having an identity tight to an instance (fla@diaspora-fr.org), but from which I can easily migrate. Now, after reading this article on ATProto, it is not clear at all to me how all those interactions described above are implemented. Could you elaborate?