Ask HN: Curious to know if people still use IRC?

260 points by pyeu ↗ HN
What channel do you hang out? What do you use it for?

253 comments

[ 2.8 ms ] story [ 240 ms ] thread
I infrequently hang out in the #go-nuts channel on freenode.
I used it up through college and then switched over to Discord/Slack for all my text based conversations outside of texting from my phone. I really do miss the IRC crowd sometimes but the people I want to talk to are on Discord or Slack now.
All day, every day! I work for a team of people that have been together for over 20 years in some cases, with a few people dropping out and a few people coming in over the years. We've always hung out in an IRC channel as our main form of team communication. Initially because there wasn't any other workable option, and now because it's what we've always done and it works for how our team operates.
Yep. I pop in #NetBSD on Freenode on occasion, whenever In working on something in current or have an unanswered question. It seems to he the only place to get help on products that might not have the biggest userbase or support out there otherwise. Most channels I've been in have a pretty friendly userbase as well, at least much better than many Discord servers I've been it.
Idling, hoping it'll come back into prominence through some sort of nostalgia wave.
Most of the channels I've been in on freenode are active... efnet and other nets, not so much.
sure. freenode for free and open projects and hackint for everything ccc / chaos community related.
IRC is still the best place to get help quickly (if you know the right place to ask), especially for some more esoteric tech niches...
And if you know how to ask the right question.
Entirely depends on population/community.

The niche things are normally what I have the most trouble with and will just wait for a stackoverflow or mailing list response

I'm looking forward to when the onboarding process for IRC approaches the usability level of contemporary chat services such as Slack, Rocket Chat, Zulip, etc.
Slack is just too hard to understand. I still don't get it. I have to go to a webpage and enter a server / channel name. I have to create a password for each one, if I get approved it then takes me to a slack web client with no obvious way to open the chat in the app.

If you install the app on a different machine, you have to add everything again.

It's not a good user experience.

Slack is just too hard to understand. I still don't get it. I have to go to a webpage and enter a server / channel name. I have to create a password for each one, if I get approved it then takes me to a slack web client with no obvious way to open the chat in the app. If you install the app on a different machine, you have to add everything again.

It's not a good user experience.

If you use the same email address, then I think Slack will not automatically log you in to all servers you're part of at the same time.
I think some of us geeks have an unusual perspective on what's confusing and what's straightforward or easy. I've been repeatedly told GH issues is "too confusing" or "too technical" versus Asana and Jira for the non-developers (WT actual F?!?! Seriously this one baffles me entirely, I can't even begin to wrap my head around it) and find most social media sites extremely confusing, especially considering how little they actually do.

I don't get it, but there it is.

Here's the flowchart you're running into:

Have I already learned how to use something with approximately the same functionality? → [New Thing] is too confusing! [Old Thing] is intuitive!

It's a very simple flowchart and almost everyone in the world uses it.

It’s not right for everyone, but I find IRCCloud to have a really low barrier to entry.
It's been mostly reduced to free software projects channels/networks and just semi-private channels for groups of friends who've been on IRC for years now. So #archlinux, #dolphin-emu, #python, ##machinelearning, etc. all on Freenode are pretty active.

There's some hobby and subreddit related channels too. Like ##chess, and #rubik.

Other than that, the language learning community was surprisingly very active years ago, so it's still kinda alive. Language-specific channels like ##deutsch, ##espanol, etc. on Freenode are kinda alive. There's also ##learnanylanguage.

I was once surprised to find that there is also active porn IRC servers. It's unexpectedly mainstream.
I use #xendevel to collaborate with other Xen developers basically every day. Also use #centos-devel, #centos-virt, and #centos-meeting for various CentOS-related things. Also lurk on #golang-nuts and occasionally either ask or answer a question on there.

But it's all more or less work-related now.

All day, every day, for both work and social purposes.
Could you please share some social channels you find interesting for the uninitiated?
I think he means private messages but there is one tip I can give you that adds much to the experience: Stay logged in and use IRC like email exchanges on slow channels and in private conversations. IRC ofc does real time chat but the best stuff is even slower paced than email. If no one is talking for months it is perfectly fine to answer a question asked half a year ago. Logging in to dump a question then leave again 5 min later is a bit like removing your mailbox after receiving a letter or quickly switching off your phone after each call. Don't expect anyone to be interested if you use the web client.

