Personally, Spaces is one of the nicest chat-organization tools I've found in an app so far. I can finally group things how I like, have duplicates, and share groupings with other people. The fancier stuff with Spaces isn't super trivial, but the basics work by just tapping obvious buttons on screen.
Sub-folders would be even better for large-volume stuff like throwing multiple Discords worth of things into a Space, but I don't currently need that.
---
E2EE I have routine fights with, so yeah - Element is not great yet. But it's good enough that my siblings and I are seriously considering converting us + my non-technical parents over, now that Hangouts is horrible and we all hate how flaky it is. And it's a much, much better experience than Signal. The only other contender at the moment for that migration is Telegram (which is absolutely stellar, they're doing an amazing job).
Element isn't terrible, it's just more like Slack than Signal or WhatsApp (and I like that, different use cases). Other clients, as you mentioned, provide the latter. There's space for everyone.
Do you have any alternatives? IRC? I use Matrix to communicate with friends so I'm stuck on it for now; I too am very unhappy with the overall UX and find it painful to use.
As mentioned in the comment you're replying to, Element is just one client for Matrix, and there are others like Fluffy Chat that might suit your tastes better. Try some other clients before giving up on Matrix.
I have tried a few others, but from further investigation the issue seems to be due in large part to Synapse being incredibly slow. If you watch /sync a few times in Element (initial syncs are even worse), the TTFB for /sync is incredible. On top of this, you have Element taking up gigabytes of RAM for seemingly nothing at all, so my laptop regularly kills it due to OOM (This could also be in part due to Flatpak shared libraries / sandbox bloat).
I'm very much hoping they will hurry up with Sync v3, which would make this protocol a hell of a lot easier to use (for me, and a lot of other people). Right now booting up Element (or any other Matrix client, this is really a protocol issue) feels like a major chore, and it's something I prefer to avoid if I can. This is also why I keep Telegram installed on both my mobile, desktop and laptop.
Aside from Element, there isn't really much choice on Linux anyway. Fractal is ancient and gets stuck at "Syncing", Nheko takes up gigabytes of memory on initial sync until OOM'd, FluffyChat doesn't really work on my desktop (neither does NeoChat, Quaternion, Spectral), etc. etc. If you name a Matrix client, I have most likely tried it before and it didn't work (aside from Fractal Next, which doesn't have a release yet FWICS).
I've also considered hosting some sort of XMPP service, then bridging my Matrix account to said service so I don't have to endure the poor UX of various Matrix clients. Then again I'm not sure how the end-to-end encryption would work with that, and I would like to keep that if possible.
I have never experienced (or had to endure) an app with such poor UX as Element. Nothing seems to work quite as it should, sometimes it just plainly refuses to work, and other times you get issues which have been reported multiple years ago to the Matrix team (and still have yet to be fixed).
At this point I am very worn out of having to use Matrix, however due to my moderational duties I have no other choice.
The Matrix team had already confirmed that e2ee with XMPP is a 'contradiction in terms'. That's one of the reasons why I believe working on improving existing Internet Standards is better than switching to another trendy, non-standard protocol.
> The Matrix team had already confirmed that e2ee with XMPP is a 'contradiction in terms'.
Ahh, thank you telling me. I guess that's off the cards then.
> That's one of the reasons why I believe working on improving existing Internet Standards is better than switching to another trendy, non-standard protocol.
As much as I hate to admit it, I totally agree with you. While I personally quite like the API's and SDK's (although the JS SDK is pants, I've worked with it before), the UX of the client(s) just don't feel there yet, compared to what alternatives are offering.
I love XMPP, but UX is a client-side concern, not a protocol problem (although some protocols make it easier/harder to have good UX). Both XMPP and Matrix could have great clients, although i personally find most Matrix clients to be more polished than XMPP clients (at the price of much higher resource usage for Element due to Javascript crap).
Some polished XMPP clients include dino/gajim (desktop) and conversations/siskin (android/iOS). If you're looking for a unified-brand client/server distribution, snikket.im is a pretty cool project and could use help and funding.
It has improved tremendously, but it's still nowhere on par with solutions such as Telegram or Discord. As much as I like Matrix, the clients (which I think is where the UX lies for me, as I think it's expected that it takes effort to set up a homeserver), are horrible.
Have you seen Cinny?[1]
It's a very Discord-like client that I'd honestly the best I've used thus far. I instantly switched to it as mt daily driver on the computer and even made a donation to help out the maintainers.
The thing I miss the most is localization, but I get it's not a big priority. I just like translating things, seeing how that can help people.
I'm using it right now and it's the best on I've found. But it doesn't support the up-arrow-to-edit feature, which drives me crazy. There's an open issue for it, so I'm hoping it gets resolved (or I might try to do it myself somehow).
Other than that, Cinny doesn't address the problem of Element on mobile not working very well. FluffyChat's UI isn't very nice either.
> There's an open issue for it, so I'm hoping it gets resolved (or I might try to do it myself somehow).
Hehe, I hopened with the inte tion to do it myself too, but never got around to doing it. It would require me to learn a bit of react and I don't have the time for it atm :/
The one thing I would like to see fixed is better cross-device verification. Discord solves this in an elegant and painless way with QR codes. Element has users manually compare emoji or codes and perform steps. Anecdotal: my last experience was less than good. For some reason it tried to verify twice, but even after I verified both times, it was still showing device listings as unverified.
I don't know what went wrong, but it still needs work. I'm glad to see that it's easier than last time I tried that.
Verifying is only part of the promised solution. Assuming you've verified your own or someone else's device, Element still marks some messages as untrusted/unverifiable. Especially ugly if you get a new device or want to deprecate an old one.
The promised functionality doesn't really work reliably enough to protect against MITM, causes ugly warnings, but has been totally unactionable for years now.
Cross-device works with QR codes, unless your client doesn't support it in which case you can use emojis. For user verification emoji actually makes sense, since it basically allows you to remotely verify without access to the QR code.
You can do verification with either emoji or QR codes. Honestly I think the emoji version is far better for cases where you're verifying identities without meeting in person (one person says what the first 4 are, the other says the last 4).
I had issues with verification a while ago but recently it's worked perfectly fine.
Sub-folders would be even better for large-volume stuff like throwing multiple Discords worth of things into a Space, but I don't currently need that.
---
E2EE I have routine fights with, so yeah - Element is not great yet. But it's good enough that my siblings and I are seriously considering converting us + my non-technical parents over, now that Hangouts is horrible and we all hate how flaky it is. And it's a much, much better experience than Signal. The only other contender at the moment for that migration is Telegram (which is absolutely stellar, they're doing an amazing job).