Unpopular Opinion
Welcome to the Unpopular Opinion community!
How voting works:
Vote the opposite of the norm.
If you agree that the opinion is unpopular give it an arrow up. If it's something that's widely accepted, give it an arrow down.
Guidelines:
Tag your post, if possible (not required)
- If your post is a "General" unpopular opinion, start the subject with [GENERAL].
- If it is a Lemmy-specific unpopular opinion, start it with [LEMMY].
Rules:
1. NO POLITICS
Politics is everywhere. Let's make this about [general] and [lemmy] - specific topics, and keep politics out of it.
2. Be civil.
Disagreements happen, but that doesn’t provide the right to personally attack others. No racism/sexism/bigotry. Please also refrain from gatekeeping others' opinions.
3. No bots, spam or self-promotion.
Only approved bots, which follow the guidelines for bots set by the instance, are allowed.
4. Shitposts and memes are allowed but...
Only until they prove to be a problem. They can and will be removed at moderator discretion.
5. No trolling.
This shouldn't need an explanation. If your post or comment is made just to get a rise with no real value, it will be removed. You do this too often, you will get a vacation to touch grass, away from this community for 1 or more days. Repeat offenses will result in a perma-ban.
6. Defend your opinion
This is a bit of a mix of rules 4 and 5 to help foster higher quality posts. You are expected to defend your unpopular opinion in the post body. We don't expect a whole manifesto (please, no manifestos), but you should at least provide some details as to why you hold the position you do.
Instance-wide rules always apply. https://legal.lemmy.world/tos/
view the rest of the comments
That's true! I tried looking into using it because it seemed pretty good, but the fact that every simple little feature is a protocol extension is a flaw as well:
e2e encryption, federation, communities and community features (which are impotant points of focus for Matrix), even sending an image or an audio message, and synchronizing chat history (!) are not guaranteed to work on all servers/clients! I'm not sure if this is even possible on Matrix
Same goes for XMPP 😅 XMPP seems to be losing adoption (instead of feeling more mature) even though it's a 27 year old protocol, while Matrix (started in 2014) is gaining 😅 XMPP seems to have ~3 clients on F-Droid (and their forks) which look like a default SMS app, while Matrix clients, SDKs, bridges etc continue to pop up on flathub and F-Droid
(I don't think these alone should be a reason to not use XMPP! I'm just mentioning it as an answer to your point. However, I think that the fact that image support is an optional after-thought of the protocol, shows the age of the protocol a bit)
(Also please correct me if I'm wrong! I haven't looked into it in a while, but the ecosystem definitely felt less consistent than Matrix's)
In any case, while good points can be made for either protocol, in the meantime centralized services (like Signal) are gaining adoption, which are not great things to rely on with Chat Control (etc) on the horizon 😕
We should try promoting, using, helping to develop anything we believe is the best and seems to have more potential and be more resilient!
I also like the work that's happening on SimpleX.chat (even though I'm not sure if it's going towards "Web3"-territory), since the distributed design and the privacy features (no UIDs, support for many profiles, quantum-resistant encryption) may prove more resilient to the Chat Controls of the future 🤔 At the same time it seems to have a more "centralized service"-feeling UX and user on-boarding, while in fact being less centralized
I actually do agree with you quite a lot. XMPP has two important issues: everything is an extension, including encryption (n 1998 we were still using telnet...) and relying heavily on XML, which was a good idea en 1998 but now we have better formats.
Thanks for the fair arguments. It may seem I'm defending XMPP, actually, I'm not... I ran a server and it was not great. I was trying to compare an --as you say-- 27-year-old protocol with a modern one, and Matrix doesn't seem to be significantly better. It's a shame, because I'd love to use it, but it just does not work well.
Everything being an extension is a good feature. And given how the monolithic nature of the Matrix protocol has not solved the problem of client fragmentation and partial spec implementation that they originally pointed at being a problem in the XMPP ecosystem proves that this was an naive assumption.
As for XML: unless you are tying to shoehorn a chat protocol into HTML5 like Matrix does, json is a horrible format. There are many good reasons to use XML and from a client developer perspective you don't really need to deal with it that much if the verbose syntax isn't to your liking.
the actual unpopular opinion: xml was, and continues to be a good choice for a chat protocol
You're right! I thought about it as I was typing, that having a mechanism to evolve in the future is important! And both protocols can evolve over time
Though I think that the "Matrix evolves, server implementors should follow the specification" model/mentality may work better (even if not all implementations follow it, but most probably will)
Than the mentality of "the base XMPP protocol only sends text messages, everything else is optional, before joining a server and downloading an app users are advised to check if they support images, encryption, federation, and chat history synchronization"