How does ActivityPub differ from what BlueSky is using? (AT)
I don't quite understand a lot of the details on how the implementations work.
In what ways is AT better or worse than ActivityPub? Are there different versions of ActivityPub? Are there improvements coming to either to make them better (or compatible)?
My current understanding is
AT makes it easier to move accounts (according to them), but AT is controlled and maintained by BlueSky, and they are a for-profit company that can mess with the protocol in the future, which goes against the central idea of decentralized social media
On ActivityPub, your homeserver is responsible for pushing your publications out and pulling your followed accounts publications in. All implementations need to work both ways.
In AT your homeserver (PDS) pushes your publications out to a service provider (BGS), and you need to subscribe to this BGS to get publications in. Content moderation is done on the BGS layer, so harmful content is not deleted, only hidden. This is because the founder is a free speech extremist. As BGS collect posts and create timelines, it's possible for them to make algorithmic timelines, insert ads and so on.
Because BGS are more resource intensive, fewer people will run them, when they exist, and the network will have a high degree of centralization.
I guess mainly:
Activity Pub is actually official W3C standard. There are yearly conferences, development and it's open.
That AT protocol is owned by Bluesky, they decide how it's developed, what gets in, what goes out and to my knowledge it's actually not implemented anywhere else (yet).
You are correct, however I want to point out they have stated they want to hand over the governance of the protocol to a standards organization like the Internet Engineering Task Force:
Development of atproto to date has been driven by a single company, Bluesky PBC. Once the network opens to federation, protocol changes and improvements will still be necessary, but will impact multiple organizations, communities, and individuals, each with separate priorities and development interests. If the protocol is successful, there certainly will be disagreements and competitive tensions at play. Having a single company controlling the protocol will not work long-term.
The plan is to bring development and governance of the protocol itself to an established standards body around the time the network opens to federation. Our current hope is to bring this work to the IETF, likely as a new working group, which would probably be a multi-year process. If the IETF does not work out as a home, we will try again with other bodies. While existing work can be proposed exactly “as-is", it is common to have some evolution and breaking changes come out of the standardization processes.
I'll try to explain to the best of my ability, from having used both and figuring things out.
On Atproto, the federation is very much more on the backend, where the Personal Data Servers are interlinked and people access the protocol through bsky.app or some other app they wish to use. They have started rolling out the infrastructure to allow federation between different PDSs and have started moving user data to them. They've made for a more predictable, consistent federated experience (which has been a criticism of the ActivityPub's fediverse), and allowed for a more resilient infrastructure, but unfortunately it's limited to what Bluesky wants which is just microblogging while ActivityPub is more flexible (see: Mastodon, Lemmy, Funkwhale, PeerTube, Wordpress, etc.) but has the cultural issue of people treating their instance like their own personal forum and not a critical part of the fediverse's infrastructure.
Well for one, if a feature is implemented in Atproto, it'll be implemented for the entire federated network. With ActivityPub, there's inconsistency with the features (You still need Glitch-soc if you want Mastodon with text formatting, for instance) and, while yes it's cool that I can talk to Lemmy from my Mastodon account, it's quite a clunky experience IMO and shouldn't be a selling point to the regular user who just wants to post about what they're doing.
My current understanding from reading some 3rd party articles is that AT employs a DAG to synchronize messages more consistently.
AP has a different model that has some downsides in regards to consistency, but it should be significantly more resource efficient and have better recovery from failure modes.
unfortunately it’s limited to what Bluesky wants which is just microblogging while ActivityPub is more flexible (see: Mastodon, Lemmy, Funkwhale, PeerTube, Wordpress, etc.)
One of the bsky devs has clarified that they do want peertube/wordpress/lemmy type sites to exist on the protocol as well
I think that is a very bad analogy, because all of those are browsers that (historically) had all their different underlying engine but basically everything made the same. It was the same functionality implement 3 times.
With AP, AT and whatever X uses, it's a completely different mechanism.
So it's more like an Single Player Game, and Online Shooter and an MMO. In the end everything is a game but the way they are built and functioning is completely different.