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…
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…