Live data from Hacker News

IRC is the only viable chat protocol (2022)

koshka.love

351–360 of 446 posts

Re: IRC is the only viable chat protocol (2022)

#351
This kind of article occasionally pops up on HN and for lack of a better word, it's just kind of detached from reality.

As a preface, I'm not telling you not to use IRC. If it works for you, if you like to use it and deal with its quirks and anachronisms, more power to you. There are loads of great communities out there on various servers.

Having said that...

I couldn't in good conscience recommend IRC to a hypothetical someone who's never used a chat program, under almost any circumstance. The feature set is truly beyond meagre by modern standard, with some, though not all of these shortcomings being resolved by standing up, and administering, a bouncer, and (if you're using something like irssi) a stew of Perl incantations. Which, again — I'm not bashing, necessarily, but Perl just isn't a language most people are learning these days, for a number of reasons.

Following up, though:

- Admining a bouncer, while not a full-time job in the long run, is something you need to keep on top of, from keeping the host up (both in terms of potentially paying bills if you're using commercial hosting and in terms of making sure resource usage is fine, nothing's crashing, and security updates). It's also nontrivial in the strict sense: I couldn't teach my parents to do this.

  - `tmux` or `screen` are _easier_ options, but man, it always feels dodgy to use them like this. I ran Python servers like this when I was an intern because I hadn't figured out how to create an init script and before Docker was the staple that it is now.
- Multi-device support is rough. If you have a bouncer, you're better off, but without one, you're talking about either strictly logging out and back in, or having multiple `handles`, `_handles`, `__handles`, etc.

  - Other commenters have pointed out that Discord, Slack, etc., have occasional sync issues between devices -- but *at least they support multiple devices.*
- Server federation/decentralization, while a feature for some, is more of an extra complication for most, I'd wager, especially without a reasonable central source of truth about identity. In Discord, there are server usernames as well as a global username (which is editable by the user), as well as a non-editable numeric identifier.

- Search is functionally non-existent without a bouncer

  - Once again: this is a feature that's not prefect on other platforms, but at least it's *there.*
- Bots in IRC have no concept of permissions outside of what the default handful of roles offer, because IRC doesn't really do granular permissions on its own (which sort of makes sense, that's application-level, not protocol-level.

I'm not making the argument that Discord/Slack/whatever are universally better than IRC in every way. I'm trying to argue that their usability is top-tier compared to IRC, for most people. I also won't say that Discord "killed" IRC. IRC is an older-generation chat protocol/UX, and by that logic it's gonna keep getting killed with every new generation of chat client. First, it got killed by Teamspeak, then Slack, and now Discord, each using their feature sets and UXes to chip away at what's left of the IRC user base.

This isn't even touching on the other features offered by these chat platforms that IRC just doesn't really touch -- mainly, reasonably reliable audio/video calls and screen sharing. And I gotta say, dealing with self-hosted live video streaming is surprisingly hard to get right for calls of more than 2-3 people, generally speaking.

There's some argument to be made about data ownership, but honestly, the more time goes on the less I believe most people care about that very much for casual chats. If you're worried about the government or (much more likely,) advertisers coming after your private chats, IRC is absolutely not an inherent solution to this, and is by default probably about as bad as any centralized platform in this regard.

Use whatever you want and what works for you. I genuinely don't care. But don't deal in absolutes like this; you'd have to be really full of yourself, or totally out of touch with reality and how users interact with software to make a claim like this article's title. Discord and Slack aren't perfect, and certainly, IRC power users who've been on that platform for years or decades may find it falls short in some ways, but for the average person, they're both likely better alternatives.

It's also kinda weird to fanboy over this kind of thing, which is the impression I always get from these posts. "I use X because the communities/friend groups/features/tools I like or am part of are there" is an extremely valid subjective argument for preferring a platform. "I dislike Y because it has A, B, and C issues which break the user experience for me" is just as valid and more objective. "Everything that's not Z is bad because of $PERSONAL_MORAL_FRAMEWORK reasons, and if you wanna put the work into it, Z can be usable actually."

Re: IRC is the only viable chat protocol (2022)

#352
post #274

Earlier quoted context omitted.

It's a very interesting topic. Feature will alter the sociological / human aspect of the tool. I could feel it on discord, you join a room like on IRC, you join a realm, a group with lots of idiosyncrasies. When I join an IRC chat there's a lot less baggage.. it's just a label / topic, it's very freeing. logging, message fixing, embedded replies .. all great but not important in the end. These things are blending pro…

Having the ability to reply to a message would be incredibly useful in irc, which is being worked on: https://ircv3.net/specs/client-tags/reply.html

Everyone of these feature is entirely awesome, but when talking i actually find that it changes the nature of the convos.

Re: IRC is the only viable chat protocol (2022)

#353
post #8

> The reliability and lack of bloat that are inherent to IRC ultimately also means that there are a number of fancy modern features that Discord has that IRC lacks, a big one being the inability to view backlogs of conversations that transpired while one was not connected to an IRC server. Although IRC does not itself provide this functionality, the extremely simple nature of IRC allows for a couple of lightweight op…

>Logging isn't a "fancy" feature If you're storing data, someone somewhere has to pay for housing it. One of the reasons IRC is lightweight is because a network and its constituent servers only facilitates exchanging data between users. Consider how Discord is begging you and everyone to sign up for Nitro because they're housing and serving all of their data. Most IRC networks on the other hand operate perfectly fine…

> Consider how Discord is begging you and everyone to sign up for Nitro because they're housing and serving all of their data. Most IRC networks on the other hand operate perfectly fine off of donated volunteer time and hardware for tens of thousands or even hundreds of thousands of users.

As of around a year ago Discord claimed to be passing around 4 billion messages a day.

I don't know how their average message size compares to Slack, but I just took a look at an export of messages from my company's Slack server and our busiest day in six years was just over 1MB in uncompressed JSON format, around 1.4KB per message. Compressed it was around 104 bytes per message. If we assume that the average message size is similar and similar amounts of metadata are stored per message, that means we're talking about somewhere between 400GB and 5.6TB per day for the entirety of Discord.

That's a lot of space on an individual basis, but nothing for a global-scale service. Obviously that's just for text and not any uploaded files, inline previews, thumbnails, etc. but still the point remains. Archiving text is not really a hard problem to solve. It's tiny by modern standards.

Re: IRC is the only viable chat protocol (2022)

#354

Earlier quoted context omitted.

Many who have causally read about Matrix and looked into running a homeserver have run across the reference implementation Synapse, which is (IMO only, pls no flame) a bloated python monstrosity. This turned me off for years. A second-gen (?) alternative written in Go called Dendrite is much lighter weight, but is lacking in some features last I looked. A couple of years ago, I found Conduit ( https://conduit.rs/ ) a…

>bloated python monstrosity >an ultra lightweight 370 crates in Cargo.lock 176 crates downloaded by cargo-tree

Not a surprise, Rust has attracted the Node.js crowd and they've brought their packaging philosophy with them, if not their love for reinventing the wheel every few weeks.

Re: IRC is the only viable chat protocol (2022)

#355
post #158

Earlier quoted context omitted.

Well, in fairness, I believe the guy that got caught posting classified docs in a small private discord server would appreciate privacy, even if I myself and a lot of people almost exclusively use public servers and would prefer if they were even less private so internet search would work.

His friends passed the documents along to their friends, and they eventually got the attention of the New York Times. At that point tracing the documents back to him would probably have happened regardless of whether he used IRC or anything else. Do you have any evidence that him using a centralized platform like Discord played a role in him getting caught?

Discord handing over his billing details certainly made it quicker at least https://www.forbes.com/sites/mattnovak/2023/04/14/fbi-used-d...

Re: IRC is the only viable chat protocol (2022)

#356

Matrix is a very viable chat protocol: I have been using it now full-time for some months. I even bridged my whatsapp and telegram accounts so that I exclusively use the matrix clients on my phone and desktop without hiccups. I find that I can use it both for IRL friend groups á la whatsapp, and for online "rooms" á la IRC/discord/slack (but with history, which IRC is lacking).

How do you deal with the terrible element client? I use matrix, but I don't bridge my accounts because I can't trust element.

Same. Element is the single reason I dislike Matrix with a passion, and any other client is either another Electron monstrosity, or a crappy native app that's little more than a proof of concept.

Element is so bloated and slow, it's impossible not to feel Matrix is bloated and slow as well.

Re: IRC is the only viable chat protocol (2022)

#357
post #8

> The reliability and lack of bloat that are inherent to IRC ultimately also means that there are a number of fancy modern features that Discord has that IRC lacks, a big one being the inability to view backlogs of conversations that transpired while one was not connected to an IRC server. Although IRC does not itself provide this functionality, the extremely simple nature of IRC allows for a couple of lightweight op…

Discord has shitty logging and log-search capabilities. Discord's logging is shitty because: 1 - The logs aren't yours, they're Discord's. If you get banned from the server, your server shuts down, or Discord bans you altogether your access to those logs is gone forever. 2 - Unlike the logs of some IRC channels, Discord's logs aren't available on the web anywhere, so they can't be indexed or searched outside of Disco…

I think everything discord does is still outright better. I was an IRC yser for a long time and I still have a znc server out there running, but:

Everything is painful. Clients tend to be terrible and I cannot search at all in IRC, or I get weird integrations between znc and and the chat client.

All in all, i'd rather use discord than IRC, even with the downsides. I do prefer forums or the "was" reddit for information.

Re: IRC is the only viable chat protocol (2022)

#358
post #294

Discord haters look, it is simple. Until Discord appeared we had Ventrilo, Mumble, TeamSpeak, Skype, etc, etc I've been using those for like 10 years almost everyday They had voice chat, some had viable text chat, etc, etc. And then Discord appeared which had: Voice Chat, Good text chat (images, code snippets, emojis, reactions, etc) Streaming Video (!!) File share Robust bot integration Lack of security problem unli…

Since you are a Push To Talk user, I'm honestly curious: how is it different from temporarily un-muting yourself? Like, how does it work better for you, or cause fewer problems, or something. It's so popular in so many places that I assume I'm missing something obvious. I've always just hit a key to toggle mute though.

e.g

You're playing video game / sharing your IDE / whatever

with discord/ventrilo/whatever being in the background

you push e.g MOUSE3 (scroll) button - talk, and stop holding it.

And you were unmuted just for the moment of holding scroll button.

Re: IRC is the only viable chat protocol (2022)

#359

Earlier quoted context omitted.

His friends passed the documents along to their friends, and they eventually got the attention of the New York Times. At that point tracing the documents back to him would probably have happened regardless of whether he used IRC or anything else. Do you have any evidence that him using a centralized platform like Discord played a role in him getting caught?

Discord handing over his billing details certainly made it quicker at least https://www.forbes.com/sites/mattnovak/2023/04/14/fbi-used-d...

Every company will hand over your data if subpoenaed by a law enforcement agency in the country they operate in.

Re: IRC is the only viable chat protocol (2022)

#360

Earlier quoted context omitted.

if IRC weren't fit for purpose, nobody would be using it

That depends on your definition of purpose. If the purpose is to be niche tech, then yeah, sure, you're right.

in exactly the same way as how the post I responded to depends on your definition of purpose, a point it seems I illustrated successfully

as for your snide, obviously wrong comment at the end, it's not worth a substantial response

Post reply on HN