My complaints are mostly about UX and privacy. If all you need is simple messaging, it works fine if not just a little clunky. I hate signal as far as I’m concerned it’s basically a sigint op; but I’d usually recommend it if the simple messaging case is all you care about.
For matrix, the client landscape is a clusterfuck and feature adoption is lousy at best. How those features are communicated to a user is plainly bad, or lacking even in the best cases.
Use element and try to make a voice call with your friends: Is it encrypted? How do you know? Is it only the one-on-one call or is the Jitsi group encrypted too? Just TLS or e2e and when can your homeserver or other federated servers see? What about video streams? message reactions? Are media attachments? On disk? Has there been any work at all towards obfuscating or otherwise protecting metadata? What relays are being used and for what features? On and on and on.
All of these questions have answers. The problem is that they are communicated very differently and the answers vary per feature, per client, per room.
I vaguely remember, when I was testing clients, a one-to-one call had encryption drop silently because the other client didn’t support it, and there was no visual signal of that fact in the app at all. Frankly, it’s just disturbing.
And that’s just the technical things that I care about, that I don’t want to dig into the source code or pull out wireshark for. Normies care less, but will get tripped up by the recovery key and verification systems before even having to worry about that. Not to mention that the key hygiene of most people is absolutely terrible. Even some of my very technical sysadmin friends wind up with a bunch of unused device identities in their chains; some clients don’t even show them at all.
/matrix rant
But yeah it’s a fine substitute for discord if you’re willing to give up some features. With a good home server, it can be pretty painless day-to-day.
For what it’s worth, I use it daily with no significant trouble.
I guess it depends on your usage patterns.
My complaints are mostly about UX and privacy. If all you need is simple messaging, it works fine if not just a little clunky. I hate signal as far as I’m concerned it’s basically a sigint op; but I’d usually recommend it if the simple messaging case is all you care about.
For matrix, the client landscape is a clusterfuck and feature adoption is lousy at best. How those features are communicated to a user is plainly bad, or lacking even in the best cases.
Use element and try to make a voice call with your friends: Is it encrypted? How do you know? Is it only the one-on-one call or is the Jitsi group encrypted too? Just TLS or e2e and when can your homeserver or other federated servers see? What about video streams? message reactions? Are media attachments? On disk? Has there been any work at all towards obfuscating or otherwise protecting metadata? What relays are being used and for what features? On and on and on.
All of these questions have answers. The problem is that they are communicated very differently and the answers vary per feature, per client, per room.
I vaguely remember, when I was testing clients, a one-to-one call had encryption drop silently because the other client didn’t support it, and there was no visual signal of that fact in the app at all. Frankly, it’s just disturbing.
And that’s just the technical things that I care about, that I don’t want to dig into the source code or pull out wireshark for. Normies care less, but will get tripped up by the recovery key and verification systems before even having to worry about that. Not to mention that the key hygiene of most people is absolutely terrible. Even some of my very technical sysadmin friends wind up with a bunch of unused device identities in their chains; some clients don’t even show them at all.
/matrix rant
But yeah it’s a fine substitute for discord if you’re willing to give up some features. With a good home server, it can be pretty painless day-to-day.