We span up a Synapse instance the other day and connected to it with Element on a few different laptops. (This is the Matrix server and client btw — they really need a marketing / branding person!)
It was both hellish and amazing. Hellish in that I had absolutely no idea how to use anything. Channels and rooms and stuff. All very complicated and weird. I just wanted a single, default place to hang out!
It was also amazing because it all worked beautifully all the way from text chit chat up to in channel video calls. Snappy and fast and reliable. Bliss. LDAP integration out of the box (or near enough out of the box) too. Lovely.
If it was just a little bit more seamless it would probably take over the world.
I'd probably switch to Discord before using Matrix as my primary way of communication. It's a clusterfuck held together by duct-tape and ADHS.
I try it every now and then and within a couple minutes, I manage to break something, that my Matrix-using friends just shrug off. As an example, just a few days ago I used the web client again and had a chat with a friend. Just for fun, he added a bazillion emoji reactions to one of my messages, and after that the client would always claim our conversation has unread messages, even after right-clicking and selecting "mark as read".
But my favorite is how they broke the IRC bridge about 3 months ago: It randomly drops messages from IRC -> Matrix. There's an issue[1] for this with pretty much no reaction from the devs. Like, nobody cares. So on one hand, the Matrix folks always stress how it's the best chat protocol on the planet because of all the bridges that connect it to everything, but then in reality those brides are unreliable and apparently only there to tick a box, working as well as Microsoft's POSIX layer for Windows NT in the 90s.
And apart from the complete lack of interest in getting this fixed, it also just boggles the mind how you can even break it in this way. IRC has a persistent connection and streams messages separated by CRLF. How do you end up parsing the protocol properly and then randomly ignore a received message?
In its current form, the bridge does more harm than good, as you can't always keep in mind during a conversation that the bridge might just have dropped a message again, leading to frustrating misunderstandings every now and then.
Thanks for the hint. While they don't mention the issue in that post (and neither in the linked one regarding plumbing, where they say they regret libera's decision to request disabling portalling, like it came out of the blue), let's still hope it is fixed in this release.
Again, I find the communication from matrix' side absolutely pathetic. Yes I know, it's an open source project, I don't pay them, they don't owe me anything, but come on, wtf. I really wonder how many people have had weird miscommunication because of this and never became aware of it.
fwiw, i would be first to agree (as project lead for Matrix) that we (I) have fucked up the communication about libera irc bridging problems, and I am sorry for it.
the root cause is lack of bandwidth: the bridge is both written and run by one guy, alongside a tonne of other stuff which often takes priority given it revolves around trying to generate $ to fund matrix dev.
Around the beginning of the year, we had some nasty problems on the bridge (from memory, some delayed traffic, and a security bug). Libera started threatening to deportal us, so we rushed out a major feature (persistent IRC connections, so Matrix users don’t reconnect when the bridge restarts) to try to address the longest running series of issues and avoid Libera killing portals (ie stopping users bouncing via Matrix). Unfortunately, while this seemingly worked, it introduced the nightmare subtle traffic loss bug which the parent is complaining about, which we haven’t been able to repro outside of production. Meanwhile, rather than averting deportalling, the new problem reinforced the case, combined with false concerns about archive.matrix.org (https://matrix.org/blog/2023/07/what-happened-with-the-archi...).
This has caused a particularly unpleasant vicious negative feedback loop where we’ve had to split time fixing the reliability bug with: fixing plumbing, preparing deportalling, handling tonnes of community reqs about deportaling and the awkward UX of plumbing, dealing with the libera team, and dealing with a new brace of security issues which showed up thanks to newfound attention on the bridge.
Meanwhile it’s fair to say that we have badly failed to communicate about this with the wider IRC community, focusing on trying to fix bugs while talking to the libera team instead. This is clearly a huge screwup, and, again, I apologise for it (and for the bad job I’ve done on resourcing keeping the bridge running).
At this point, the our best hope is that we’ve fixed the root message loss bug, and that the bridge will go back to being lower maintenance again, and plumbing will prove usable in practice. However, we’re also in a catch 22 when the main use of the bridge (portalling, ie acting as a bouncer) is now gone, meaning fewer people will be able to use it and it’ll be even harder to justify spend time on it going forwards. If libera hoped that by turning off portals they would somehow make it easier for us to improve the bridge, they were wrong.
Our fallback position, if plumbing doesn’t work out, is to try to find a set of people who libera trust to run/maintain the bridge and hand it over to them - or alternatively give up and encourage the community to run their own personal bridges via matrix-appservice-irc or heisenbridge or even matterbridge, if empirically running a huge bridge to libera’s satisfaction is impossible.
If anyone has any other bright ideas, please let me know.
Finally: the reason we have run the bridge for the last 8 years is, perversely, to try to support IRC and let xkcd.com/1810 style users still participate in communities which have otherwise migrated to discord/slack/matrix and avoid community fragmentation. Right now the Libera Matrix bridge has around 10K IRC connections - around 25% of Libera’s total users. By knifing portaling, I’d guess this will drop 10x. So the whole thing ends up being an utterly depressing spiral of fail.
Appreciate the feedback, this gives much needed insight into the situation. I just wish something even half as informative could have ended up in that issue a couple weeks ago.
It was both hellish and amazing. Hellish in that I had absolutely no idea how to use anything. Channels and rooms and stuff. All very complicated and weird. I just wanted a single, default place to hang out!
It was also amazing because it all worked beautifully all the way from text chit chat up to in channel video calls. Snappy and fast and reliable. Bliss. LDAP integration out of the box (or near enough out of the box) too. Lovely.
If it was just a little bit more seamless it would probably take over the world.