Remix.run Logo
cosmic_cheese 3 days ago

For Discord and maybe some others, I wonder if it’s just a packaging and marketing problem that just hasn’t been solved.

Yes there’s Matrix, but it’s not packaged in a way that makes hosting a node accessible and the way it’s marketed, there’s no clear benefit to typical users.

Imagine if instead, the client and server were one in the same and starting a server is as simple as running the client and clicking “new server”, with the software figuring the rest out. Then, on the marketing side you can sell it as a way to get features that Discord puts behind a paywall for free.

There’s no way that wouldn’t have a dramatic impact on take-up.

Flere-Imsaho 3 days ago | parent | next [-]

Definitely agree. Take a look at the number of Matrix clients:

https://matrix.org/ecosystem/clients/

The world doesn't need that many clients, it needs 1 or 2 really good ones that are well polished, supported and marketed.

This is a problem in other open-source ecosystems. Eg. We don't need more web browsers, we need Firefox to focus on being a great web browser.

Arathorn 3 days ago | parent [-]

This feels very strange: the clients on that page span a huge range of maturity and capability. If you put every email client or every web browser on a single page you’d get a crazy mix too - does that mean that email & the web have failed? Just the opposite, surely.

If you want to narrow it down to one or two really great ones which are well polished, supported and marketed just pick Element X, Beeper or maybe Fluffychat?

Flere-Imsaho 3 days ago | parent [-]

> If you put every email client or every web browser on a single page you’d get a crazy mix too -

And yet how many web browsers are actually well known and used by the average web user?

Safari, chrome and Firefox (if you're lucky).

My point is that if there are too many choices for users then the network effect is lost.

snerbles 3 days ago | parent [-]

When I onboard users to my Matrix homeserver, I point them to a preconfigured Element-Web URL and the Element mobile apps. I also mention that there are other clients out there - a handful experiment with them, most don't.

One discovery problem is this client had three rebrandings, from Vector to Riot to Element. I've noticed users have had a hard time realizing the Element is a client for Matrix - even when they're actively chatting on Element. Usually they just refer to our chat by the homeserver's name.

cosmic_cheese 3 days ago | parent [-]

> One discovery problem is this client had three rebrandings, from Vector to Riot to Element. I've noticed users have had a hard time realizing the Element is a client for Matrix - even when they're actively chatting on Element. Usually they just refer to our chat by the homeserver's name.

What this tells me is that having a canonical primary client with the same name as the protocol would do wonders. This doesn’t rule out third party clients, it just clarifies matters for users who don’t necessarily know what a client is and have trouble conceptualizing the protocol/service/client divide. Those who are technical enough will seek out their favorite client, but for everybody else chatting on Matrix means downloading the Matrix app.

snerbles 3 days ago | parent | prev [-]

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