14 comments

[ 3.0 ms ] story [ 32.6 ms ] thread
The pain in admin'ing a server is real - even for my tiny one! I haven't bumped into these specifically with tuwunel, mostly SSO issues that have been resolved.

But man being able to have all my chats bridged to one thing where I can comfortably sit in a client I control and can freely modify? The feature set and integrations available are really tough to beat.

I feel this. And it doesn't even cover the very first conversation I have with my users.

  "You want to install Element"
  "But I want Matrix."
  "They call it Element now."
  "I want to speak on Element?"
  "No you want to speak on Matrix using Element."
  "Uh."
  "Don't worry about it. Look, just install Element."
  "Well, I see Element and Element X."
  "Oh right. Well, do you want to video chat?"
  "What?"
  "Element X doesn't video chat well. If you want video chat and a more featureful but slower chat experience, install Element.  If you don't care about reliable video chat and don't mind rooms jumping around and not organizing them, but you want to subscribe to a zillion of them, choose Element X"
  "What?"
  "Oookay, let me explain. See, once there were--"
  "Can't I just install the Matrix app?"
  "It's Element or Element X. Do you want to video chat?"
  "Um probably?"
  "Well then Element, not X, that's the one you want to start with."
  "Start with Element without the X?"
It's so needlessly complex.
Are there any real options in this space for something that is

- E2EE

- Large group capable (100+ users)

- FOSS + self hostable

- Not riddled with security issues

- Relatively easy to use for iOS and Android users (safe for normies)

I help run a Matrix server for people who are at risk from the current administration and I can attest to all of the issues mentioned plus a few more.

I'd rather not move to something as hostile as Discord and while we've tried Stoat it's infinitely more buggy and the lack of iOS apps is causing problems.

Rocket chat is interesting but E2EE is early in development, lots of security issues at last check.

Simplex isn't going to be better for large group stuff, it has the same fundamental sync issues Matrix does and the devs are more interested in crypto than fixing that.

Doesn't XMPP check all those, and more? I run my local _ejabberd_ for a decade and some, and I'm joined to a couple 100+-users rooms. On my phone, I have a whatsapp-like experience with _Conversations_, that even the least tech-savvy in my circles use happily. On the laptop, I have _Gajim_, which is more "banquet-style" and serves to follow along fast-paced large rooms, most of which happen to be on IRC, but I don't even mind that, thanks to the _biboumi_ bridge which unceremoniously connects me there as if I was a regular IRC client. I also keep an eye on _movim_ which promises a more discord-like experience: it has gamers-style voice/video/screen-sharing rooms, it has spaces (although the paint isn't completely dry on those), and it's working on scaling-up calls to very large rooms by having galene as a SFU.

What I find also amazing in all this is that all the client/server/bridge names I brought up are independent and healthy projects. XMPP is very mature and decentralized. Not just in theory by nature of its protocol, but practically/politically by its many implementations across many stacks and implementers across many countries.

The unfortunate surprise with self-hosting Matrix is that Element X requires sliding sync and Element X cannot be installed on macOS if you have System Integrity turned off (I assume they store the keys in the Secure Enclave or something).

Conduit gained support for SS fairly recently so that’s good.

For a decent client, I’d recommend Cinny. There’s currently a fork of Cinny in development but it doesn’t work with my self-hosted server right now.

I host a matrix server and have three friends in it. One or all of them being unable to decrypt messages happens every few months and there’s no easy way to learn WHY do I reboot the server.

Annoying, but the other chat apps have trade-offs I don’t care for.

Remark half-way in the rant they are using dendrite, an experimental matrix server implementation that has been abandonned. Thus ranting about it is cheeky at best.

I have been using synapse for years with little issue.

Seeing such issues with Matrix and other open, common-good projects, I get the feeling like they just aren’t architected for good everyday-user UX.

Matrix is making real efforts to change this with Matrix 2.0, but still seems to suffer from design debt in many places.

I think this is partially due to the people they attract who largely work on the projects for free: Tinkerers who care about some form of technical elegance for the fun of it. I’ve had a few conversations around FOSS, including Matrix, at this point, and a not-too-uncommon response to my relayed criticisms was “then the user is wrong”.

I can’t tell them what to do. I could tell them what to do if they want adoption by normal people, but many don’t seem to be interested in that and you really can’t argue with that.

If adoption by normal people is a project goal, you have to seriously engineer for that. As much (partially fair) criticism as Gnome gets, they managed to build a desktop package that can seriously be used by normal people in the real world.

I used to use Matrix. Its user experience was sub par, but in the end it rendered itself unusable to me before I had decided to abandon it of my own volition.

As far as I can tell it isn't so much a protocol as a collection of apps talking different protocols while claiming to use the same protocol.

I can relate. I run Synapse for only 2 users, and every update is like a lottery. "Unable to decrypt" most often. Logout 2-3 times, clear cache, then suddenly it works again.

IRC was so easy. :(

said that, i manage a matrix instance in my company for more than 500 users, and everything works just fine. I like their device authorization models, their stack is easy to maintain and update. Everything works flawless. I used to maintain rocket chat in the same order of magnitude and it was a mess. I deploy it in Kubernetes + Authentik and I am pretty happy with the results. Long live to Matrix/Element!
The sad part of it, way back we had to deal with icq, msn, Yahoo and then had the chance to reunite every one with XMPP. But that dream failed. Now we have a gazillion of services with anoying things like FOSS projects using closed source services like WhatsApp as their community base.