I have to say "Element X" is a very unfortunate name choice ...
Technology
A nice place to discuss rumors, happenings, innovations, and challenges in the technology sphere. We also welcome discussions on the intersections of technology and society. If it’s technological news or discussion of technology, it probably belongs here.
Remember the overriding ethos on Beehaw: Be(e) Nice. Each user you encounter here is a person, and should be treated with kindness (even if they’re wrong, or use a Linux distro you don’t like). Personal attacks will not be tolerated.
Subcommunities on Beehaw:
This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.
It is just a codename, Element X is going to be just Element once it replace the old one.
I wanted to try Element X but apparently my self hosted server is not compatible.
Ah there is a solution for it https://github.com/matrix-org/sliding-sync I guess I could try to install it.
Yeah I was able to install sliding-sync on Dendrite without issues. A bit surprising that I didn't see any guides made for it yet.
Yeah, it sounds like it's sponsored by Elon Musk.
I wish the whole project was a little bit more clever with its names. Matrix and Element are not unique enough names and can cause a lot of confusion.
I like the project though and still hope it continues to succeed.
see it this way: shite names that are just an actual thing that's symbolically related in some way is a sign that the project is primarily run by programmers and not PR people.
Their native group VoIP calling looks to have a solid topology that could easily replace Jitsi in the near term, and eventually compete with larger scale conferencing services like Zoom. That's kind of exciting for those of us who care about open systems and privacy.
Okay, help an old-timer out.
Lemmy :: Reddit
Mastodon :: Twitter (I refuse to call it "X")
Matrix :: ???
Is it like discord? The olden days of AIM/ICQ/IRC?
Featureset-wise it falls somewhere between IRC and Discord.
2.0 seems to be closing the gap towards Discord more. Which I like.
Matrix really is 21st-century IRC.
I will get shit for writing that, but Matrix in its current form shouldn't have seen the light of the day, nor should have been let to spread with close to no technical scrutiny and based on empty promises/hype like it did.
Just to be clear, I'm absolutely encouraging, in fact, actively promoting federated alternatives to things like WhatsApp, Messenger, Signal, Telegram, …
But I don't believe for a second that the foundations on which Matrix is built make sense, can be made to work well in practice, nor represent a problem worth spending so much time and effort solving. This article does a good job at introducing the "behind the scenes" of the protocol: https://telegra.ph/why-not-matrix-08-07
The whole history of Matrix can be summarized as:
-
"let's do this because it's cool"
-
"shit, it's hard/slow, but we will figure it out"
-
"I have a breakthrough, here comes a new version of the protocol/client/…" (the ecosystem reboots)
(rinse and repeat)
Matrix has seen more incompatible reincarnations of itself in the last 5 years than XMPP in the last 20. Arathorn, its lead contributor and evangelist will keep apologizing, promising that this time they have their stuff in order, that whatever buzzword will solve this or that aspect of the problem, while the elephant still is in the room. You practically can't tell apart arathorn's messages of 2015 from those of 2022 and that would be funny if it wasn't so sad.
IMO Matrix is broken beyond repair, while XMPP is quietly used by millions of users. I wish Matrix could carry its own weight and be so unambiguously better that we wouldn't need competing alternatives there. To me, the better XMPP is XMPP itself, and I'd be happy to elaborate on that.
I agree in theory, but in practice my experience with Matrix has been infinitely better than with XMPP:
- There is no decent client for all major platforms on XMPP. Conversations is "good" on Android, but what is its equivalent on iOS? On the desktop, Pidgin/Adium were ok if you wanted just to chat, but audio/video required a lot of work.
- No decent web-based client for XMPP.
- Setting up e2ee is a pain.
- Setting up MUC is a pain.
- To this day I did not manage to set up video chat on my XMPP server, or at least I never found someone on a different server that managed to connect with mine.
Matrix may be technically complex, but at least it has managed to keep its ecosystem together. Whenever I've faced an issue with my server, all I needed to do was upgrade synapse. The "millions of users" in XMPP are mostly all on their own silos, while I am yet to have an issue where I want to chat with someone on Matrix but couldn't because their client/server was not compatible with mine.
Yep, I'm absolutely appreciative of the good work put together by the Matrix folks on the client side, element is overall okay (although slow, quirky, unstable, …) because of fighting a misguided and unstable server and protocol.
To answer your points:
- what is its equivalent on iOS?
- No decent web-based client for XMPP.
I would argue that https://movim.eu/ is at least as good as element web. https://conversejs.org/ does the job to bridge across native clients.
- Setting up e2ee is a pain.
What is there to set up? The experience is very comparable to Signal and al. What did you find painful?
- Setting up MUC is a pain.
How so? It depends on the client, but on Conversations it's a matter of clicking on + → "Create private group chat" or "Create public channel". In gajim it's + → "Create group chat"
- To this day I did not manage to set up video chat on my XMPP server, or at least I never found someone on a different server that managed to connect with mine.
For calls to work, you need to use a stun/turn server (like everything everywhere else, including Matrix, Jitsi Meet, …). If you self-host, and you have a recent ejabberd, it's configured out of the box and you just have to open server ports.
Matrix may be technically complex, but at least it has managed to keep its ecosystem together.
Another way to put it, is that matrix is technically so complex that only a single party can afford to develop and maintain a working implementation. The documentation is lacking and alternative implementations are incompatible in effect. This isn't a sustainable situation (that those who define the standard are the ones implementing it) and we have started to see the cascading effects of that with the bitrot of the IRC bridge with libera.chat for instance.
I am yet to have an issue where I want to chat with someone on Matrix but couldn’t because their client/server was not compatible with mine.
it's funny because I've never experienced that in the XMPP world where the protocol is so stable that you can just S2S/C2S with decades-old servers seamlessly, whereas failing to update synapse for a matter of weeks guarantees compatibility issues. And I'm not even talking about 3rd party implementations like conduit for which incompatibilities is a guarantee.
The counter points on the site you posted are either completely expected or even desired properties of distributed systems (like not being able to force a delete or room closure on another server), or just problems with specific implementation details or insufficient clarity in the specs (like interop hickups or handling of media files). As far as I can tell nothing on the list is an "unfixable" protocol bug or core design flaw.
XMPP - now that's a name I haven't heard in a long time. I thought the woke Google chat federation and subsequent drop pretty much killed it off - but I'm glad to be wrong.
Are there XMPP based group chat/Matrix/Discord alternatives?
Kind of a mix between Discord and IRC. Although it doesn't have servers like Discord and is more of individuals rooms. In fact they made bridges an important feature, so an IRC room and Matrix room can be merged together without either side really noticing a difference. Same with Discord and a ton of other programs.
Although it doesn't have servers like Discord
They're called Spaces on Matrix
If you actually tried spaces, you'd realize they're incredibly clunky and not even close to discord rooms. You can't even search for them. They're not quite there yet, they leave a lot to be desired.
technically it's an eventually consistent federated database (or series of databases i guess? dunno), which just happens to primarily be used for instant messaging similar to discord but also inheriting features from IRC.
love to see it
Been waiting for this for a long time! Another thing that's been on the horizon I'm eagerly waiting for is p2p. They've been working on Dendrite, which is a much more efficient Synapse, and the goal is to be efficiently running it to effectively running it on your own device as like an invisible self-host. They're working on MXIDs as well so @hostname.com wouldn't be a thing anymore. P2p with all this other tech would make Matrix really the privacy holy grail imo.
"Sliding sync" is Matrix's own admission that the protocol is too complex and taxing on clients to be practical, and shifts the burden further onto already overwhelmed servers for what's essentially bouncers marketed as new tech. And it's still a mess.
Admitting problems and improving/replacing your protocol is good, you make it sound like a bad thing. I mean you could argue that they should have started with this, but imo better late than never. From what I've seen this will take load off of the client AND the server, because both don't have to sync thousands and thousands of events anymore. It basically looks like an indexing/caching layer between client and server, which is standard practice to make things go faster, especially for thin clients.
Admitting problems and improving/replacing your protocol is good, you make it sound like a bad thing.
The only bad thing about this is that we've been at it for 10 years. If you've been following Matrix long enough, you've witnessed "the next big thing that will solve all problems" being promised every year. Matrix funding relies on hype, and I'm somewhat ok with that, so long as users and hosts are not taken hostage of empty promises. My first hand experience of Matrix X is that we are still far from what's being advertised.
edit: adding a missing word "thing"
I can’t wait to see what you’ll develop in response!
I won't need to develop anything in response, because an open-standard (IETF) protocol for federated instant communications already existed long before Matrix, and as far as I can tell, from my experience of having administered XMPP and Matrix servers for hundred of users, nothing about Matrix, its design and its implementations makes it more desirable, more reliable, more resilient or more "future proof" than what XMPP came-up with a decade earlier.
And I am aware that I sound like an old man yelling at clouds, I take comfort in the fact that more and more technically-versed people who look behind the marketing and buzz get to see what I know from experience: https://telegra.ph/why-not-matrix-08-07
I think most of the criticism on Telegraph regarding how Matrix handles rooms and events are addressed by the work behind linearized matrix: https://www.qwant.com/?l=en&q=linearized+matrix+messaging&t=web
Since its inception, Matrix has always been "months away" from cracking this very problem, I won't hold my breath for this one, not after 10 years of kicking the same can down the road.
Seems like they're building other things in rust, about time for the server? Seems like bloated servers are the biggest downside of matrix. Does anyone more educated on this topic know why it's not a thing?
Because Synapse is already widely used. The Matrix foundation is also building Dendrite, which is in beta and written in Go.
Conduit is another server, in Rust https://gitlab.com/famedly/conduit
Dendrite has been in Beta for so long.
I remember installing Synapse 6 years ago thinking "whatever, I'll reinstall it anyway".
Welp
Yup, that's the annoying state of Matrix: nothing ever gets completed and running smoothly, because everything's in a constant state of flux
Covering up a bloated protocol by a faster language has its limits though, and in the case of Matrix, well, a faster language only buys you little
Anyone know how to get a self-hosted synapse server updated to support all this?
Yes, I'm confused by the released messaging. It feels like there may be a new server requirement. Search this page for Synapse https://element.io/blog/element-x-ignition/ to see the link to the guide.
The proxy is needed until sliding sync is finalised and merged into the spec and implemented into clients
Native Group VoIP (end-to-end encrypted large-scale voice & video conferencing)
I am most excited for this. This definitely turns Matrix into a viable Discord alternative where it wasn't before IMHO