Also there are new modern irc servers around (such as Oragono) that integrate lots of things that are often missed/bolted on externally, like history, bouncer, authentication, etc.
Also there are new modern irc servers around (such as Oragono) that integrate lots of things that are often missed/bolted on externally, like history, bouncer, authentication, etc.
I've found the matrix-synapse homeserver I run to be stable. Along with Element-desktop and the Element android app it's been a great experience for me.
With both of those, you don't need to worry about history or bouncers, as history gets synched even if you power down your homeserver and back up again like I do.
And authentication comes as a by-product of matrix-synapse/Element.
I also love url and picture previews displayed directly in Element (and other clients) by way of synapse - far nicer experience than the text-only of IRC in my opinion.
I think IRC has had its day. At least with myself.
IRC's concept of requiring an active TCP connection for your session is archaic but dead simple, and the only times you have to wonder whether or not someone received your message is if they got a ping timeout shortly after, and the user list might get out of sync once in a honeymoon when there's a net-split. Nothing about IRC changes anymore, so you won't get surprised by regressions and bug fixes every month. I can see how people miss long multi-line messages and animated gifs in IRC, but I just don't. It's straight forward text communications, no bullshit.
Is that unlucky moment during Element sending/trying to send the message to the server?
In this case Element stores messages now until they are sent (since 1.7.26).
Otherwise, don't see how this could happen.
What is the difference with IRC clients showing URL/picture in terms of experience?
The difference is that IRC doesn't try to address these issues and just lets them happen, whereas Matrix does try and sometimes gets it wrong (more due to implementation bugs than protocol issues).
I don't think it's fair to conclude that IRC is "more reliable" on that basis - if anything, I would say that Matrix comes out on top here despite the existing implementation issues. At least it eventually gets things into the right state.
Also remembering IRC's netsplits resulting in IRC Services being split off and resultant and inevitable chaos when the netsplits end.
And like I said.. you can get that all in a neatly integrated package where you don't have to worry about any of that anymore.
And frankly I don't really care about it magically back filling the log later on, since the moment has passed. I value "Availability" above all else. And here IRC is unparalleled.
And improving upon the netsplits without breaking this aspect is really quite difficult.
Same happening as IRC - but with a different and more resilient protocol.
I also think including Slack along with Matrix is incorrect, as Slack is - like Discord - a centrally controlled walled garden. Matrix is not like those two at all.
The Matrix architecture is much closer to the one used by Jabber Multi User Chat (with perhaps a fancier MUC protocol) than IRC.
In any case that wasn't my point earlier. That was that I never had the issue on IRC that my homeserver somehow got stuck for several minutes while it did "something" in the room resolution protocol before suddenly catching up all of a sudden. And that I'll take netsplits any day over it being stuck.
I've never experienced what you're describing with the homeserver getting stuck while it did something, though I have had Element Android time out and seemingly not notice for a while & keep spinning, but that was the client's fault, not the server. My best guess is that whatever you experienced did get fixed!
Not sure what the issue was in the end, but I have had it with all clients I had tried (mobile, desktop, ..).
Sorry you had that issue!
In Matrix it could be a problem, but practically it's not a problem even in the largest room #matrix:matrix.org with probably thousands of servers. But it makes joining that room quite slow and resource intensive.
Of course there is no IRC network with thousands of servers, because accepted hosts are well curated by the rules of the IRC network whereas any Matrix server can join the global federation. Granted, you don't need to join a chat network with an IRC server, but then neither does a Matrix server.
I am not talking about talking to my friends (since that's already solved with a private irc network), but for random people on rather large public rooms, where everyone will be isolated to their homeserver without manual configuration (granted.. since we have some big homeservers like matrix.org probably they'll able to continue chatting in the room).
Edit: Turns out I misremembered the federation algorithm from the spec - seems like it is indeed currently full-mesh and not a directed graph so I retract my remark.