Remix.run Logo
snerbles 3 days ago

So I've hosted a federated Matrix homeserver for almost eight years now, with a few dozen active users. Beyond the 800 pound gorillas of networking effects and the need to be your own infra engineer (mitigated by things like your integrated server/client idea), there are a few key features that I feel keep people on Discord:

- No distinct voice channels with push-to-talk. Yes there's Jitsi, but it's not the same as the TeamSpeak/Ventrilo/Mumble style functionality that gamers have used for 20+ years. Solve this, and I think Matrix will see much more adoption for casual voice chat in the same manner as Discord.

- No server-specific display names. I have multiple screen names across multiple games/communities, and Discord accommodates that. Matrix (or at least Element+Synapse) does not.

- No path for server-specific invites. If I attempt to invite someone to myexamplehomeserver.net in the Element UI, they are instead directed to make a matrix.org account and are federated in. It works I guess, but it's shit for homeservers with closed registration that want to invite users to that homeserver. Writing an invite bot has been on my "I'll get around to it" list for a very long time now, and I know other homeserver admins have considered the same thing.

- E2EE is clunky. Yes, it is much better now. Yes, there are concerted efforts to improve this. Yes, it is an extremely hard problem. However, many times I have had users lose access to past messages because they were signed in to only one device and don't remember their keys. I understand the security aspirations, the proles do not and never will.

There are a lot of other little things like custom reactions, but I think the four above would do a lot to foster more Matrix adoption.

pcthrowaway 3 days ago | parent [-]

Mattermost is probably an easier self-hosted Discord alternative.

For $2/month you can spin up an instance on Pikapods, based on their community edition. If you want advanced features (available in enterprise editions) you'll need to figure out how to re-enable them by un-feature-flag-gate-ing the source code and recompiling (and at that point move hosting), or work it into the plugin system (which gives you tons of power)

It's not federated though

snerbles 3 days ago | parent [-]

Mattermost always struck me as more of a Slack alternative. Though the line between the two was always a big blur.

> It's not federated though

This is a big one for my server - our community has a handful of active "visitors" from other homeservers and the experience is pretty seamless.

pcthrowaway 3 days ago | parent [-]

OK, I've investigated Matrix enough to suspect it's not going to work for the things I've been using Mattermost for, but I'm curious to hear what your stack is (client and server software)?

It sounds like, if Matrix worked seamlessly (which is not the experience of... anyone(?)... in this recent thread https://news.ycombinator.com/item?id=44617309 ) it would give us federation and better identity access management (compared to the Mattermost community edition anyway) which would be really nice

It also has video calls built in... also really nice, but people are saying since they migrated from jitsi to their MatrixRTC, setup & admin have been a nightmare.

Element X seems to be the more popular client, though it sounds like, while faster than Element, many features (such as threading) are not yet available, and people have been lamenting the extreme sluggishness of Element

Arathorn 2 days ago | parent | next [-]

It is absolutely possible to have a Matrix deployment that works seamlessly. It's true though that a lot of people are very unhappy at the transition from Element to Element X, hence the recent complaining threads. You can see a response from me as Matrix project lead (and Element CEO) here: https://gist.github.com/ara4n/190ad712965d0f06e17f508d1a45b5.... Meanwhile, we're working hard at landing both threads and spaces in Element X (they're available behind feature flags already).

The only reason people seem to complain about Element Call being hard to set up is that it's new and unfamiliar and doesn't have much docs yet, and VoIP is always a pain from a firewalling perspective. It's a hell of a lot simpler to setup and run than Jitsi, for instance. But if you run it via ESS Community (https://element.io/server-suite/community) or even https://github.com/element-hq/element-docker-demo it should work fine.

snerbles 2 days ago | parent | prev [-]

Element X shines with large rooms - think joining rooms with 100+ active users and a lot of events to sync. Using multiple clients is not a problem either, I think I have at least 10 active sessions active with my current account. Element largely "just works" for my users with few grumbles, but that is definitely not the case for a lot of others here.

As for my stack, it hasn't changed much since this post: https://news.ycombinator.com/item?id=34784816