logoalt Hacker News

bsaulyesterday at 12:31 PM33 repliesview on HN

I wonder why matrix isn't more widerspread at this point. It's open, it's e2ee, it works, it has client lib for integration with any tool..

What makes it not more popular ? Is it the federated approach ? The client applications that don't look really fancy ?


Replies

Aurornisyesterday at 2:33 PM

> What makes it not more popular ? Is it the federated approach ? The client applications that don't look really fancy ?

It’s not that the UI doesn’t look fancy. The overall experience of using Matrix has a lot of catching up to do. Like many others on HN I was enthusiastic about it early on, but I’ve been so worn down by all of the little problems, random re-authentication issues that nobody can explain, and missing features that I found myself avoiding using it unless I really needed to talk to someone I couldn’t contact any other way.

You can find isolated success stories about small groups who successfully use it for their group chat, but at the root of all of those stories is always one person who takes the role of very dedicated IT person to keep it all running and walk others through steps to fix it when it breaks.

They’ve been churning a lot on features and design, which has added another layer of fatigue on top of it all. It’s hard to even discuss Matrix any more because every negative experience will get waved away with an explanation that it was a problem with an old app or version and you just need to try Element X and Matrix 2.0 or the newest release. However, it’s felt that way for years. I’ll revisit it again in a year but for now I’ve reached my limit for how much time I can put into trying to make a project work and stay working.

show 2 replies
snorremdyesterday at 1:23 PM

When me and a bunch of friends and acquaintances switched away from Slack a little under a year ago (I think) we looked into Matrix. One of the primary requirements was that even our non-technical friends should be able to use it.

At the time Matrix/Element had recently launched their Matrix 2.0 efforts and I tried setting up the whole stack without resorting to their all in one shell-script meant for non-production use. I did not mind hosting four different servers (Synapse, Matrix Auth Service (MAS), Call, etc), but did find the integration and config job a bit tedious. The main blocker though was the lack of an invite-system in the new Matrix Auth Server. Also the fact that the Element X app uses a new Livekit based call server while other clients/apps use a different approach is also something not great.

We ended up going for Mattermost. One service easily hosted with Docker. One app, and easy invites. While I think federation would be cool, right now Mattermost was a bit simpler to get up and running.

Element seems more focused on enterprise and government contracts than self-hosters. I think this is fine, they need to pay their bills. But Matrix 2.0 for self-hosters might need a better story right now.

show 1 reply
galbaryesterday at 12:54 PM

I am a daily user, family and friends chatting on Matrix.

My take is that there are two layers of friction:

a) people that care about chat encryption and would be willing to change, already did, to Telegram and/or Signal. "I'm not going to install yet another chat app" is a real answer by a friend of mine

b) no one wants to either host their own server, nor pay someone to host it for them. If it wasn't for me and a one of my friends, none of the people I chat with daily would be on Matrix.

And yes, there is the matrix.org server. Out of the ~13 people I chat frequently with, 1 is on matrix.org. "What's the point of changing apps if I'm still going to be using the centralized server" is another answer I've gotten.

I don't know what the solution to this dynamic is other than us, the power users, setting it up and paying for the group of people around us.

show 4 replies
Anonynekoyesterday at 1:30 PM

Compared to Telegram, it feels like using a laggy MSN Messenger. The experience, both client and server-wise, just feels very unpolished. It's no single big thing, it's more like death by a thousand cuts.

I was bullish on Matrix because it's so extensible, but in the end I realized that only the default client experience matters as that's the one everyone will be using. And it just isn't there yet. In the end, all the group chats I was in migrated to Discord or Telegram, so I had no more reason to use it...

show 1 reply
BLKNSLVRyesterday at 12:55 PM

I ran a server for a while a couple (maybe a couple of couples) of years ago, and client devices periodically disconnected and had to be re-setup / re-authenticated from scratch, losing the chat history and being a general hassle. It happened often enough that I got jack of it.

I like the idea, a lot, but the implementation at the time annoyed me away from it. I just don't have time / motivation at the moment to have another go. We ended up on Discord for family communication and it works well. I know Discord is on the lower end of 'one of the bad guys', but for the same reason I don't re-setup Matrix I don't move off Discord. At least it's not WhatsApp...

I did try to get them onto Signal, but I don't think Signal did group chat back then - which means it must have been before 2020.

