Follow

Matrix is a classic walled garden - it can connect to other systems, but provides no means for users of those other systems to connect to it. Matrix users can join IRC channels, but IRC users cannot join Matrix rooms.

And people wonder why I hate Matrix users on IRC, with all their dumb Matrix square-peg-round-hole nonsense messages

@sir I'm not sure I understand the argument, outside of the fact that Matrix/IRC bridges are pretty shitty for IRC users.

Would you expect XMPP users to be able to join IRC channels and vice-versa? Or being able to send an email to a Mastodon account?

@0orpheus it's rather that Matrix users are themselves shitty IRC users. The client is not well behaved on IRC and does not fit into the IRC model properly, and it makes Matrix users stick out like a sore thing and annoys IRC natives.

If you're gonna interop with something, you should try to avoid annoying the people you're interoping with.

@0orpheus oh, and that it only goes one way says a lot about their priorities for interopability. They're not trying to interoperate with IRC, they're trying to subsume it.

@sir I don't think that's in good faith towards Matrix; no one asked that of XMPP to my knowledge.

@0orpheus XMPP never tried to force itself into the IRC ecosystem as a cancerous extension of it

@sir Fair, I get what you mean, though I'm don't share your sentiment for it.

@sir
There are gateways that let XMPP users join IRC channels though... and XMPP was intended to have gateways (called "transports") to all kinds of protocols, from AIM and ICQ to Skype and Facebook Messenger.
@0orpheus

@sir Yeah no, Matrix users in IRC is definitely an unpleasant experience. It's actually why I specifically don't use an IRC bridge on my server.

On the other hand, I feel like some of that is related to the fact that IRC is an old protocol and system that, like it or not, didn't age quite as well as a lot of people hoped in the sense that it doesn't support many features that "modern synchronous chat systems" support as a base measure. You can see it by comparing the experience of the IRC bridge versus almost any other (double-puppeting) bridge: IRC is shitty for other IRC users, every other bridge the matrix user is entirely unnoticeable.

@0orpheus the features which define a "modern" chat "experience" are not desirable on IRC, and I am glad that they are not present

@sir That's fair, and as someone who uses both I agree that there's reasons to not have those "features". That's why I put "modern synchronous chat systems" in quotes. Unfortunately, pragmatically speaking, those features are what a lot of users expect.

@0orpheus I don't know why people feel that this argument is meaningful or that I should give a fuck about what users expect

@sir Honestly "expect" was probably a bad word choice and "want" is a better one.

But yeah, you don't have to give a shit about what users expect. But software without features users expect or want ends up being a pretty user-less, masturbatory experience. I think the IRC bridge makers should work harder to be better citizens in IRC, but the doesn't make the whole project shitty or a walled-garden.

@0orpheus okay, walled garden has a specific definition and it's questionable to call Matrix one. But Embrace/Extend/Extinguish is very obviously applicable to Matrix

@sir I don't know how applicable it is, but I think yeah if the bridge makers (specifically for bridges like IRC which is Matrix team approved) keep being bad citizens that's getting obviously into EEE territory.

I'll give that I've been comparing it to XMPP but as far as I know XMPP never had a bloody marketing team behind it.

@0orpheus Matrix's behavior and faults make sense if you understand how the organization works. I will probably write up a blog post at some point

@sir @0orpheus
Synapse is also poorly designed and terribly buggy according to every single person I meet running a matrix synapse instance.

@sir
Looking forward to read a blogpost about it.
I started to get very uncomfortable with Matrix when I saw they are receiving investments from venture capitalists (read: they need to grow infinitely)
@0orpheus

@sir
Has anyone thought Matrix's plan is not EEE? I think back in its early days, their stated goals on their website heavily kmplied that they want to be the ultimate chat protocol that brings together all the other protocol and eventually replaces them.
@0orpheus

@wolf480pl @sir @0orpheus the plan was originally to be a common backhaul that would allow anyone to speak to anyone, via their client/protocol of choice.

In actual fact, a lot of their funding became dependent on growth of the protocol, it grew a client and front end of it's own, developed features that didn't interop with other services, etc.

It says a lot that such a large proportion of their developer effort is spent on the Riot client, and things like voip and video calling that have no plans or roadmap for non-matrix2matrix use.

Matrix went from a servant protocol to considering the others in the ecosystem it meant to bind together as second class.

@kline @sir @0orpheus
one matrix to rule them all
one matrix to find them all
one matrix to bring them all together and in the darkness bind them

@wolf480pl @sir @0orpheus yeah, it's relevant.

I don't agree with elsewhere in the thread where it was asserted that IRC hasn't aged well - I think its longevity and staying power past fads like XMPP show the opposite.

That's not to say that IRC isn't lacking in some areas. There is no doubt that clients are still sharp objects - there's no reason for example that most interactions should be through slash-commands rather than sensible gui flows. I should be able to paste an image into my client, and it automatically uploads it to my image host of choice, and then drops the resulting url into my message box. Client understanding of services so people don't have to faff with nickserv, etc.

But none of these things require that the protocol changes, nor the character of IRC use. The issue is that by the time you are capable and qualified to write an IRC client, you've already internalised the sharp edges and don't see why things like Nickserv are challenging to new users.

@kline @sir @0orpheus
Regarding NickServ, I haven't seen a network that didn't support IRCv3 SASL for 5 years. So that one is more-or-less dealt with.