Also, asking questions is fine but answering them is much better if you want to learn something. Other peoples q&a is just as useful. Lurking is fine. Just find the channel for every language and every tool you use and stay there forever.

Some channels have a separate #foo-social or #foo-offtopic place for [usually slow paced] interesting stuff that is unworthy of the main channel. Travel around, check out new places. Some are well hidden.

If you are truly a useful asset you get to behave.... uhmm... somewhat like an idiot.... don't go ask the biologists where the white stork gets the babies from on your first day.

Enjoy!

No, the best part about them is that they're not known to the general public. If you spend enough time on IRC, you'll find your way into social channels naturally.
Will there be a sr.ht channel/server? Is there already?
There's #sr.ht on irc.freenode.net
I recently started a greenfield project with some newer (to me) technologies. After some Googling for issues, I decided to try some Freenode channels related to the frameworks/languages. To my surprise, the people on IRC were far more helpful on average than the official Slack channels or forums normally advertised. I highly recommend it for code help, but I've yet to re-explore some of the more hobby related channels of my past.
Isn't everybody using slack technically also using IRC?
I don't think Slack is based on IRC, no. I believe the best-known IRC-based system (that's not obviously IRC itself) is actually Twitch chat.
They used to have IRC / XMPP gateways. Closed them down.
Every day,

It's become a social network of sorts for geeks, despite the age of the protocol I still find it the least "invasive" and most friendly experience, but that's probably because I spent the time configuring a client that's nice for me. (preview: http://imgs.fyi/img/9ve2.png )

I run a network even, called darkscience and it's available at irc.darkscience.net (TLS only on port 6697) the lobby is #darkscience

ircs://irc.darkscience.net:6697/#darkscience (for those that can parse the url!).

Everyone here is welcome to join us of course, but we put a high emphasis on civility.

That looks quite nice! If you're using irssi would you be willing to share your colors / setup?
Seconded!
I extracted a few color codes and this looks alright.

XFC4-Terminal Config

  ColorPalette=rgb(0,0,0);rgb(234,57,145);rgb(85,183,8);rgb(192,132,1);rgb(66,158,224);rgb(157,101,214);rgb(7,139,139);rgb(208,208,208);rgb(128,128,128);rgb(255,95,175);rgb(175,215,0);rgb(255,175,0);rgb(143,180,255);rgb(175,135,215);rgb(0,175,175);rgb(255,255,255)
RGB

  0,0,0
  234,57,145
  85,183,8
  192,132,1
  66,158,224
  157,101,214
  7,139,139
  208,208,208
  128,128,128
  255,95,175
  175,215,0
  255,175,0
  143,180,255
  175,135,215
  0,175,175
  255,255,255

Hex Variant:

  #000000
  #EA3991
  #55B708
  #C08401
  #429EE0
  #9D65D6
  #078B8B
  #D0D0D0
  #808080
  #FF5FAF
  #AFD700
  #FFAF00
  #8FB4FF
  #AF87D7
  #00AFAF
  #FFFFFF
It's weechat, I can't really claim all the credit, I found blog posts online about minimal setups and I've just kept it up to date. Nothing special.

Since I don't know how to easily package it I just took a tar of my .weechat and .config/alacritty directories, which should at least help you get started if you want an identical setup to mine. You just need to change your username in .weechat/irc.conf

https://0x0.st/zl_O.tbz2

not irssi but I use ERC (an IRC client in Emacs) with a modified version of https://www.emacswiki.org/emacs/ErcHighlightNicknames to automatically color nicknames (it takes the first 12 characters of the md5 of each nick and treats that as an RGB value, with some clamping and color space tweaks). Everybody has a perceptibly different color, even in channels with tons of people.
> I still find it the least "invasive"

Doesn't it just broadcast your IP address pretty plainly?

Many of the IRC networks offer a "cloak" if you register your nickname, and of course it's trivial to connect via a VPN or via Tor (if your network allows it).
Side-note on the cloak: You'll want to make sure you're identified before you join any channels, or everyone will still see your IP. The best way to do this on networks that support it is to use SASL.
There are vanity vhosts and there are cloaks.

Cloaks apply uniformally but will not mask the last bit of your reversed hostname. So it might leak info about your ISP or region but not your full IP.

What you stated is true of vanity vhosts though. Which will mask the whole record only if you’re logged in. :)

I think this is a split in terminology, actually.

