Element is launching the world’s first communications platform based on the upcoming Matrix 2.0 release. The result is blazing performance which outperforms the mainstream alternatives - across a decentralised system that enables self-hosting and end-to-end encryption - as well as open standard interoperability to revolutionise real time communication between large organisations.
Built on Matrix 2.0, Element X now rivals the performance of centralised consumer messaging apps, empowering organisations to address the shadow IT issues caused by consumer-grade messaging apps in the workplace.
The new Element communications solution consists:
- Element X, our next-gen app with an array of new features
- Element Call fully integrated into Element X, for native Matrix-encrypted voice and video
- Element Server Suite, our backend hosting solution for powerful admin control and Matrix 2.0 performance
Has anyone tried the new app?
I’m trying it now, seems okay so far. I tried it a few months ago and it was unusable, so it’s improved.
Thanks!
I’ve been using the nightly releases for element X android for some time.
Sliding sync means messages are fetched quite a bit quicker, though it’s not yet feature complete relative to regular element android.
I’ve not yet tested element call on EXA, however, but it’s worked very nicely for me via web.
not on linux yet?
Does Element X run directly on X now, without electron?
No. Unless you use waydroid
Bombastic
Still no Spaces support. Even the short list of rooms I’ve joined are unmanageable when listed flat with no way to identify which Space a
#general
belongs toThis is dependent on matrix-rust-sdk, when (if) it ends up supporting it, all using the SDK will be able to add support for spaces
Spaces is an underused feature that I hope see gain more traction! It makes Matrix a credible competitor to Slack and Discord
What do you mean by “spaces”?
A way to group organize discover and control access to multiple Rooms.
Here’s an extra ironic Elements post describing them: https://element.io/blog/spaces-the-next-frontier/
It’s the equivalent of discord servers
I can’t use discord because they require phone numbers from users who use privacy tools.
What does this mean for people who don’t use discord?
A space is a collection of rooms. So you have a clean list of spaces, then when you click into one of them it shows all the rooms that it contains. Without spaces, every single room is shown in one big list.
Spaces have nothing to do with Discord. They’re just a way of grouping multiple Matrix rooms together into one “space” like how Discord channels are grouped into one “server.”
Is everything encrypted yet? Or do they still allow users to send unencrypted messages?
Unencrypted messages are useful for very large rooms, where encryption doesn’t provide meaningful more privacy since public rooms have to be considered public space anyway. Encryption does have overhead, so it makes sense to disable it.
Private rooms are E2EE by default and can’t be created unencrypted (at least in the Element X mobile UI). This is a good way to handle it IMO.
Encryption is, what, a 10% hit? I (and most companies) would gladly take that tax to ensure that it wasn’t possible for me or anyone in my org to accidentally send an unencrypted message.
10% of what? keys are regularly rotated, per-member, and it would soon cost a lot of storage to store historical keys for very large rooms (by their member count)
Sounds like a design flaw. How does this work with other messengers that don’t allow users to send unencrypted messages, like Wire, Signal, and WhatsApp?
probably the same way, and probably with an upper limit on group chat member count
(part 2) it doesn’t seem that signal has such a limit. maybe they’re just fine with using relatively a large part of their data for key storage
Groups have an encryption key that I guess you receive from other members upon joining.
They still allow it
Screensharing would let so many people move from discord
Wire supports it. Also more secure than Matrix
How is it more secure than matrix? I can’t even self-host it.
Yes, you can. The server code is on github. But I don’t know why you would, since all messages are encrypted client-side.
Its more secure because you know that all your users can’t send a message unencrypted, either accidentally or intentionally.
there’s a graphical indicator if they send something unencrypted, and there’s no way to turn an encrypted chat into an unencrypted chat on matrix. Plus they start encrypted by default, I honestly don’t even know how to make an unencrypted chat, I don’t think there’s any good way to other than using a client that doesn’t have encryption.
this is not a real problem.
Last time I checked they had it in the web version
Discord uses their own screen sharing implementation because it performs better than what’s available in Electron by default. I don’t expect Element to achieve that, considering their focus isn’t gaming.
I had just uninstalled Element X like two weeks ago because I found it to under perform compared to the normal Element client on Android, in addition to lacking some features. I guess I’ll give it another shot.
Update: WOW this thing feels lightning fast compared to just a few weeks ago. This is great. Not sure about feature completeness, but based on speed I think I’ll migrate Element > Element X again. Great job to the team!
It hans’t changed speedwise for me. It has been lightning fast since it’s first release
“invisible cryptography” I sure hope this isn’t an empty promise. The number one gripe I have with matrix/element is the absolutely horrendous crypto dance they make you do.
It’s probably the number one reason I can’t convince friends to move over, I know they would bawk at how it makes them do that on every device
I studied cryptography and I can’t figure out how to do the dance right. I thought I did, but one of my contacts says they can’t read any message I send them. And I can’t message them to figure out why.
We haven’t spoken since. Thanks Matrix.
while I agree that there are too many problems right now, 2 things really can’t be avoided:
- setting up key backup after registration asap
- verifying your new logged in devices, possibly with the key backup password
well, unless they are fine with using it like signal, which is basically one device only
Signal can have multiple devices, I have it on my phone and laptop.
that must be a relatively new feature
Not really, have used it for years like that. But you need to set it up initially on your phone. The newish feature (less than a year) is that I think they do not require a phone number to set up a new account.
The newish feature (less than a year) is that I think they do not require a phone number to set up a new account.
How do you do that? A few days ago I have registered again, and I didn’t see the option. Didn’t you perhaps mean that the app can hide phone numbers?
Ah that must be it sorry. I thought they had decorelated phone numbers and IDs
What are you talking about? Even before this new “invisible cryptography” you set it up once per device and never have to think about it again.
except for the “unable to decrypt” errors, and when new invitees can’t read previous messages
The last time I used element x was probably a couple months ago and I wouldn’t really call it ‘production ready’. But I guess I’ll have to try it again.
I still don’t think it’s there, but development hss been fast, so a lot has changed and improved in the last couple of months.
Element x still doesn’t have support for spaces. Trying to navigate between rooms just by scrolling through one huge list is a nightmare.
What’s matrix 2.0? Are they finally gonna use the go backend as opposed to the python one?
Yeah its not clear to me what matrix 2.0 is either, seems like spec changes? Nothing here about synapse (the python matrix server), or the go one.
Yeah its not clear to me what matrix 2.0 is either, seems like spec changes?
Yes, Matrix is the protocol. Element is one of many clients supporting said protocol, and synapse is one of many servers supporting said protocol.
Not exactly. Matrix 2.0 relates to the protocol (Matrix) version, which has its major number incremented due to a bunch of, well, major changes/updates to make it much better. OIDC, sliding sync and native calls are some of the new things that comprise the 2.0 update.
The server implementations are somewhat orthogonal to this. Synapse (the original Python server) is still the main implementation, and is Matrix 2.0 ready.
I currently use Synapse with bridges to Signal and Discord, and Matrix API. Is Element X a better way to go server-side now?
as I understand, Element X is a client application (for mobile, for now)
The title of the article, and body, say otherwise.
No, that’s your reading comprehension. You are conflating Matrix 2.0 and Element X.
I wouldn’t say it that harshly, the title is really not the best
No they don’t, it’s just confusingly worded
Element X is a matrix client that will eventually replace Element for android/ios
Matrix 2.0 is the server suite, some of the changes in matrix 2.0 are necessary for element x to work.
I think it’s actually Element X, Element Call and Element Server Suite, and they just did not want to write Element 3 times
Got it, thank you. So if I’m following now, Matrix 2.0 a new protocol, and the solution to run instead of synapse is Element Server and Element Call?
Yes except element call is a frontend for voip and p2p
Native OIDC support…something I wish more self hosted apps would prioritize. I shouldn’t need to maintain a bunch of user account systems on my own servers.
I don’t like what I see in the iOS app stores privacy section for the app.
Element is able to use features called “Integration Manager” and “Identity Server”. When using an Identity Server, you can choose to link name, email, and phone number to your Matrix account. When using an Integration Manager, there’s a feature to share your location with others in chat.
As such, Vector discloses that they “collect this information”, although (except some diagnostics), this is completely optional.
(I am not associated with Vector, just interested in Matrix)
Ah interesting ok. So basically even though it CAN link all of that info to you and such doesn’t mean that it WILL if you opt out of things. Is that correct?
The way permissions are listed on mobile operating these days is honestly pretty misleading.
For example, I know some apps that need to request network permission even though they don’t need to connect to the internet. Not because they want to do anything shady, but because they legitably have to in order to get certain info.
Not to mention the problem of listing everything an app can do as if it is doing all of those things.
Correct, Vector does not receive this information unless you willingly share it with them.
Ok thank you
Even better.
It’s opt-in instead of opt -out
Correct any personal info is opt-in, ie; you can put your phone number and email in if you want to make it easier for friends to find you.
Seriously, WTF?!
What do you find WTF about it?
That’s a lot of data collection.
That’s the problem with how the app store presents privacy info: without context it’s nearly meaningless. “may be collected”. It’s optional, but that’s not show here. The Play store does show that these are all optional.
“Collected” is also a scary word here. Having my location “collected” sounds scary, but what it actually may mean is that I can optionally and explicitly share my location with a contact.
Notice it says “MAY be collected”, because if you want to you can share your phone number, email, etc with the app to allow people to find you easier.
Same with location and stuff like that, if you use an option to share your location or connect to bluetooth devices it will obviously need your location permission.
Oftentimes “location” can just mean “needs to access Bluetooth”
We should probably stop arguing about Matrix vs XMPP and finally decide what to use or else we’ll never move forward.
Still waiting for an XMPP client to support threads
Got it. I’ll use matrix, and you can use XMPP
Which is largely whether or not the eventual consistency model or not is the route to take. Is the resilience for chat worth the explosion of storage & preformance cost of sync/search & maintaining all that data amongst all servers? Or is limited/functional sync without always duplicating the entire history with the occasional out-of-order message & missing old attachment good enough? Is ephemeral chat okay to save resources which in turn makes it more feasible to self-host on lower-end hardware or is it better to trust a couple big servers who probably have admins?