Assuming other rough edges - file/image, reactions, custom emoji, and such - get smoothed out in the near future, the only issue left will be chat history.
And I've seen some IRC daemons add limited support for room history. Wonder how well that goes in the long term.

@wolf480pl @sir @0orpheus SASL is a good thing *once you've managed to walk someone through a stateful process with a bot in private messages*.

Room history (serverside) and out-of-band images (clientside) are fairly easy kills.

Custom emoji/reactions are somewhat more controversial, and also require protocol changes that need agreed upon and then rolled out across both clients and servers.

@kline @sir @0orpheus
hm... so either standardized in-band registration, or web registration would be necessary.

As for emoji reactions, if the server implements message-tags[1], and passes through client-only tags intact, clients can go on and implement things like +react[2]

[1]: ircv3.net/specs/extensions/mes
[2]: ircv3.net/specs/client-tags/re

@wolf480pl @sir @0orpheus so yeah, requires both server and client changes to support a protocol extension, and is debateable if it's even a worthwhile addition compared some other changes for less effort and more reward.

@kline @sir @0orpheus
UnrealIRCd and InspIRCd already support message-tags. It was required for earlier IRCv3 extensions server-time, so chances are any server that tries to keep up with IRCv3 already had those a while ago.

@wolf480pl @sir @0orpheus it doesn't even have to be standardised, mind. Hexchat could add a gui that takes the info required for the top-5 irc networks and just hardcode in what needs done with it, and you've covered something like 90% of all new irc users.

@kline @wolf480pl @sir
Standardized, in-band user registration and management seems like a must to me. It helps both the new user onboarding process and moderation tooling; two fields that IRC is sorely lacking in and involved in why large projects like Mozilla/Moznet have moved off of IRC.

Show more

@sir Well, it's coming, it just had some time in stale due to other priorities: github.com/matrix-org/matrix-i

Also matrix already allows incoming XMPP, there are webhook bridges that are semi-compatible with Slack/mattermost webhooks, …

All kinds of stuff going on, it seems to mainly constraint by the amount of people working on these.

Might call it wrong priorities, but 🤷 I'll leave that up to you :)

@sheogorath it's really goddamn convenient that they can prioritize features which bring Matrix users to IRC but not features which bring IRC users to Matrix

@sir @sheogorath construct is supposedly solving the "connect to matrix like an irc daemon" use case some people seem to want

@sir to be honest I find things like Matrix and Slack quite stressful, mostly because of one being always reachable and ones messages being eternally available. IRC is more like a pub, where you can go when you want to have interesting conversations with strange people or just have a good time with your mates. Oh yes... back then logging chats was considered rude by most 👴

@trobador @sir In IRC I've logged everything for years and I almost never look at them. I never go looking for something if I don't have a polite reason for doing so. And I'm always logged in with a Quassel Core that I connect and disconnect from 3 different client devices.

You have to assume someone's logging IRC and may not be polite about it. Act accordingly.

Availability -- I'm only as available as the notification preferences on all my devices, which are normally pretty sparse.

@trobador @sir some groups on irc are still adamantly against logging

@sir Does Matrix peer with IRC networks to relay messages as coming from the original sender's name? Does it join IRC with a limited access relaybot that prefixes all forwarded messages with the original sender's name as part of the message body?

@sir
Really? They have an s2s link between IRC servers and matrix's IRC gateway? I thought Matrix just makes multiple client connections, one for each user.
@progo

@sir Also is about as user hostile as they come.

@feoh Could you elaborate? Genuinely curious since I had seen or heard some issues with Matrix before, but never had much clarity.

@unicorn Sure! I join Matrix. I see nobody in any of he rooms that are natively on the server. I read that Matrix lets me connect to IRC. I then read that there is a REALLY baroque syntax that allows me to do that. I flail repeatedly at getting it right, partially succeed, I think, but not really, and then give up in disgust and delete the client :)

@feoh I see, I share the syntax criticism. I tried using the XMPP-Matrix bridge "matrix-bifrost" a few days ago and the syntax is odd. I cant help but think it would be more user friendly to simply let the user select a protocol you want to interact with and then input a regular address and perhaps a bridge server.

So instead of "@_xmpp_USERNAME=40XMPPSERVER:matrix.org" (replace caps) you could select XMPP, type USERNAME@XMPPSERVER and set a bridge server. Death of 1000 papercuts :/

@sir if matrix allows bridging to other services i really don't see how it's a walled garden ?
this is the whole point of matrix, it allows you to use matrix while still retaining the ability to connect to other services. interoperability is like, one of their major goals

@haskal it can connect OUT to other services, but other services cannot connect IN to it. I can't use my IRC client to connect to Matrix, but I can use Matrix to connect to IRC.

@sir @haskal What would stop you to write an IRC -> Matrix bridge? Like https://github.com/matrix-org/matrix-appservice-irc but the other way around.

This is possible since the protocol is documented but it would just take a lot of time to write for not much utility IMHO... pretty much the same reason the only decent working server Matric implementation is synapse :/

@me @haskal having zero desire to talk to Matrix people would stop me from wanting to do that

@sir @haskal it matrix is an open spec. Annoying clients are not matrix' (= the spec) fault. It's the clients which need to be fixed in order to be less annoying for irc users.

@sir sorry, not sure I understand. What do matrix messages bridged to IRC do that's irritating?

Sign in to participate in the conversation
Mastodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!