IRCds such as InspIRCd and UnrealIRCd speak of cloaks in the sense of user mode +x, commonly set on connection, which scrambles an incoming user's hostname/IP address to e.g. hidden-5npgt1.iinet.net.au or hidden-qjia2j.ncp0.j4h4.014d.2804.IP.

Freenode, nota bene the largest IRC network right now, uses cloaks to instead refers to a special format of vHost[1]. It does not offer Unreal-style cloaking.

I imagine this difference in terminology is what's prompted this exchange.

[1] https://freenode.net/kb/answer/cloaks

Back in the days I had to pay extra for a bnc/bouncer service (similar to a proxy), now most IRC networks offer vhost automatically, but I assume it's a bit less secured since the IRC networks themselves still know your real IP address.
It's not really possible for a server not to know the clients IP address though, so I think this is fair.

I do see what IP you're connecting from, but that information is limited to me only, and it's not like I care unless you're doing something very harmful to the service in which case I would ban you based on IP most likely.

Sadly, I'd argue that broadcasting your IP is the least invasive of the options available today.
Nah most irc networks masquerade the client ip in the whois to prevent ddos.
Setup something like ZNC
It depends, most require you to register first before your IP is hidden, just like Wikipedia. In both cases, it's so the mods at least have some kind of tools to (hopefully) identify who a person is.
Who really cares in this day if anyone knows your IP? It's not like that many of us are running servers from our home connection and thus vulnerable in some particularly pointed way. Behind a NAT you're pretty much fine unless some nation-state is out to get you.
You haven't used IRC much, have you? Maybe it's become a more civil place, but years ago exploits and DOS attacks over some stupid dispute were common.
Please do share your irc client config if possible :)
The client config is a little unweildly unfortunately due to the nature of weechat; but all the config is here if you want to read it;

https://0x0.st/zl_O.tbz2

You're the reason I joined DarkScience sometime back, event wound up paying for IRCCloud which I can't recommend enough for those who want to just have a "slack like" experience. They open source some of their solutions too.

DarkScience is a good community, I'm not very active, I lurk a bit, but these days my social network is all on Discord. I've ran my own independent IRCd before using ngircd and it was great for my small community, but now that they're just all on Discord, it's kind of pointless for me to run a daemon.

I do dream of hosting an IRCd again if Discord ever goes too far. We do talk about reverse engineering and such so we are kind of at their mercy. I think the one thing IRC is missing is a solid client for those of us who like desktop / mobile clients. There's no reason an IRC client can't preview images and render youtube videos like Slack does, at least for those of us who like that kind of thing, I know some IRC users like their terminal clients.

What I like is that the clients were written years ago and weigh almost nothing. I can leave them running in the background on even the wimpiest trash netbook and it doesn't care.

Compare to Slack or Signal or Discord where the client is some half a gig chomping behemoth that spins up the CPU fans constantly.

I thought I was the only crazy person that hates anything that spins up a fan on my laptop. Why Java sets of fans when I spin up anything (even an empty spring project) in my IDE I just don’t understand. Even IntelliJ and eclipse with no project loaded seem to set off the fan.
Personally; I can forgive an IDE, depending on what I'm doing (just viewing source shouldn't be spinning my fans).

But debugging, deep code inspection and so on are complex features used by specialists.

Slack is designed to be used by everyone; thus I don't give it as much of a pass. Because if everyone in my company is using a CPU core and 1GiB of memory to just talk to people then that's a very high actual cost of resources.

Just like you can forgive specialist software in other areas (final cut, photoshop, CAD) taking significant resources.

Tools designed to be used by everyone should be lean, optimised and feature complete. In my opinion.

You're not crazy. I feel the same. Similarly, I was beginning to think that I was crazy.... As another pointed out, I give a pass to heavy applications like my IDE.... but when my shopping-list app is using a Gig of memory and spinning up my fans, then I want to gouge my eyes out in disgust.
Yes, and lots of data fit into 80x24 xterm vs 1280x1024 Discord. Crazy that I need an entire workspace per Electron apps. I have no idea what goes in on the developers' mind when it comes to unnecessary padding/spacing.
I'm interested in hearing more about how you've configured your client, do you have a repo or anything? Have you included plugins or add-ins from outside sources?

Edit: Just saw your other comment, I'll check out your setup later this week!

