Live data from Hacker News

ActivityPub: decentralized social networking protocol

w3.org

51–60 of 140 posts

Re: ActivityPub: decentralized social networking protocol

#51

This protocol is a successor to OStatus (GNU Social), and mostly made by the same people. From what I remember, Mastodon switched from OStatus to ActivityPub a few releases ago. In the past they had to extend the OStatus protocol for private messages, which meant some clients may not honor the private status of theses posts. ActivityPub has private messages defined properly in the spec. It seems PeerTube ( https://gi…

> which meant some clients may not honor the private status of theses posts. Does this mean they may have accidentally published a message intended as private, to the public? If so, I don’t think I can imagine a more efficient way to rob me of any confidence I ever had in Mastodon…

Socal media is orthogonal to privacy.

If you want to keep something private, don't post it on a social media platform -- or at least, encrypt it out of band before you do.

Re: ActivityPub: decentralized social networking protocol

#52
post #48

Earlier quoted context omitted.

AFAIK XMPP is more geared towards IM than microblogging and it's very complex and difficult to get right due to many extensions.

That's not true. XMPP can do far more than instant messaging, and it's definitely not complicated (well for a decentralized network and for technical audience of course). For the record I'm the main developer of a XMPP based "social network" project (Salut à Toi), and we are able to communicate natively with others XMPP projects (e.g. Movim) for years (we can share comments like in the video, it's the basis of common…

The problem I've always had with XMPP is that any time I try to do something with it, I get lost in an endless sea of RFCs with no idea of which are important for my use-case (most RFC titles seem fairly jargon-heavy to me). Then, when I go to read an actual RFC, because of the fact that each RFC has some interactions with all other RFCs, they're fairly impenetrable. Is there a document somewhere collecting the most essential XMPP stuff you need to be aware for different applications (e.g. chat client, XMPP server, XMPP social network client, bridge between XMPP and other protocols, etc.) and presenting it in a concise way that doesn't require navigating a vast sea of documents? Do you have some other recommendation for how to get into the XMPP world?

Re: ActivityPub: decentralized social networking protocol

#53
post #45
post #19

Earlier quoted context omitted.

Actually, I never did any XMPP coding but from what I belief it is more difficult to get it 'complete' then to get it 'right'. I mean you get it 'right' even with a minimal/core implementation but 'complete' only with about the 50 most common extensions. Getting it 'right' seems to be a problem when the XEP definition is open to interpretation. Nevertheless, I agree that it would not fit the XMPP ecosystem to be used…

> I never did any XMPP coding but from what I belief it is more difficult to get it 'complete' then to get it 'right'. I don't think there is a point in getting it complete. You choose the XEPs you want by looking at what your client/server goals are. Also if you need help in choosing, there are pointer XEPs, like the Compliance Suites, or the mailing list, or the chatrooms. See https://xmpp.org/community/ > Getting…

Fair enough, 'complete' might be the wrong word here too (as you do not have to support all XEPs), but currently my biggest problem is, that Conversations (Android XMPP client) works pretty good (something I would consider 'complete' in terms of messaging), but I could not find any desktop client which works on a similar feature level.

For example how many desktop clients support OMEMO, MAM and Carbon copies? Those are just 3 XEPs all related to secure multi device communication. Yes, they haven't reached the status recommended yet, but I think that is more a symptom than the root of the problem.

Re: ActivityPub: decentralized social networking protocol

#54

Earlier quoted context omitted.

Oh that's nice, thanks for the explanation. I'm currently working on a social network and I like the idea of being able to connect with other ones via open standards. I need to do more research on implementation.

there's #social on freenode, although it's not very active. You might have more luck asking your questions on #pleroma on freenode (another Ostatus/AP server) or on the mastodon discord.

I'll check 'em out, thank you!

Re: ActivityPub: decentralized social networking protocol

#55
post #51

Earlier quoted context omitted.

> which meant some clients may not honor the private status of theses posts. Does this mean they may have accidentally published a message intended as private, to the public? If so, I don’t think I can imagine a more efficient way to rob me of any confidence I ever had in Mastodon…

Socal media is orthogonal to privacy. If you want to keep something private, don't post it on a social media platform -- or at least, encrypt it out of band before you do.

I don't think "orthogonal" means what you think it means.

Re: ActivityPub: decentralized social networking protocol

#56
post #52
post #48

Earlier quoted context omitted.

That's not true. XMPP can do far more than instant messaging, and it's definitely not complicated (well for a decentralized network and for technical audience of course). For the record I'm the main developer of a XMPP based "social network" project (Salut à Toi), and we are able to communicate natively with others XMPP projects (e.g. Movim) for years (we can share comments like in the video, it's the basis of common…

The problem I've always had with XMPP is that any time I try to do something with it, I get lost in an endless sea of RFCs with no idea of which are important for my use-case (most RFC titles seem fairly jargon-heavy to me). Then, when I go to read an actual RFC, because of the fact that each RFC has some interactions with all other RFCs, they're fairly impenetrable. Is there a document somewhere collecting the most…

It depends of what you want to do. In most cases, I would recommend using and existing client/library, this would make the things more easy for you (don't have to start from scratch, something already made in your favorite language).

If you really insist in doing all by hand, you can start by checking compliance suits (XEP-0375) or https://xmpp.org/about/technology-overview.html. Those two links are actually at the top of the XEP list (https://xmpp.org/extensions/).

Re: ActivityPub: decentralized social networking protocol

#57
Yeah, let's send my social media data to a bunch of servers automatically through a distributed protocol with no practical means to enforce compliance with privacy settings. But that's okay, nobody ever posts anything on social media that they end up regretting, right?

Re: ActivityPub: decentralized social networking protocol

#58

This protocol is a successor to OStatus (GNU Social), and mostly made by the same people. From what I remember, Mastodon switched from OStatus to ActivityPub a few releases ago. In the past they had to extend the OStatus protocol for private messages, which meant some clients may not honor the private status of theses posts. ActivityPub has private messages defined properly in the spec. It seems PeerTube ( https://gi…

Last summer I tried untangling the OStatus/pump.io/ActivityPub/ActivityStreams nest hoping to piece together a big picture mental image based mostly on what Wikipedia has to say, and found it mostly frustrating. For anyone who's similarly curious or confused, LWN published a pretty great overview last month—their "Federation in social networks" article: https://lwn.net/Articles/741218/

Thanks! After reading that article I'm curious where public key cryptography fits into this.

Re: ActivityPub: decentralized social networking protocol

#59
post #53
post #45

Earlier quoted context omitted.

> I never did any XMPP coding but from what I belief it is more difficult to get it 'complete' then to get it 'right'. I don't think there is a point in getting it complete. You choose the XEPs you want by looking at what your client/server goals are. Also if you need help in choosing, there are pointer XEPs, like the Compliance Suites, or the mailing list, or the chatrooms. See https://xmpp.org/community/ > Getting…

Fair enough, 'complete' might be the wrong word here too (as you do not have to support all XEPs), but currently my biggest problem is, that Conversations (Android XMPP client) works pretty good (something I would consider 'complete' in terms of messaging), but I could not find any desktop client which works on a similar feature level. For example how many desktop clients support OMEMO, MAM and Carbon copies? Those a…

Desktop client support is lacking, but I think Dino (a relative newcomer) does a pretty good job of being compatible with Conversations and being "modern" (for some handwavey value of "modern") messenger based on XMPP:

https://dino.im/

Re: ActivityPub: decentralized social networking protocol

#60

Earlier quoted context omitted.

Last summer I tried untangling the OStatus/pump.io/ActivityPub/ActivityStreams nest hoping to piece together a big picture mental image based mostly on what Wikipedia has to say, and found it mostly frustrating. For anyone who's similarly curious or confused, LWN published a pretty great overview last month—their "Federation in social networks" article: https://lwn.net/Articles/741218/

Thanks! After reading that article I'm curious where public key cryptography fits into this.

In AP, messages are signed with http signatures (https://tools.ietf.org/html/draft-cavage-http-signatures-09). OStatus has a similar mechanism called salmons, which are signed XML payloads.
Post reply on HN