nkmnzyesterday at 12:44 PM

Search is essentially broken and completely useless. If I’m mistaken, maybe someone might chime in and explain how I can make it work. But right now, the only way to search for messages is to export them and search in the text file.

show 2 replies
greentea23yesterday at 8:30 PM

Popularity is irrelevant imo, it's a general purpose FOSS tool. Ignore Element and matrix.org, the open protocol is what matters. These features are useful even if matrix never gains any network effect: 1. talking among a small-ish specific group that needs sovereign communication, e.g. when forming a company or a tight knit in person friend group 2. only data limit is the size of my harddrive 3. bridge to every other popular protocol 4. personal bots and automation with no restrictions 5. Unlimited and customizable clients with no restrictions 6. Combinations of 1-5.

Can't speak for non-self hosters or people who aren't serious about chat, but for chat enthusiasts who can setup a server with bridges and bots, matrix is incredibly useful.

palatayesterday at 3:13 PM

I was very enthusiastic about Matrix a few years ago, but my experience has been relatively bad and I lost interest.

Apart from the experience, I think that there is a fundamental issue in the way Matrix is built: the Matrix servers have access to a lot of metadata (at least last time I checked, but it feels quite fundamental to the protocol).

ufmaceyesterday at 2:55 PM

The best way to understand why it isn't widespread is to spend 10 minutes attempting to use it to actually chat with some people you know. I don't know which issues you'll run into, but it's virtually guaranteed you'll run into a variety of incredibly dumb and inexplicable ones.

cooliusyesterday at 12:41 PM

For me the issue that prevented me from really using matrix is that none of the big clients support multiple servers. As a non enterprise user, this has prevented me from seriously adopting it several times.

show 2 replies
tapoxiyesterday at 12:50 PM

Enterprises get Teams for free with O365, or use Slack if they really care about the experience.

Most individuals don't care and use iMessage/WhatsApp. Those that do use Signal since it's dramatically easier.

show 2 replies
WhyNotHugoyesterday at 8:22 PM

Who exactly is the target audience?

People who are really into e2ee and privacy use Signal.

People who want open, federated networks, use XMPP.

People who want something fancy with all the features, etc use Telegram or whatever.

Matrix basically has a lot of hype and marketing around it (presumably due to being VC funded), but it's hard to see any appeal beyond that. And the protocol and spec are an absolute mess.

LeelaAIyesterday at 1:17 PM

I enjoy self hosting stuff with Docker. Matrix/synapse is one of the more difficult / PitA projects I’ve ever gotten up and running.

mightyhamyesterday at 1:49 PM

I publish a Firefox plugin and needed help a few years ago. Not to get too far down that rabbit hole, but they suddenly blocked my plugin because they couldn't build my source code, even though the issue with their build environment was pretty obvious. Anyways, I had to use their Matrix support channel and they recommended Element. I was immensely frustrated with how buggy the experience was, and it turned me off from ever trying it again.

show 1 reply
Fabricio20yesterday at 5:07 PM

Personally what drove me away was all the thousands of little annoying things that you just dont have to deal with on other apps like Telegram or Discord or Slack. The final straw for me was the 2nd time losing all chat history because I got logged out on my browser and when logging back in and providing the super secure authentication key and resynchronizing, messages older than 7 days still didn't decrypt on all chats so I just lost all of that. Plus Element client being mega laggy and stuff (though I had a smoother experience with the third party Cinny client).

pocksuppetyesterday at 3:53 PM

It doesn't work very well. To join a room by address, you type the address into several boxes until you find the right one. If you log out, all your private messages are deleted because they were encrypted and the key is saved nowhere.

show 1 reply
broken-kebabyesterday at 1:59 PM

Matrix is not out-of-the-box thing.

For hosting it you really have to go through some trial-and-error before it works as you'd like, and most self-hosting enthusiasts have pretty short span of said enthusiasm.

For users its easier, but there are some idiosyncrasies in terminology, and concepts.

There are docs but they really would benefit from human editing to become fully useful.

Synapse in particular has a problem of existing in two places on GitHub, and the one which is obsolete somehow comes first in searches, and appears in AI responses constantly. Which I guess shoots quite a lot of first tries in their steps.

domoritzyesterday at 1:59 PM