I find that what I want out of a chat client is something that can easily idle in the background and beep at me if someone @'s my username, with a way to handle missed messages, but I've never really gotten irssi setup in a way that feels comfortable for that kind of flow. Something about the way IRC works seems to encourage me to just hop on if I have a question for a community, and then hop off when I'm done to avoid people trying to follow up with me while I'm not there. It's hard for me to imagine what the IRC experience looks like for the people who hang out there seemingly semi-permanently

I think this is a fair ask, unfortunately I made my setup for me and it's not exactly designed to be packaged/reused, but I linked my configs (in tarball format) here: https://0x0.st/zl_O.tbz2

What you're requesting is actually the normal way most of the people I talk to use IRC. I have a highlight buffer[0] script which keeps a history of all the times I get mentioned, and weechat supports libnotify so if your desktop is able to get pop-ups then you will be notified on highlight. (I use dunst for this).

There are also Quake-like terminal emulators that drop down on hotkey- these are also quite common and can make it really easy to just check what's going on when you have a spare second.

I will write a blog post about how to achieve my setup for linux users since there seems to have been mild interest. And I'll do some work on packaging it up so it's easy to take the bits that people like. I am using a fair number of plugins though.

this is what I have loaded (they are all on the weechat scripts site, just google the filename and "weechat):

  perl/autoload/:
  bashorg.pl@  colorize_lines.pl@  notify_send.pl@  sysinfo.pl@
  beep.pl      highmon.pl@         perlexec.pl@     volumeter.pl

  python/autoload/:
  autosort.py@   colorize_nicks.py@  fullwidth.py@  otr.py@      ws_replace.py@  zncplayback.py@
  bandwidth.py@  edit.py             go.py@         urlgrab.py@  xfer_setip.py@
  chanop.py@     emoji2alias.py@     ichatts.py@    vimode.py@   zncnotice.py@

  ruby/autoload/:
  mpdspam.rb@

[0]: https://weechat.org/scripts/source/highmon.pl.html/
Thanks for all the detailed info! I'll probably save it to look at in a couple of weeks when I'm going on a work trip and planning to redo a bunch of my configurations.

Where can I check for your blog post (assuming you decide to put one up)?

I wonder where you host it? Every other hosting provider does not allow IRC servers, what a shame.
I've never run across a VPS or dedicated server provider that blocked inbound IRC. What providers prevented you from running an ircd?
This was a long time ago (7-10 years), but 1and1, Hetzner, OVH, HostGator, LiquidWeb did not allow IRC hosting. They were the cheapest, tbf. I only use Linode now, haven't looked into it.
Hi there! Disclaimer - Linode employee here.

I can't speak for the other services, but we have a very active IRC channel. I run my IRC instance off of a Linode I created just for that purpose.

Ah. Of those, I've used Linode and OVH. Neither ever gave me grief for having IRC, but I also ensured that I never had botnets connecting to me, which is what most of them don't like dealing with. I've never tried 1and1, Hetzner (ive heard good things about them), HostGator or Liquidweb.

I am certain that Linode won't give you any grief as long as you make some effort to keep botnets from abusing your service.

I think they might no longer do this but for many years Linode's Atlanta location blocked access to IRC-specific ports, I believe because of a specific policy by their Atlanta datacenter.
Linode Employee here:

I've personally checked with our Network Operations team, and ran a test with a teammate. We do not currently block IRC ports.

>I never had botnets connecting to me, which is what most of them don't like dealing with.

It’s the DDoS attacks they didn’t like dealing with, but I suppose that’s one way of describing it.

Yeah both really. The botnets usually act as C&C for tools that create outbound DDoS attacks and exfil user data. They also create jump-off proxy points to mask their location. IRC is a very handy way to control large numbers of attack bots.
Even if it's not blocked it is discouraged or against ToS for a fair number of places (including our current provider, tilaa). However I asked specifically for an exemption because we've been around for nearly 20 years at this point.

Most cloud providers (GCE, AWS, Azure) don't seem to mind though.

I've not run into too many issues with IRC servers being blocked, but nothing is going to block IRC over SSL running on a non-standard port anyways.
(comment deleted)
I never heard of darkscience before, so I will definitely check it out.

I seem to use IRC in irregular bouts, like half a year consecutively and then not at all for a year.

Is there a popular IRC plugin / protocol for pretty printed math formulas? This is also what I miss a lot on HN, but I understand it's due to a more programming centric audience. I wish either HN had math formulas, or a fork of HN directed toward scientists / engineers / mathematicians allowed it.

Nice to see SSL enforced ircd. Coming out of Dalnet, Ircnet and Efnet the only short-coming i really found in IRC was the fact that most networks until very late promoted clear-text transfers. I might even pass by your network this evening to revive that feeling /me once had :)
I totally like this, is it hexchat ? If yes I'd really like to have your theme configs please :)
That's how it looks like to not read the comments, thanks for posting this.
Twitch's chat system is build on top of IRC so technically yes.
I use IRC as a last resort since many of the regulars there are rude assholes.
This is largely true, but you do find good channels with friendly people on freenode still. #twisted comes to mind..
Isn't this a bit like saying "many of the regulars on reddit are rude assholes" but you mostly see subs like r/inceltears or r/tumblrinaction ?

