Live data from Hacker News

XMPP vs. Matrix

news.ycombinator.com

61–70 of 92 posts

Re: XMPP vs. Matrix

#61

I use XMPP and then Cheogram for people who don't want to figure it out. That way for people who don't care everything just works and for people who do they get a rich experience with E2EE. Unlike eg iOS/imessage I don't force them to use a different OS for this and I can talk to everyone from my laptop. Everything is 100% self hostable. I don't know why you would use Matrix. Self hosting is awful, the clients are a…

> it was bootstraped by the Israel based company that runs US telephone surveillance

That argument, again.

It's been some 7 years since Amdocs withdrew all funding, forcing the devs to create their own independent thing. Since then, as far as I'm aware, the protocol has been developed in the open, with lots of external contributors. There's plenty of implementations, both client and server. How are its roots relevant? Are you going to say the internet is dubious because it was initially researched on by the US military?

Anyway, your other points are relevant, though it would be nice to have some more details.

Re: XMPP vs. Matrix

#62
post #6

Also relevant https://soatok.blog/2024/08/04/against-xmppomemo/ recently. It's quite critical of some of the code quality of common implementations as well as the fracturing across different clients. As for Matrix, probably element is the main client you want to use. I use Nheko on Linux.

> Also relevant https://soatok.blog/2024/08/04/against-xmppomemo/ recently. Signal, Matrix, Telegram, XMPP; Use whatever you want. But there is a lot of FUD if not outright lies in that blog post. The author looked at Conversations for all but five minutes, desperately trying to dig up some dirt.

>> "But there is a lot of FUD if not outright lies in that blog post. "

For example...

Re: XMPP vs. Matrix

#63
post #61

I use XMPP and then Cheogram for people who don't want to figure it out. That way for people who don't care everything just works and for people who do they get a rich experience with E2EE. Unlike eg iOS/imessage I don't force them to use a different OS for this and I can talk to everyone from my laptop. Everything is 100% self hostable. I don't know why you would use Matrix. Self hosting is awful, the clients are a…

> it was bootstraped by the Israel based company that runs US telephone surveillance That argument, again. It's been some 7 years since Amdocs withdrew all funding, forcing the devs to create their own independent thing. Since then, as far as I'm aware, the protocol has been developed in the open, with lots of external contributors. There's plenty of implementations, both client and server. How are its roots relevant…

People certainly bring that up when they talk about TOR.

Re: XMPP vs. Matrix

#64
post #6

Also relevant https://soatok.blog/2024/08/04/against-xmppomemo/ recently. It's quite critical of some of the code quality of common implementations as well as the fracturing across different clients. As for Matrix, probably element is the main client you want to use. I use Nheko on Linux.

I have criticized omemo in the past -- it breaks backwards compatibility way too readily resulting in XMPP clients not being able to talk to each other in levels that I hadn't seen since the Jingle debacles. However I just can't stand this article's tone (the accompanying imagery doesn't help), and then he has the balls to complain about the rude response he gets from the spec authors (even showing it off as if to el…

> He keeps criticizing one client while trying to pass it off as criticism of the specification

Can you point out where this happens? I didn't come away with this impression at all.

Re: XMPP vs. Matrix

#65
post #62

Earlier quoted context omitted.

> Also relevant https://soatok.blog/2024/08/04/against-xmppomemo/ recently. Signal, Matrix, Telegram, XMPP; Use whatever you want. But there is a lot of FUD if not outright lies in that blog post. The author looked at Conversations for all but five minutes, desperately trying to dig up some dirt.

>> "But there is a lot of FUD if not outright lies in that blog post. " For example...

* Conversations uses two different OpenPGP implementations. (It doesn’t)

* The auth tag truncation was 'silently' introduced in the spec. It wasn’t. The author retracted that but only barely

* ominously pointing out that Conversations has a SASL implementation (In fact Conversations can use that to detect some MITM attacks; which is pretty cool)

* ominously pointing out that Conversations has a certificate parser (yes and so does almost everything that uses TLS)

Re: XMPP vs. Matrix

#66
post #7

In order to answer this question it is important to understand the fundamental difference between XMPP and Matrix. XMPP was invented at a time, where communicating online meant sending a message from one device to another. However, the modern expectations for messaging apps are much more than that. Sending media, using multiple devices, deleting messages, editing messages, read receipts, notifications when typing, gr…

> Running a Matrix Synapse server is quite a commitment Commitment in what way? I found it fairly easily to set it up with a domain of my own.

Maybe it’s gotten a ton better but a couple years back setting up and managing the whole stack had a “shitty on purpose so you pay for hosting” vibe. I noped out in a hurry—and I’ve built and managed some comms-related stuff that ought to be an order of magnitude more fiddly than just running a Matrix server.

Re: XMPP vs. Matrix

#68
post #24
post #7

In order to answer this question it is important to understand the fundamental difference between XMPP and Matrix. XMPP was invented at a time, where communicating online meant sending a message from one device to another. However, the modern expectations for messaging apps are much more than that. Sending media, using multiple devices, deleting messages, editing messages, read receipts, notifications when typing, gr…

Disclaimer: I'm an XMPP server developer and work on [MongooseIM]( https://github.com/esl/MongooseIM ). > XMPP was invented at a time, where communicating online meant sending a message from one device to another. However, the modern expectations for messaging apps are much more than that. Sending media, using multiple devices, deleting messages, editing messages, read receipts, notifications when typing, group chats…

I was an xmpp user back in the early 2000s and hosted a few instances myself. I think it would be an interesting experiment to leave xml behind and start using something like yaml to reduce message overhead. Never got far enough to implement it myself, though.

Re: XMPP vs. Matrix

#69
post #13

Earlier quoted context omitted.

I have criticized omemo in the past -- it breaks backwards compatibility way too readily resulting in XMPP clients not being able to talk to each other in levels that I hadn't seen since the Jingle debacles. However I just can't stand this article's tone (the accompanying imagery doesn't help), and then he has the balls to complain about the rude response he gets from the spec authors (even showing it off as if to el…

The main reason we won't list it on privacyguides.org is the encryption is not always on by default. There are two major problems, the implementations and the fact the spec isn't specific. I'm not particularly bothered by the imaginary, the dude is a furry what do you expect? Some furry bloggers do have pictures throughout their blog posts to split things up and lighten things. As for the reply from the spec author,…

solid points!

Re: XMPP vs. Matrix

#70
post #7

In order to answer this question it is important to understand the fundamental difference between XMPP and Matrix. XMPP was invented at a time, where communicating online meant sending a message from one device to another. However, the modern expectations for messaging apps are much more than that. Sending media, using multiple devices, deleting messages, editing messages, read receipts, notifications when typing, gr…

> Running a Matrix Synapse server is quite a commitment Commitment in what way? I found it fairly easily to set it up with a domain of my own.

Dealing with stuff like running a state compressor regularly, manually removing records it bails on. Also having fast enough resources to handle situations like someone joining the Matrix HQ channel (it's the biggest one) and pulling in like 70GB of database bloat. I hit a bug a month or two back where sliding-sync (the new protocol Element X uses) was causing huge amounts of database bloat, they fixed it but my instance was running something like 200GB on a server with less than 10 people.

This ansible playbook helps a lot but it's still periodic annoying maintenance and it's still way more resource intensive than it should be: https://github.com/spantaleev/matrix-docker-ansible-deploy

EDIT: I run it on a hetzner dedi, I have run it on Apple fusion drives in the past and consumer SSD's and it was a terrible time. Need high IOPS so things don't grind to a halt on intensive db operations (like joining HQ channel lol)

Post reply on HN