The UX has many rough edges especially in the default element apps. UX was the primary reason my university department passed on switching to matrix from slack so far.

andylynchyesterday at 12:45 PM

I think it’s a few things

- lots of places kind of Teams by default - or Slack or discord m, even WhatsApp - or in intensive cases, things like Refinitiv, Bloomberg, and, Symphony , which is kind of federated, but adds all the automation and also governance stuff needed for 100MM trades via IM and the like.

show 1 reply
zeec123yesterday at 3:24 PM

The fact that a “contact” is just a room with me and my peer and renaming my contact changes the room name for both of us tells me the UX is an utter failure. How can this be acceptable?

megousyesterday at 1:05 PM

Bloated server implementation with lack of alternatives and a complicated protocol.

maelitoyesterday at 6:20 PM

300 million users, not bad though.

show 1 reply
jasonfrostyesterday at 1:08 PM

I don't remember why but I had to download a separate notification app that pushed notis

netdevphoenixyesterday at 1:25 PM

Consensus. People like to follow what the majority does even if it's suboptimal.

show 1 reply
uoaeiyesterday at 5:17 PM

It's akin to using Plex v Jellyfin for serving media files to others. If they're not technically savvy they really don't want to have to think about networking protocols and their fragility... so you just deal with Plex because at least it turns down the volume on constant calls to your support desk / personal mobile phone.

show 1 reply
tormehyesterday at 2:04 PM

It's a bit shit at being WhatsApp. Slow, buggy, and feature-poor. The unique selling points are very compelling, but only for a small niche. Fortunately for Matrix, that niche includes a lot of places with big budgets, but it does not include consumers.

muninyesterday at 1:09 PM

Matrix is an unserious project and the client ecosystem is a train wreck. The server ecosystem is not much better. The Element people, who are kind of the default Matrix people because as far as I can tell are the only people getting paid, will tell you that this is because a bunch of IT integrator companies unjustly profit off of the open source work by selling services to European companies but contributing none back to either Element or other open source Matrix projects.

The first issue I'd like to address is that one: as a small business, I tried to purchase software from Element and was told that I was not large enough to justify their time. Fair enough, I only wanted a 200 seat license and I was willing to pay per seat, but I guess they really want the high value contracts if they have a limited sales team. However, it is a bit much to go from that experience to their justification about the structure of their project. Maybe they should think about taking some sales opportunities that present themselves?

Then there are branding and release decisions around the clients that Element makes. There are two projects in the client space from Element: a client called Element, and a client called Element X. Element X is the newer one. Element (do you see how this is getting confusing yet) is simultaneously at different times an Electron desktop app, a mobile app, and a web app. Element X is becoming all of those things but the feature parity is not even between them. Element supports "legacy" Jitsi for voice and video calling while Element X supports newer Element call - which is different from legacy Element, Element call is a webRTC implementation native to the Matrix ecosystem while the "legacy" Jitsi is a way to send clients a URL for Jitsi calls and have them shell out to another app to actually implement the call. Fair enough. However, the desktop Element X client does not yet support new Element call but the "old" Element client does support both "legacy" Jitsi and new Element call. And the Element X mobile app cannot call the old Element mobile app - but I think the other way around can. Even getting your head around this as an IT person is confusing.

To add insult to injury the new Element X app on mobile is in some ways a downgrade because they integrated the cloud vendor push notification services into the app, so even though you have "sovereign" and "self-hosted" infrastructure you're still, on a good day, leaking meta-data about your chats back through to the people you were trying to decouple yourself from anyway. You can run your own push notification services for this mostly if you want and all your mobile clients are Android but like, why.

Then, there's desktop client usability. During account setup, Element/Matrix makes a big ceremony out of establishing your cryptographic identity. Perfect. And as part of that you write down a 10-ish something word passphrase that is a recovery sequence for said identity. Perfect. Then some network hiccup happens that disturbs the Element client like some kind of prey animal and it spontaneously logs you out. You log back in, but there are no fields or options visible to use that recovery passphrase to restore your cryptographic identity. Your only option is to reset your identity, which makes all prior chats you have had unreadable. That part at least makes sense but why have this recovery story if it is not tested or usable in the app? This is probably an Element thing but in my research I have not found a client that people say is more robust, though at this point I'm open to trying.

