I'm really bummed about the negativity in the comments. I for one have high hopes for this as the current generation of web powered chats are huge pain for me. Maybe open protocols can take the lead again, at least for a while. It has happened before. Let other people work for our benefit with a bit of encouragement, it costs very little and an eventual failure will do you no harm.
The cost is that it is fragmenting the already fragmented scene of open protocols with an inferior solution. Now I will have to install a 5th chat client in order to talk with the few people that will move to it.
Note that IRCv3 is backward-compatible, so you don't need a new client. Any existing IRC client can connect to it just fine; including multi-protocol clients like Pidgin. And if you do want a client with all the new IRCv3 features, that client can still connect to old IRC servers.
The beauty of an open protocol is that you probably won't need a new client -- all the existing clients will just add it as another network to connect to.
Remember back in the day when everything was an open protocol? We didn't use five chat clients -- we used Trillian to connect to all the different networks.
There's no reason that a web-based chat cannot also have a "thick" client which works as IRC currently does.
We can do both with a single service...
the true problem here is that IRC is long-forgotten by many, completely unknown by most, and those that remain remain because they have a strong attachment to IRC. That strong attachment will make driving a standard forward very difficult, because no two true IRC fans are going to have the same opinions on what a new version should look like.
It's the true fans of open source stuff that hold open source stuff back the most.
I once implemented in a dead chat-app a "typing notification" by sending both the `isTyping` flag, along with the length of the unsent message. On the clients side it was displayed as a blurred lorem-ipsum of the correct length.
It was the nicest form of instant conversation I've ever had. Watching the blurred text become a message was lovely and every conversation felt snapper rather than anxiety-inducing as you start at the "x is typing" message, instead you just watch the sentance grow, then materialise.
Yikes. The amount of times I type a message only to delete it, people I'm talking to will probably be horrified if they saw me give a wall of text to be replaced with "cool".
While I applaud the technical implementation, as someone who needs to e to compose their thoughts and often drafts in the input box of chat apps, with the final messages usually winding up shorter.... That's a fucking terrifying feature.
I'm normally opposed to typing notifications, but I really like this idea for certain channels. How did you handle the case where many people are typing at once? >5 might get noisy if they all had their own lines.
There was a mode in ICQ long ago where the person you were messaging could see everything you typed, as you typed it. A friend of mine always wanted to use it and it was mildly terrifying.
An old ICQ chat window had two text areas: one for each user. The text was updated as you type. IIRC you could change font, color and other text properties.
Official motivation/anti-motivation: 'Conversations can have an increased sense of immediacy when participants are aware that others are in the process of replying.' https://ircv3.net/specs/client-tags/typing#motivation ... I need less 'sense of immediacy' in my life.
Man i miss my IRC Days ! Still have real life friends from that. Also got my fist MP3 'file-send' to me..Lol anyone remembers the wareZz-IRC-Bots/channels. Lol apart from competing in content they also competed in terms of colors/ascii graphics.
Still thinks its miles better than slack/skype for inter-office communication(Notice i said communication not app/task-tracking/1001-Things our over-engineered 'chat-programs' provide today).
XChat - Good times :)
PS. Would love to see some benchmarking for a modern-irc-daemon written in say Go or something else with good concurrency primatives. Was quite a issue 'back in the day' the max clients per server.
I'm still not entirely sure on the point of IRCv3, it seems to me that the main draw of IRC in current times is the simplicity of the protocol, losing that by adding a whole bunch of new features, I don't see what niche IRC fills anymore.
If you read the XMPP discussion from the other day, one of the points highlighted was that there's no common spec for modern features so it's really hard to know if a given client<->server combo supports newer features. IRCv3 is the same idea. Some of it is stuff that's been around for ages so clients just assume it's there like SASL and capability negotiation - these are much more specifying what servers/clients already do, IRCv3 is not adding to complexity here because the complexity already exists.
The second is more green field projects, like the stuff to allow a more web client friendly protocol compared to IRC currently by defining how to use web sockets avoiding the need for stuff like IRCCloud or Mibbit proxying their user's connections. Or chathistory to make it more mobile/not permanently attached friendly.
Slack, Teams, and Discord are proof that there are serious demands to have a chat system. It's just IRC as it is, is clearly outdated for the current market.
It's niche is as simple as it was way back when, you can create your own chat server for your community. Instead of having to use Discord, Slack, etc you can create your own and control it fully. While it's possible to do that to this day it's not to the same level it was back in the late 90s for example.
Damn, this makes me drool over an alternate universe where discord, slack, and teams are just competing irc clients. Unfortunately I can't imagine anything like that ever happening
Minimalist and full-featured implementations can coexist and talk to each other, as all specs are designed with graceful degradation in mind.
Minimalist implementations can also cherry-pick newer features they want. For example, this IRC client explicitly says it in its "non-features" section: https://git.causal.agency/catgirl/about/
Almost everything in IRCv3 is opt-in. If you want to use netcat to access a modern IRC server you can still do it and it looks just the same as it looked in the 90s.
I hate to say this, but even as an old IRC diehard, I have to admit I gave up a year ago or so.
The new IRC is Matrix, or at least for now. For me at least, it fullfills the same needs:
- deploy your choice of server-software on your preferred server.
- use your preferred client to connect to your preferred server.
- allow communities to manage themselves in a decentralized manner, without any San Fransisco-based big-tech company imposing their CoC, ToS or view of "diversity" upon them.
And it does so in a way which is mobile-friendly and supports all the "modern" additions to IM which normal people have come to expect. I can't see how IRCv3, if it ever lands, can compete with this. It's years (decades?) behind at this point.
And if it lands a spec which is equally capable as Matrix, how can it ever be compatible with "the old IRC"? Myself, I'm still running my IRC network and servers, but they are bridged to Matrix and I encourage the community to move there too. And thus ends my interest in IRCv3.
All in all, this seems like a lot of spec-work going into a what is surely going to be a doomed venture.
> - use your preferred client to connect to your preferred server.
I want to like Matrix, but this is currently the most painful point, for me. There are very few mature clients, so they don't serve as many niches or specific tastes as IRC clients.
> I can't see how IRCv3, if it ever lands, can compete with this. It's years (decades?) behind at this point.
Not sure what you mean by "landing". Many specs are already implemented, deployed, and used in the wild.
> And if it lands a spec which is equally capable as Matrix, how can it ever be compatible with "the old IRC"?
Every IRCv3 spec is designed with backward compatibility in mind, so old clients are not left behind, they just don't benefit from the new features. The main mechanism for this is a capability negotiation when clients connect.
I tried Matrix a few months ago, but the clients were pretty horrible compared to irssi. The only functional one was the ugly GUI one with emojis and all that.
>- allow communities to manage themselves in a decentralized manner, without any San Fransisco-based big-tech company imposing their CoC, ToS or view of "diversity" upon them.
the main matrix homeserver blocks you from federating with them if you violate their CoC and kicks all matrix users from your room
> the main matrix homeserver blocks you from federating with them if you violate their CoC and kicks all matrix users from your room
In my opinion that doesn't really matter. matrix.org is "just another homeserver" - it just happens to be one with a large amount of Spaces and rooms, and thankfully federation doesn't orbit around matrix.org nor does it depend on that.
There are plenty of other homeservers which federate with each other quite happily. I've seen some rooms which have a policy of not allowing users with a matrix.org account, because they disagree with the matrix.org CoC/policies/actions, and that's also fine, because the nature of the matrix protocol allows that freedom. If a person wishes to stick with matrix.org, well, they have that choice. If a person has a homeserver which gets booted from federating with matrix.org, that's also fine - the problem will eventually be routed around by federating with plenty of other homeservers. This happens already.
What is the user experience like when that happens?
If you use the main Matrix homeserver and you're in a room hosted on another server when this happens, does your client show a helpful message like: "Sorry, you're not allowed to be in this room any more, because the people hosting the room committed the following thoughtcrime: $REASON"?
I worry that it will instead just look like some generic network error message, with the remote server being tacitly deemed an un-place full of unpersons. Down the memoryhole it goes.
And so users can move to another homeserver with different standards, or run their own. This isn't possible if Discord or Skype or Telegram block your users.
All those points apply to XMPP too, and it's way easier to set up Prosody on a server. Are there any specific reasons why you think Matrix is the next IRC and not XMPP?
I wonder if there is any impedance-mismatch between communicating on mobile and on desktop. On mobile it's kind of difficult to see more than the last few messages in a channel and quoting becomes somewhat more important to be able to follow the conversation.
But on desktop it's completely irrelevant and only distracts by showing the same message multiple times (since I can usually still see the first message).
Quoting to me is for fast running rooms to avoid confusion about which conversation a message is in response to. Or for context when replying to something hours old in a smaller room. It's not really a mobile/desktop distinction.
> - allow communities to manage themselves in a decentralized manner, without any San Fransisco-based big-tech company imposing their CoC, ToS or view of "diversity" upon them.
Darn hippies with their inclusivity and community standards!
People like you is why I long left this forum and IRC servers in general. You give the tech industry a bad name.
can we not be looking for fights please? We are assuming a lot from a fragment of prose and I think would be better if we afforded one another the kindest interpretation of their prose that we can.
How people dare to have different worldviews. People in other countries love so much when a Californian lands from heaven to tell them how they should behave, communicate and be offended.
And yet almost nobody who uses irc uses it, unlike omemo (xmpp) and olm (matrix). Its encryption also predates matrix by a decade, its dh prime is only 1.5k bits big.
e2ee is a challenge for any system that did not have it built-in in the first place, and even more so when the system is open (in the sense of anyone being able to implement their own client/server, and server federation). At the end of the day we will probably not be able to do much better than using TLS to secure IRC, and will just have to trust the server. OTR is OK for those who choose to use it, but it is not universal and requires too much coordination with whoever you are trying to chat with (you have to answer challenges like, "I like my IRC client, I do not care that it doesn't support OTR, we are just chatting about TV shows so who cares?").
Dunno about that. XMPP and Matrix seem to have solved this issue. Plus implementing TLS is much more difficult than implementing e2ee so I do not get the argument.
As an EFnet admin: EFnet ;-) IRCnet is still around too with some very active chat channels (e.g. #worldchat). The networks are much smaller nowadays though.
Want to talk about a FLOSS project? Libera.Chat, OFTC, GIMPNet.
Want to just chat? Snoonet, Slashnet, Quakenet.
Want to just chat but want it to be technology focused? Darkscience, 2600net.
This is a shortlist of public networks I can recommend to a new/returning user; there are many smaller networks out there that you might discover organically with time.
So,a basic standard web chat spec. I am good with that.
Didn't see anything about WebRTC, so no multimedia? I'm fine with that, too. Basic is good.
Now, I am not up to date with modern chat apps, but I'd imagine most of what is out there has everything in this draft and then some. So, why would anyone commit to the protocol besides nostalgia. Not saying it's bad, just wondering
Remember back in the day when everything was an open protocol? We didn't use five chat clients -- we used Trillian to connect to all the different networks.
We can do both with a single service...
the true problem here is that IRC is long-forgotten by many, completely unknown by most, and those that remain remain because they have a strong attachment to IRC. That strong attachment will make driving a standard forward very difficult, because no two true IRC fans are going to have the same opinions on what a new version should look like.
It's the true fans of open source stuff that hold open source stuff back the most.
It was the nicest form of instant conversation I've ever had. Watching the blurred text become a message was lovely and every conversation felt snapper rather than anxiety-inducing as you start at the "x is typing" message, instead you just watch the sentance grow, then materialise.
Except for the noobs that plonk down a question and leave a minute later.
thunderous storm of typing notifications blacks out the screen
Deleted Comment
I get these now through quassel but it'd be nice to have them in the protocol.
I have a feeling IRCv3 will never be finished though. The activity level is just too low.
Still thinks its miles better than slack/skype for inter-office communication(Notice i said communication not app/task-tracking/1001-Things our over-engineered 'chat-programs' provide today).
XChat - Good times :)
PS. Would love to see some benchmarking for a modern-irc-daemon written in say Go or something else with good concurrency primatives. Was quite a issue 'back in the day' the max clients per server.
mIRC... those were the days. Good times, indeed!
The second is more green field projects, like the stuff to allow a more web client friendly protocol compared to IRC currently by defining how to use web sockets avoiding the need for stuff like IRCCloud or Mibbit proxying their user's connections. Or chathistory to make it more mobile/not permanently attached friendly.
It's niche is as simple as it was way back when, you can create your own chat server for your community. Instead of having to use Discord, Slack, etc you can create your own and control it fully. While it's possible to do that to this day it's not to the same level it was back in the late 90s for example.
Minimalist implementations can also cherry-pick newer features they want. For example, this IRC client explicitly says it in its "non-features" section: https://git.causal.agency/catgirl/about/
The new IRC is Matrix, or at least for now. For me at least, it fullfills the same needs:
- deploy your choice of server-software on your preferred server.
- use your preferred client to connect to your preferred server.
- allow communities to manage themselves in a decentralized manner, without any San Fransisco-based big-tech company imposing their CoC, ToS or view of "diversity" upon them.
And it does so in a way which is mobile-friendly and supports all the "modern" additions to IM which normal people have come to expect. I can't see how IRCv3, if it ever lands, can compete with this. It's years (decades?) behind at this point.
And if it lands a spec which is equally capable as Matrix, how can it ever be compatible with "the old IRC"? Myself, I'm still running my IRC network and servers, but they are bridged to Matrix and I encourage the community to move there too. And thus ends my interest in IRCv3.
All in all, this seems like a lot of spec-work going into a what is surely going to be a doomed venture.
I want to like Matrix, but this is currently the most painful point, for me. There are very few mature clients, so they don't serve as many niches or specific tastes as IRC clients.
> I can't see how IRCv3, if it ever lands, can compete with this. It's years (decades?) behind at this point.
Not sure what you mean by "landing". Many specs are already implemented, deployed, and used in the wild.
> And if it lands a spec which is equally capable as Matrix, how can it ever be compatible with "the old IRC"?
Every IRCv3 spec is designed with backward compatibility in mind, so old clients are not left behind, they just don't benefit from the new features. The main mechanism for this is a capability negotiation when clients connect.
the main matrix homeserver blocks you from federating with them if you violate their CoC and kicks all matrix users from your room
In my opinion that doesn't really matter. matrix.org is "just another homeserver" - it just happens to be one with a large amount of Spaces and rooms, and thankfully federation doesn't orbit around matrix.org nor does it depend on that.
There are plenty of other homeservers which federate with each other quite happily. I've seen some rooms which have a policy of not allowing users with a matrix.org account, because they disagree with the matrix.org CoC/policies/actions, and that's also fine, because the nature of the matrix protocol allows that freedom. If a person wishes to stick with matrix.org, well, they have that choice. If a person has a homeserver which gets booted from federating with matrix.org, that's also fine - the problem will eventually be routed around by federating with plenty of other homeservers. This happens already.
If you use the main Matrix homeserver and you're in a room hosted on another server when this happens, does your client show a helpful message like: "Sorry, you're not allowed to be in this room any more, because the people hosting the room committed the following thoughtcrime: $REASON"?
I worry that it will instead just look like some generic network error message, with the remote server being tacitly deemed an un-place full of unpersons. Down the memoryhole it goes.
The question isn’t “If this can work with Matrix why not XMPP?”, the question is “Will Matrix have the same issues as XMPP?”
Darn hippies with their inclusivity and community standards!
People like you is why I long left this forum and IRC servers in general. You give the tech industry a bad name.
And still no e2ee, after all these years.
There are (were) many smaller groups that use private channels. It is also how me and my first bf and some of my friends ended up talking.
EsperNet is on the list too. I remember spending a lot of time on there way back when.
Want to just chat? Snoonet, Slashnet, Quakenet.
Want to just chat but want it to be technology focused? Darkscience, 2600net.
This is a shortlist of public networks I can recommend to a new/returning user; there are many smaller networks out there that you might discover organically with time.
Didn't see anything about WebRTC, so no multimedia? I'm fine with that, too. Basic is good.
Now, I am not up to date with modern chat apps, but I'd imagine most of what is out there has everything in this draft and then some. So, why would anyone commit to the protocol besides nostalgia. Not saying it's bad, just wondering