I think the community has a lot to do with it and each channel is often its own community and culture, even on the same server.

nah on reddit, there is active moderation and users self regulate and you don't see real scum and villainy unless you sort by controversial(or seek out a subreddit that sucks)

in any irc it's constant and due to the inertia of users, even if you come back a month later the same user will probably come back and say the same dumb stuff to you instead of you finding someone new to talk to

Perhaps, but the issue you're having is indeed a lack of moderation. And IRC does not lack moderation tools.
It does lack a significant number of people willing to take over somebody else's IRC channel though. There is a lot of cultural inertia around it
I used IRC a lot for some time a few years back. I avoided the big channels like the ones for javascript and python, and stuck to smaller (< 100 people) channels. People were very nice, responsive and helpful. At one point IRC channel-presence became one of the main criteria by which I chose new technology to work with: it correlated with something good if a community maintained a good IRC presence.
Same here, if the newfangled hipster stuff doesn't have an irc channel it doesn't have enough of those really old people who again and again watched their stuff crumble in their hands for reasons they were sure were not going to happen. Just picture them sitting there silently raging at the invasive species that are colorful unicode smiles looking back at them from what use to be their purist text interface. How can you not love a place like that?
Google uses it internally for incident management.

https://landing.google.com/sre/sre-book/chapters/managing-in...

It's a lightweight server and client that can stay up even when most of Googles core tech is down. You can easily log data from channels, and it just works.

Googlers also use it for the daily chat, not just incident response.
Very specific Googlers, mostly SREs, use IRC.
After I switched from SRE-SWE to just SWE, my team (of six SWEs) used IRC and it wasn't because of my influence, either.
In my experience most SWE teams just use the hangouts chat nowadays
(comment deleted)
Freenode is alive and well. #python, #postgresql, and more recently ##rust
• Support channels for various open source projects

• Fallback in case the new-fangled webshit breaks for the fifth time a month

• Old communities that see no point in moving to said often breaking webshit

But none of this has any growth potential, so we'll see for how long I'll keep using it.

I'd rather see IRC usage expand over discord and slack use myself... It'd be nice to maybe see an open-source application and bots that allow for better integration with source control and CI/CD options though. This way it's easier for everyone to interact with a more open base standard.

While discord isn't too bad, it's sometimes hard to find and join the communities you might be looking for. Where as with freenode, and irc in general, discovery is imho easier.

I don't bother with efnet anymore, but do also join irc.synchro.net for a couple channels (also very inactive).

I really do like Discord's, UI, and have wanted to build an IRC client with a similar UI, but I'm not sure how difficult a feature-complete client implementation is.
FreeNode seems to have some really active channels... outside of that, all I see on the servers I connect to now and then are a lot of lurkers.

The cool thing is, in general when I've exhausted my options, a lot of people deeply involved in various projects do tend to hang out in freenode's channels. I don't keep hexchat open all the time, just fallen out of habit, but I'll be in ##javascript and #csharp mostly, lately I've also been joining in on ##rust (though I have to manually enter as I'm blocked until after NickServ validation).

One key is to really keep one's expectations in check. You'll get a faster response in IRC than say a Github issue, but nobody is under any obligation to help you and it's good to be mindful of that and respectful.

Slightly off topic, but did you know you can use SASL to auto identify with NickServ on Freenode?

Edit: typo

Did not know that, thanks... will have to update my setup... just used to NickServ for it all.
Shhh, it's my secret weapon when it comes to software engineering. Freenode is the place. Whops.. now it's out.