this post was submitted on 09 Jul 2024
247 points (97.3% liked)
Asklemmy
43945 readers
573 users here now
A loosely moderated place to ask open-ended questions
If your post meets the following criteria, it's welcome here!
- Open-ended question
- Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
- Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
- Not ad nauseam inducing: please make sure it is a question that would be new to most members
- An actual topic of discussion
Looking for support?
Looking for a community?
- Lemmyverse: community search
- sub.rehab: maps old subreddits to fediverse options, marks official as such
- !lemmy411@lemmy.ca: a community for finding communities
~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Like Matrix the clients aren’t all equivalent without feature parity (& no concept of the flagship or implementation client). For desktop, Gajim has the most power user features but issues rendering in smaller windows like a tiling split (& being written in Python has other issues). Dino is feature-complete & calls tend to always work—great if not connected to tons of chats. Profanity is the best TUI which is very fast but usability is really good for some things & really bad for others (like accepting no OMEMO keys). I use all three depending on the environment & task. Android it is a lot clearer where Cheogram takes the cake for me being a Conversations fork but with OLED black support as well as webxdc. For the web, Movim has the best UX/feature set & can be used anywhere a browser can with PWA support. You can also just check to see what provide OMEMO: https://omemo.top/.
ActivityPub is a JSON-based protocol for seems primarily built for social networks, with the DMing experience normally not being secure or particular fast. XMPP is largely for building networks for passing messages & client presence—which can be extended to support PubSub like MQTT. It isn’t normally built for social networks but Movim & Libervia have extended XMPP to be a social network.
Hmm. Looks like Libervia is working on bridging XMPP and ActivityPub, as well.
I was just thinking, I don't know ins and outs of it all, but ActivityPub is often compared to Matrix, so if XMPP is a better version of Matrix does that mean ActivityPub could be improved upon?
Don’t quote me on it, but I don’t believe Matrix could be extended to be a social media platform. It’s just more limited in its capabilities as JSON is not a very extensible format.
I don't know either, but ActivityPub definitely uses (a version of) JSON.
What's the problem with JSON? Just which characters it can use?
XML is meant for you to create & embed entire namespaced specification schemas that don’t have very strict limitations. JSON schemas are more ad-hoc than a built in since it isn’t a part of the spec or namespaced & IIRC Matrix uses events all stringly-typed by a message name instead of the XMPP approach which assumes already the message body can/will contain arbitrary data according to a XEP or other spec. I’m non as knowledgeable on the subject as I would like to be tho…
Aside: https://www.balisage.net/Proceedings/vol10/html/Lee01/BalisageVol10-Lee01.html