a lot of the complexity in matrix comes from it trying to make a robust platform where users on each server don’t have to worry the other servers, beyond the ability to reach users on those servers.
Basically the way it works is that each server keeps a copy of all the important data in a channel/room, so that no matter which or how many other servers become unreachable, local users are unaffected beyond being unable to reach the users on those servers.
It’s really nice and IMO absolutely worth the complexity, and it’s not like most devs really have to worry about this as they can simply use a library to handle the details.
And as for clients, that remains pretty trivial to implement a basic shitty one like what most people’s first experience is with IRC…
This is also a drawback imo, as it locks out people with limited storage. Like me. I need this storage for media on my site. I don’t mind chats existing on several servers, but let people opt out of that at least.
It’s more akin to XMPP rather than IRC. From what I’ve seen, a Matrix server would be more resource-heavy than an XMPP one. Synapse one would probably not run on my weak machine at all, and Dendrite/Conduit are not feature-complete. And the primary reason I still haven’t been on Matrix is that I have very limited disk space on my VPS, and Matrix saves media from every chat its servers are on, and I still haven’t figured out how to opt out of that.
Maybe Matrix is the way forward.
I hope so, but the protocol seems to be complex by several order of magnitude.
I’m not familiar with either protocol - what is it that makes IRC so simple and Matrix complicated?
a lot of the complexity in matrix comes from it trying to make a robust platform where users on each server don’t have to worry the other servers, beyond the ability to reach users on those servers.
Basically the way it works is that each server keeps a copy of all the important data in a channel/room, so that no matter which or how many other servers become unreachable, local users are unaffected beyond being unable to reach the users on those servers.
It’s really nice and IMO absolutely worth the complexity, and it’s not like most devs really have to worry about this as they can simply use a library to handle the details.
And as for clients, that remains pretty trivial to implement a basic shitty one like what most people’s first experience is with IRC…
This is also a drawback imo, as it locks out people with limited storage. Like me. I need this storage for media on my site. I don’t mind chats existing on several servers, but let people opt out of that at least.
It’s more akin to XMPP rather than IRC. From what I’ve seen, a Matrix server would be more resource-heavy than an XMPP one. Synapse one would probably not run on my weak machine at all, and Dendrite/Conduit are not feature-complete. And the primary reason I still haven’t been on Matrix is that I have very limited disk space on my VPS, and Matrix saves media from every chat its servers are on, and I still haven’t figured out how to opt out of that.