Opinion on the Matrix protocol
-
I don't use Matrix due to a permanent copy of all activity being kept on servers. It seems Matrix only has private group chats but not end-to-end direct messaging to add a contact and message them, you have to invite a user to a chat.
-
The protocole is fine I think the real problem is the synapse implementation but I could be wrong on that take I am no expert.
-
While Synapse isn't great, the problem is that the Matrix protocol is over-designed for a very specific purpose (distributed rooms), that comes with a severe performance penalty but most people don't actually need this for chat.
Its one of these cases of a neat idea on paper, but ultimately a solution looking for a problem.
That said, Matrix isn't that bad overall, but there are better options like XMPP.
-
XMPP is SOOO much easier to admin.
-
Depends on the use case an server.
Google and facebook do not yet have public servers. You want a trudtworthy server such that noone abuses your metadata like the time of sending a message.
It's very useful for companies like email but for real time communication. I'd prefer matrix over most other forms. In many companies and agencies matrix is getting introduced these days.
It's not anonymuous just like signal isn't perfectly anonymuous.
-
What else do you recommend?
-
Matrix literally syncs the entire data/metadata history to all other servers where someone pops in; chat is meant to have an ephemeral aspect to it. The whole network is de facto centralized on Matrix.org or the servers they host for others which means one org has access to almost everything—like the issue with Signal.
What’s scary to me is how expensive it is to run this eventual consistency model, which should not be a protocol requirement for this style of communication. It sucks so much RAM, so much storage, so wasteful—which causes medium-sized servers to shutdown on maintenance costs alone which causes more users to leave for the Matrix.org. These are not the characteristics of a revolutionary protocol—revolutionary is users & collectives to reasonably be self-hosting this stuff for their privacy & autonomy.
-
Yeah. Would have been much better if it was an option for a group admin - choosing several servers at a time to host if they wanted redundancy. Not forcing it on everyone participating, regardless of their disk size...
-
I wanted to participate in some Matrix groups, so hosted Conduit. Synapse was out of the question because it is too heavy for my cheap VPS. Some of the groups were encrypted, and my messages there were consistently rendered unreadable! Whether this was a Conduit vs. Synapse or matrix.org vs. everyone else I don't know, but the result is thw group being rendered unusable.
But my biggest problem is easily the storage, as Conduit offers no way to clean it up and my disk space is really small. The mandatory "everyone stores everything" model is so weird and seemingly unneeded for a chat... Why isn't it optional at least??
Seriously, why is Synapse - the only fully-functional implementation - so damn heavy? Even the developers admit it doesn't scale, introducing a different commercial version for big deployments! (wonder if this was the plan all along lol)
-
Well... there has been some recent museings about something like that from the CEO of Element, but it would effectively cause a two class federation where some servers can not work independently of others (likely in reality mainly servers running on EMS infrastructure, a bit like how in Bluesky you can't really work fully independent of their infra, and yes Bluesky was explicitly mentioned as inspiration for that idea).
Having those two options fully independent would basically mean reimplenting xmpp in json as an incompatible alternative protocol and that would make little sense IMHO.
-
What is the source for this? Wonder just how worried we should be...
-
It’s just a public discord server but half baked. Its attempts to add “privacy” just slow it down and increase resource needs, and so it’s worse off than discord.
Their solution? Don’t turn on encryption for public rooms.
At least simplex is actively trying to solve the large encrypted groups issue.
-
I find it to be pretty trash, and that's just my layman's opinion. I won't get into my professional opinion..
-
tbf there is not really a good solution to the 'ephemeral aspect' problem
the only way to not sync metadata to or btwn servers is to use a p2p model, in which you cant send anything if one of the parties is offline
so it depends on your threat model whether this is a compromise or not
-
Depends on your needs. Matrix can mostly replace the functionality of Discord, which makes it stand out despite its flaws.
If you just need group chat, encryption, and 1 on 1 calls, XMPP is easily self hosted and highly scalable.
SimpleX seems to be another decent option that's decentralized.
-
Some comment by the Element CEO on Hackernews, sorry I don't have a link right now.
-
Sure there is: Don't store everything in a database.
-
what do you propose for saving messages when the recipient is offline?
-
Matrix is still in my "recommend" category for real time federation. With third room still being the coolest example of what that can mean so far. They build on the same libs that make Peertube work too for the video sharing aspect (not the video metadata sharing and socials that all ActivityPub).
I'm really excited to see dendrite make it to client devices for real p2p servers, maybe even as a micro service deployment.
I do want to try out the Conduwuit too.That said the metadata leakage is an issue to me and consider that a serious flaw depending on your threat model, and you want to extra steps to preserve your identity from an untrusted matrix network and/or stick to a private one you trust
-
This is not either or. You can store things only until the recipient comes online and then delete it (but Matrix specifically doesn't do this and conceptually can't due to it's design).