It's also possible that the way most people use this is as a web app, which is to be fair more robust. It does seem worse from a security point of view to have one central web server dealing in most of your users plain text, though. At that point, why not use Mattermost? I guess they're even more hostile to their users/customers, for some reason.

Finally, there's the server ecosystem. The thing that is frustrating to me here is the interplay between Synapse, Matrix Authentication Service (MAS), and OIDC. This, as far as I can tell, is all intentionally hostile to drive you into Element's commercial product offering. Which I find especially galling because they won't sell your their commercial offering anyway, so you're going to have to figure it out for yourself. Synapse has some legacy support for OIDC which you are going to need to enable for backwards compatibility. However, for forwards compatibility with Element X, you are going to need MAS. Synapse is a large, mature Python project. MAS is a single Rust binary which is simultaneously a server and CLI to do user management. You'll need both configured against your OIDC provider. Why didn't the new OIDC features just get integrated into Synapse?

I think that a lot of this is an outcome of the fact that Element is very literally in a "the old world is dying and the new world struggles to be born" situation at this time. I do have a lot of sympathy for being in the position of having huge companies - especially companies as annoying as IT outsourcing and integration - make a line of business out of configuring and installing your open source software. However, I have to say, having spent some of my professional life now also configuring and installing this open source software, I understand why those IT outsourcing companies have a moat. If the open source software was easier to install and use, perhaps those companies would have less of a moat. It seems to me that at least some of the story from Element is that if they make the ecosystem harder to use and understand, then people will take their money and the business will survive. However, in my experience, they won't take your money anyway.

show 5 replies
superkuhyesterday at 2:20 PM

Matrix is controlled by a single company Riot.im/Element.io who decides what the protocol is now. Element.io's income stream is hosting these extremely fat synapse servers for government. It doesn't really care about anything else. The Matrix Foundation has abdicated from it's role as of a couple years back (ref: https://element.io/blog/element-to-adopt-agplv3/ https://matrix.org/blog/2023/11/06/future-of-synapse-dendrit... https://blakes.dev/posts/2023-11-06-element-closing-matrix/). And generally synapse servers RAM and storage requirements grow and grow and grow, with no effective mechanism to trim the DB, until it requires hundreds of GB of ram just to idle and it starts becoming very expensive and infeasible for non-government/corporate pocket books to pay for. Even with just a few users the min ram suggested is 8GB at the very start.

For human people, for small social groups, Matrix in the form of the controlling Synapse server is infeasible over any period longer than a few years. See: https://news.ycombinator.com/item?id=46376201 / https://news.ycombinator.com/item?id=44617309 and the reports there or just ask around. I know Afternet gave up Matrix because of this despite really liking the features too, https://afternet.org/help/matrix

There are other Matrix protocol servers but none that implement the full protocol. Conduwuit was the most full featured but died, now there's https://continuwuity.org/ and a tiny bit of hope.

tldr; the Element Synapse matrix server uses too many resources (and they killed dendrite). We all wanted it to succeed but it was co-opted. Alternatives are not in control of the protocol, few, and of limited lifetime so far.

XMPP and IRC are the better alternatives.

show 3 replies
guerrillayesterday at 1:32 PM

The UIs are terrible. I've tried it a few different times with friends and we gave up each time.

panick21_yesterday at 3:48 PM

Why would it be? Being open and e2ee is irrelevant for mpost people.

Most private messaging is done in whatsapp and after that telegram. Telegram has spend more usability and less on most other things.

Then it compete with Slack and Teams on the cooperate side, where it was much later and less optimized for it. Slack took much of that market.

It did replace IRC in many places but that was only ever a small part of the market.

Basically between Whatsapp, Teams and Slack most of the market is covered and nobody is really a big player.

polski-gyesterday at 1:51 PM

Imagine your parents:

* need to use size 18 font on their phone

* refer to the phone as "that fancy music player"

* calls you when their favorite blog doesn't "load"

* every password they've ever had is "password1"

Now you want to tell them to "download this new app, generate a private key, store it as a backup somewhere. When you get a new phone, you need to re-import it"

Good luck with that.

show 4 replies
bratwurst3000yesterday at 12:38 PM

mostly the federate aproach. Most people dont want to think about anything network related.

Element is ok as an app imho

nickslaughter02yesterday at 1:15 PM

The UK is the number one enemy of security and encryption. Did you read and compile all of the libraries and clients yourself?