No it doesn’t, matrix was designed by people with no concept of ux. It focuses on things that are technically correct but something average people won’t put up with. Like the forced verification of devices, normal people don’t care and don’t understand what that even is and will be annoyed that every time they try to log in they are prompted to insert a stupid key just so that they can see their chat history.
Doesn’t help that tons of the clients especially the web one can’t be bothered to remember being authenticated and you have to do it literally every time but even with that fix just having to do that in general is going to put people off.
Then there’s just a bunch of base protocol stuff that’s dumb the way they finally implemented custom emoji is the stupidest thing I’ve ever seen and makes what should be a simple easy click to add a sticker and then use it turn into this complicated mess that nobody’s going to bother with. On a technical level it made sense sure but on a user experience level it makes no sense at all.
And I say this is someone that self-hosts basically anything I can get my hands on, I’ve got Seafile, immich, piped, jellyfin, microbin, among various others. I keep trying matrix and keep finding myself getting annoyed enough to stop using it








I think you misunderstand. They are making technical decisions that are incompatible with ux decisions. In order to make a better user experience they would need to change how the protocol was made, thus undoing thing that they chose for technical reasons.
Like the way they chose to do the custom emoji makes sense on a technical level for a de Federated protocol but it also is fundamentally incompatible with a good user experience. Same with the forest verification of devices that’s bad ux even if it is technically better