31
votes
What is your opinion of the ActivityPub protocol?
Do you think it is a good system? Are there any alternate options for decentralized federalized applications?
Do you think it is a good system? Are there any alternate options for decentralized federalized applications?
Is there any social media protocol that you feel is heading in the right direction?
In my own opinion Bluesky's AT Protocol seems to be much better than ActivityPub, however the development of both the protocol and bluesky itself seems to be taking a long time, which can harm its success I believe.
https://atproto.com/guides/overview
Really? I've heard it's needlesly complicated and very hard to implement. The protocol is more like a description of their code with no real expectation of reimplementation. Plus all of the useless crypto ids that serve no real purpouse.
Would the architecture work if it was redesigned to do something like Git, where every user clones a copy of what they need from the server and then the two just periodically sync their copies?
This sounds similar to Scuttlebutt.
I love it. It was trivial to add to an existing tool I have for watching the socials. Lots of personality I follow have some AP , as well as Twitter, etc - but this protocol was designed so users have control. You can follow w/o being on their server. It's like a fancier RSS.
The only other protocol based one appears to be BlueSky. IMO they should have built on AP.
Distributed/Federated applications have more applications than just social.
It will be interesting to see how things play out between ActivityPub and AT Protocol [Bluesky], especially once interpreter services start popping up.
I don't have any trust in AT, for every reason listed in this thread
The first, in a long technical thread, breaking down their weird choices:
Edit: For the sake of completeness, the main developer did respond, but it personally made my opinion of AT even less. Not for any lack of technological understanding, they are obviously very talented, but just that I don't like the design of the system.
That quoted part and so many parts of that are nonsense frankly. Nothing will get you account portability if everyone with a record of an account goes down, but AT lets anyone including the end-user backup their account repo and migrate without their own server staying up and cooperating, which permits much more account portability than Mastodon which strictly relies on cooperation from the original server. This is a huge strength of AT over Mastodon and this quote just lies about that. I'm amazed the AT developer's response was written so calmly.
To my understanding, DIDs are part of the way AT lets users own their handles as domain names not in control by the server the user uses. In Mastodon, your username is completely in control of the server you're on, which breaks if the server goes offline or stops cooperating with you. Mastodon server admins can take accounts hostage or edit the users' posts because there's no identifier controlled by the user involved. It would be one thing to prioritize things differently in the trade-off between a more complex protocol with more user control vs a simpler protocol, but this quote is just ignoring the benefits of AT's choices.
The app not validating certain crypto is much less important than federating servers validating the crypto. AT enables servers to federate data signed by users, where with Mastodon each server could edit the data it federates.
The differences between AT and Mastodon are pretty much all around making the server choice users make into a low-risk easily-changed technical detail instead of a weighty choice that segments the content you see and determines who owns and controls your account+handle as with Mastodon.
I think it's very cool and we've only seen the tip of the iceberg with applications.
Weirdly though, I think a lot of the applications we've seen (Lemmy, Mastodon), is where it makes slightly less sense even if it works. I just started hosting my own mastodon instance, and it is very hard to get any kind of visibility to my posts. It kinda pushes you, if you want to reach broadly, to use one of the bigger instances.
I can also find it a bit confusing that a lemmy instance can talk with a mastodon instance. It makes me wonder what the limitations are, like can I do kind of interaction?
To me, ostensibly ActivityPub would be more suited for "closed" applications with smaller circles. For example, it would work really well with a productivity suite, similar to gsuite, for example. I could write an article in emacs and invite someone from another institution that would be able to comment on the document in libreoffice. I would like to see these kinds of applications, where you really levarage the universal clients.
I’ve commented on a lemmy post from masto as well as cross post between my masto and bookwyrm instances. There’s a lot of cool interaction capabilities.
What does this look like in practice ? How do lemmy posts appear in Mastodon and vice versa ? It’s a bit confusing to me because the formats are pretty different. Can you see the threaded replies on mastodon, or quote tweets on lemmy ?
iirc, posts are by a user that is the boosted by a group (the subreddit equivalent). Comments are just posts that have specific parents that they’ve replied to. It’s not a perfect 1:1 representation but it does allow interaction across server lines.
I am not a particular fan of the protocol, I think it was designed by a committee without any real
experimentationforethought.I am firmly in the camp that we should have evolved XMPP more and gone in that direction, especially with some form of Solid style data system with optional off-site storage for ease of use (and for backups and loss of connection). I've been considering tinkering on a project that does just that.
I use AP, especially in the form of Mastodon or Firefish, but it definitely has some problems.
That’s not really true, it was informed by many years of experimentation, testing, and live use via identi.ca, statusnet, and pump.io
I believe it was also primarily designed by Christine Lemmer-Webber - while a committee may have been involved, IMO it does not suffer from the "death by committee" / cohesiveness problems that "designed by a committee" as a pejorative implies.
As much as I think federation is the way to go, I have my issues with ActivityPub. It's built in a way that makes discoverability painful and that splits communities, making it unpractical.
My RSS Reader and Intelligent Agent YOShInOn has a sidecar I called "mastodonster" which does some things with ActivityPub such as posting toots and reading people's statuses and extracting facts from them.
One thing I find interesting about it is that entities in the system as a whole such as toots and users have an increasing local numeric identifier which makes it easy to sort things into timelines but also means you have to look up a user's numeric id before you can ask about them on a particular server. It's different from other systems I've worked it but I've had good luck scripting it so far.