Hacker News new | comments | show | ask | jobs | submit login
The History of IRC (irc.org)
163 points by pmoriarty on Nov 30, 2014 | hide | past | web | favorite | 90 comments

It's kind of cool that IRC actually pre-dates the web. It's always on the verge of being superseded by this, or disrupted by that, or supplanted by something else, but it never really happens, and IRC continues to chug along, doing what it does best, independent of any one company or hot new technology. It may not always be the most beautiful thing out there, but it is rugged.

IRC was one of the first things that got me excited about the Internet - I was studying Italian at the university, and realized that I could actually communicate, in real time with people on the other side of the planet, for free, back in 1993. I was utterly amazed by this. At first, I figured the people in the chat room (#italia) were BS'ing me and must just be Italians that lived in the US or something. A few years later, I managed to meet several of them in person when I moved to Italy for the first time.

Today, among others, I hang out on #startups on Freenode. It's not a very "serious" channel like some of the programming language ones are, but it's fun and interesting sometimes.

It also does its job behind the scenes. In Spain there are a couple of websites that have rather popular chat rooms where people go to meet people from their region, find dates, etc. Most of them don't know that they're connecting to an IRC network, and that they may even be talking to someone that uses a standalone client :)

IRC is probably the best example of worse-is-better design, its not great, has some obvious problems, but its good enough that nothing to come after it has been able to fully unseat it.

We have a BIG PUSH to go all Google Hangouts. Which is admittedly a vast improvement on nothing, but ... The technology department has resisted on the basis that every tool talks to IRC, and no tool talks to Hangouts.

Hangouts continues to build itself an Island as it sheds any even hand-wavy notion of being XMPP.

Slack has a lovely web client and both XMPP and IRC gateways -- meaning most everyone can use their favorite interface.

Rugged, that's a good word. I've seen IRC set as default communication channel for incident management. No matter how much infrastructure is down, as long as you have a few engineers, they can either reach or set up an ircd in no time and have proper, timestamped and logged communication.

I learned to touch-type on IRC.

I learned to touch-type playing Quake. So I can type in very short, curse-infused sentences before getting back to fighting.

Typing in complete, correctly-punctuated sentences on IRC brought my speed from 55wpm to 90wpm.

IRC today is the opposite of http://en.wikipedia.org/wiki/Eternal_September. People who still use IRC are mostly well-mannered, skillful and welcoming of others, and things only seem to get better day-by-day

People who are unresponsive to email, Tweets and other means of communication can be very responsive on IRC.

More signal less noise, I quess.

As an IRC OP on a server with mostly non-technical channels, I can guarantee you that people are not mostly well-mannered. They are welcoming of others though.

Yes, compared to what IRC was in the 90'ies - definitely. In the age of DLS the then common ping floods aren't as effective anymore ;-) While I'm idling about there in several channels like #citadel, it has become quiet there, and non technical channels seem to die out. I guess IRC has to less XML inside to be hip or commercialy supported nowadays. we'll see how long irssi keeps working ;-)

When ever I use Skype or Lync (things that I need to use at work), I really miss IRC. By default modern IM clients are constant source or distraction. Someone said something? Make sure to ring some bells and blink some notifications. Someone wrote an emoticon? Of course everyone wants to see slightly taller than line height image representing the emoticon. With animations, because why not?

I also really miss how in IRC channels are kinda the default way of communicating. I feel like Skype and others start from one-to-one communication and channels/rooms/... are more like a secondary feature.

If at work I need to ask some question, I do not care who answers to that and in many cases I do not know who has the answer. I do know what team or interest group might know the answer. With channel first kind of IM (IRC) I just join #folks-who-develop-the-server-im-sending-data-to and throw the question in the air. Eventually someone answers me.

With Skype, there is no such channel, because the mindset is different. So I need to browser the corporate intranet to figure out who might be the tech lead of the server I'm sending data to and contact that person. I chose the tech lead because he's the person who most probably knows the answer. Too bad that he is also the busiest one and I'm just making the situation worse.

Also, I really miss news groups. Why each web forum must reinvent the wheel and fail at it? :( I'm not that old, only 31. But boy where things better when I was younger. :D

Yup. I don't really miss usenet, I never was that invested. But I miss BBSs - and I prefer proper mailing lists to web forums (although I take a perverse pleasure in how HN leverages poor UX in an effort to meet its goals as a news site with comments, rather than a forum for discussion. Is there a hn-lovers mailinglist?).

I'm not aware of any platform that combines a reasonable API/protocol with a good web experience. I have some hopes for mailman3, is a bit sad that lampson appears dead, that edgewall killed their webmail frontend (I thought it might make a good basis for a proper web frontend to a proper mailinglist). And there is of course the D forums that as I understand it build on usenet news as the backend, and with some styling/templating might make a decent web forum.

FWIW, Skype supports the channel-focused communication style you describe. It's just a matter of company culture on whether there are channels for everything or you contact people individually. That said, having worked somewhere that used Skype channels and somewhere that used Slack, I prefer Slack. The Skype channel experience on mobile is terrible, and the Skype client on linux is a second-class citizen.

Pretty much all IM protocols have some channel functionality. It's just that the user experience in Skype and many other IM's is such, that it does not ecncourage users to join/create channel first. Rather they all try to get users to find their friends and chat one on one.

With IRC, all new users are told (by their friens and pretty much all tutorials) to join a channel first. Also web clients tend to ask user to give an channel to join before they can do anything. For me and many others IRC is channels first. Commercial IM systems are one-to-one first.

The good news is that Slack/Hipchat/Campfire seems to be bringing channel based communication back in the workplace. Most of the places that use them use it as the hub.

There are obviously lots of additional little features (emoticons, inline images, etc) -- but at least with Slack, you can setup an IRC connector and just use your plain old IRC client.

I'm currently testing HipChat for our corporate messaging software and it is "channel" centered(with a default lobby).

We currently use OpenFire/Spark, which I like but my users find the "room" (called conference on OpenFire I think) hard to use.

Slack also uses room features.

Edit: I just saw that MetaCosm already said it.

I wrote a Zork bot[0] for IRC a few days ago, and really started wondering why the tech community more or less gave up on IRC, especially businesses. Instead of a free, open source, reliable, distributed multiuser chat we now have the walled gardens of Facebook, Hipchat and similar services.

It's sad that we can now, essentially, not do much more on the net than we did 20 years ago, but now it has ads and spies on you.

[0]: https://github.com/rogerbraun/frotzbot

Persistence and syncing for non-nerds.

A few years ago, I tried to convince my colleagues (they're more designers than programmers) to use IRC for informal communication. Using IRC was (and still is) a no-brainer for me. My desktop PC runs all day, so I'm in IRC all day. But for them, joining IRC meant opening their laptops, starting their client and then pinging out 15 minutes later when their laptop went to standby.

When they were in IRC, they had this urge to really be there in IRC. I.e. monitoring it, reading everything, responding in seconds, excusing themselves when they had to go to the bathroom, and finally, finding excuses to close their IRC client again.

I have a totally different mode of operation with IRC, where it's OK to have the client open and not respond for hours or at all if you don't fell like it. I guess it's something you have to learn.

Installing BNCs solved some of the issues, but not all. Also, installing a BNC is not something your average designer-type nerd today wants to deal with.

So we ended up with KickOff for a while, but it never really worked reliably. We're now on Slack and quite happy, but I still want to try some of the various IRC "cloud" services; mainly those for self hosting.

Well said. I have been trying out ZNC for a few days. It wasn't really a fun to setup ZNC. There are things that I just don't understand. ZNC comes with a bunch of modules that you could use to extend its functionality. It is really hard for me to understand those when I am new to both Bouncers and IRC. Then there are no standards. ZNC uses a username but IRC doesn't really have a concept of username. It is usually Channel, Nick, and password. IRC also has concepts like Ident which are hard for general users to understand. I have setup ZNC but the setup is not complete yet.

I am not well aware of history of XMPP and IRC. I wonder if lack of interest in the organizations that control these protocols have lead to numerous versions of them that there are today. Slack has an IRC gateway and Facebook uses XMPP. Both of these protocols are widely used but have becomes too different from the core concept.

You should try using Quassel — it's the perfect solution for an IRC Bouncer/Client-combo, it feels like any modern solution (aka infinite scroll to read previous messages, clients for the bouncer on every platform, etc).

It's an amazing solution. So amazing, that I actually started commuting to the Quassel Android client, just because I want to give something back to this community.

Actually chat secure on android makes facebook chat almost plesant (and those "in the know" can enable otr). Such a shame fb doesn't do federation and google pretty much killed xmpp altogether. I was this close to having a chat platform other than sms that I enjoyed and could share with non-technical friends without hassle. I loje IRC - but so far not on mobile. Anyone have a favorite (preferably Free as in freedom) cliebt for Android?

Conversations is a nice XMPP client for Android. It's under GPLv3, is in F-Droid and Google Play (costs 1$ in Google Play, though) and is probably the best XMPP client for Android :)

I already use, and enjoy chatsecure for xmpp, I meant an IRC client :-)

> Persistence and syncing for non-nerds.

Also, lack of addressability. IRC is primarily targeted towards channels while all the needs of current IM systems are targeted towards one-to-one messaging. Possible with IRC, but you have to jump through hoops.

Well, the group-chats of whatsapp seem to be quite hip with the youth.

The audience for the Internet changed. IRC was great when everyone on the 'net was tech savvy, but look at what happened when people were able to pick between AOL and direct dial-up connections. Facebook is so simple my grandmother could figure it out, but even with decent clients like Colloquy, I wouldn't expect her to find her way around IRC. As for the Enterprise, HipChat and the like, especially when served via SaaS, offers more than just a chat server - server management, auditing, easy user setup, integrations to other tools.

For what it's worth, I agree that it's a shame that we are barely better off than we were 20 years ago, but I'm willing to accept that if it means widening the audience of the Internet for everyone. You shouldn't need a CS degree to surf the world's information.

Yeah, I can, of course, see how the modern alternatives are easier to use. I'm just sad that, instead of making simple IRC clients, nicer frontends for newsgroups, easier mailing lists, we now have ad-hoc solutions that are mainly meant to keep you locked into their system.

More like peoples computers just don't come with IRC. A lot of modern IRC clients (I use konversation) are basically:

Open program.

Automatically connect to freenode / quakenet / other major networks, sometimes even intelligently enough to try to reserve the username or users contact info nickname.

Hit a join channel button, or just get prompted the first time to name a channel.

Ommit #, it works fine. It also gives you a picker of servers, defaulting to freenode in konversations case.

Join a channel and chat.

But there is no means to notify users this exists, or how it works, or how to get on it. There is no money to be made in getting everyone on IRC.

Needing a CS degree to use an IRC client is a bit of a stretch, don't you think?

Today, it's probably somewhat of a stretch. Twenty years ago, no, I don't think so.

I can assure you that 20 years ago there were plenty of teenagers who hadn't even finished high school that were on IRC, not to mention large numbers of students in non-CS degrees.

I guess it depends how you define "walled garden", but HipChat is built on top of XMPP: http://help.hipchat.com/knowledgebase/articles/64377-xmpp-ja.... Facebook chat used to be as well, though I'm not sure if it is these days.

If it where no walled garden, then I could reach the chat rooms at conf.hipchat.com from e.g. my gmail account. As the linked page says "Our server is not federated and will not let you send or receive messages with users on other networks."

A lot of companies still use irc for intrabusiness communication, though Slack is becoming increasingly popular. I've worked for several startups that conducted business in an official private irc channel. It's especially useful for communicating with remote workers.

Interestingly, Twitch uses irc in its backend to power all of the realtime chat that accompanies its streams.

For people who'd like to revisit IRC, I highly recommend irccloud.com (I'm unaffiliated with them).

They offer a web client, which also stores channel history when you're away. And there's also an iOS client that will send you push notifications when someone mentions your name...

I've a ZNC bouncer running on a PI. It's cheaper ;)

What does a bouncer give you over running weechat in tmux, or weechat and a relay?

I run ZNC on a $5/month cloud server. It lets me use fancy GUI clients like Textual 5.[1] ZNC replays everything that happened while my laptop or phone was sleeping. Also, I can connect multiple clients simultaneously. Lastly, znc-push[2], alerts my phone when people mention or PM me.

I'm not a big fan of terminal-based IRC clients. Most text on IRC is prose made by humans, meant to be read by humans. Terminals use fixed-width fonts. That's handy for structured stuff, but for prose is less information-dense and less readable.

1. http://www.codeux.com/textual/

2. https://github.com/jreese/znc-push

There is also some GUI clients that are designed with the server/client model. Essentially you have a little daemon running that is connected to IRC constantly and then you got a GUI you hook up to it. Personally I use Quassel, but there is also Smuxi (which I couldn't get working for some reason..).

- http://quassel-irc.org/

- https://github.com/meebey/smuxi


Have you seen QuasselDroid? It's the Android client for Quassel, I'm working on a Material redesign for it right now ^_^

You should also try the quassel webproxy (a web interface like IRCCloud) and the quassel-search tool, which allows you to search through the whole logs of everything.

That's exactly how much IRCcloud costs: $5 per month, and it allows you to bring it up on any Web browser, even a Chromebook. And it just works.

Or you can just use quassel, which has clients for android, iOS, windows, Mac Linux and the web, works exactly like IRCCloud, is fully open source, and is able to run on a 2$/month webserver.

That cloud server does other stuff, but the cost isn't really a factor for me. IRCCloud doesn't let me connect with an IRC client. I can only use the mobile apps or my browser. Many don't mind that limitation, but it's a deal-breaker for me.

For 5 bucks you could host WordPress, ownCloud, ZNC, and more stuff.

A few years ago I fired up IRC for old times sake. I ended up kicked off #unix on EFnet at some point.

My transgression? I claimed that I used IRC in 1993. Which was impossible since, I was informed, IRC had only been around since 2000-something. :)

I was on #apple on freenode a while back asking for help with a strange HDD driver failure I was getting on my macbook after installing Linux on a secondary disk.

A channel mod informed me that, because Linux didn't use Apple's proprietary advanced power management protocols (which don't exist, by the way), Linux would overheat and utterly destroy my CPU.

After insisting that this was not my issue, and that what he was saying was ridiculous, he permabanned me. I looked him up online, thinking this was surely a joke, and it turns out this guy is a well-known weirdo with a pathological fear of open source software. It was very strange, and I have no idea how such a person got a mod position in a tech channel.

Since we're swapping stories of weird bans... I got banned for saying Battlefield != Call of Duty. I have no stake in the matter; I don't play either game. But apparently this was enough to warrant a permanent ban!

As with other things, a common way people become mods is by consistently showing up. Attitudes matter less than reaction time.

There was a piece on HN recently about IRC logs from the beginning of the Gulf War [1]. Fascinating how the protocol has stood the test of time.

[1] https://news.ycombinator.com/item?id=7990835

I think that IRC is a great medium. I first came in contact with it in 1993 and I've been using it ever since. These days I use it for two things: keeping contact with friends (I'm an expat) and helping people out in programming channels.

As others have noted, I think IRC is one of those things that will just keep chugging on, unaffected by trends.

It's been great for getting to know people all over the world. Relationships started on IRC have, among other things, given me my wife and my current job.

If someone interest in recent development of IRC protocol, you might be interest in the IRCv3 Working Group[1] where they're working toward improving the current IRC protocol (and already being used in number of networks and clients).

[1]: http://ircv3.atheme.org/

One big issue with IRC is the missing support of Unicode. An IRC log is a potential mixture of latin1, utf8, and whatever encoding user write.

I fear that cannot be fixed in a backwards-compatible way.

That's a big one indeed. I'm currently running a small private IRC server (~50 users) for local community speaking Thai; the best solution I found for encoding issue is to force everyone to use Unicode. However, this is a really hard thing to do, as most do not see benefit over whatever they're using (tis620 in my case) or benefit over upgrading their dated client.

Does it require encrypted connections?

You may be able to help influence it at https://github.com/ircv3/ircv3-specifications/issues

It does not require encrypted connections, although it does have extensions to indicate that future connections should occur over TLS (through the optional `tls` extension in IRCv3.1) and there is discussion for standardizing IRC over SCTP in IRCv3.3

You mean the IRCv3? I believe encrypted connection is still optional.

You might want SILC, but it is pretty much dead.

Pretty limited history, but some nostalgia value there.

I haven't used IRC in many years, but started using bitnet relay back when I was about 15 or 16 and then moved on to irc (mostly +Amiga!/#Amiga!, +hack/#hack, used it back when all the channel numbers were just integers as well on various channels) soon after Jarkko had it up.

I remember when having 50 people logged into the whole of irc (long before all the splits into EFNet and then all the others) was a really busy night.

Ended up meeting a lot of cool people through irc and pissing off a bunch more as I was a bit of a troll back then (well, more of a troll than I am now), pretty stereotypical geek kid with more intelligence than wisdom.

Last Update 2005.

I miss the 1990s with IRC them days were unreal and so much fun. Today I think of it as a tool to get help and to help others and that is about it. Seems like channels get smaller every year except a few (Arch Linux and Ubuntu.

IRC has a lot of life still left in it.

Here's a small sample from the FreeNode IRC network, from right now:

  | Users | Channel    |
  |  1751 | #ubuntu    |
  |  1620 | #debian    |
  |  1590 | #archlinux |
  |  1488 | #haskell   |
  |  1477 | #python    |
  |  1109 | #gentoo    |
  |   987 | #vim       |
  |   877 | #ruby      |
  |   815 | #emacs     |
  |   652 | #perl      |
  |   452 | #java      |
  |   417 | #lisp      |
  |   275 | #startups  | [1]
  |   190 | #scheme    |
And that's just one (admittedly popular) IRC network. There are 6 networks with over 10,000 users, and hundreds of smaller networks.[2]

[1] - #startups - the HN channel!

[2] - http://searchirc.com/networks

I'm interested in how/why a couple of the biggest channels on Freenode have been left out: #bitcoin-otc with 484 nicks and #bitcoin with 1179 nicks at the time of my post. What gives?

There's also the somewhat active #hackernews channel.


I'm not sure why you gave us a screenshot, rather than just typing out the network, and how many users it has on the channel. Feels like it'd be a lot less work! :)

Number of people on channel is in no way a good indicator of activity. There are very active channels with 2-4 people and totally unactive channels with even hundreds of people.

Yeah the number of people LOGGED in is totally different then active. I am always "logged" in just so I get to keep the cache of the dialogues. If one channel has 100 people you might be there all alone.

to show his cool terminal based IRC client.

netsplit.de has been doing statistics for who knows how long:


I can't speak for anyone else, but my personal IRC experience has simply gotten more private since the 90's. I still have an IRC client open whenever I'm on my computer, but these days I chat almost exclusively on private IRC channels and servers with people I've known for years. Instead of hordes of people swarming into large, public channels, it's a more intimate -- but just as genuine -- experience.

Still, though, that model seems unsustainable: fewer and fewer people are joining IRC channels or getting into what used to be a "scene." I think there will always be die-hards on IRC, but there's no longer the coolness that there was fifteen years ago.

I have the same experience. I have several group of friends where most people are on IRC 24/7. It makes us even more close to each other to be together all the time like this, and it is just an addition (we do not meet in person less often because of that). I think an important thing to note is that the majority of these friends are not computer scientists, engineers or anything that have to do with computers, but they still learned to use irssi or weechat and screen to join our IRC server :).

I guess the point of my comment is to say that maybe IRC use has changed, but it still is an effective and active communication tool that many people rely on daily, among which some have only known IRC the way I described it: as a communication tool for group of friends (maybe a bit like social networks).

You're also hogging my 'ds<Tab>' completion in #startups, dude. One stupid letter in front of me!


The Haskell channel on Freenode is growing, it's gone from floating around ~1000 people to 1400-1500 in the last 12 months.

Maybe it has something to do with edX's Functional Programming 101 course[1].

1. https://courses.edx.org/courses/DelftX/FP101x/3T2014/5074063...

2013: It was re-skinned and marketed as "Slack".

Isn't one of the main advantages of IRC that it's still a true federated protocol? I.e. you can host a channel #foobar across 10 servers and that channel will always survive netsplits (albeit with some number of clients splitting off), whereas with Jabber some server will always have to be the sole host of that channel?

For the record, on PLATO there was TERM-talk (live character-by-character, typed, instant messaging between two users) and Talkomatic (multi-channel group live character-by-character typed chat rooms) both released in 1973. And there was monitor mode (while in a TERM-talk you could invoke screen sharing so the other person could see what was on your screen, and both of you continue talking).

I'm one of the people that still uses IRC frequently. The biggest problem that I saw over the years was just the rise of other platforms and fewer new users taking the place of the old school users that were moving elsewhere.

The ban evading trolls and constant net splits caused by frequent DDoS attacks were a problem. ISPs stopped hosting IRC servers because as soon as a server would come up, it would be a huge DDoS target. Then the overbearing fear of "illegal material" flowing across the pipes was a problem for others.

But I'm glad that it's still around. One channel in particular I live in has been around for 15+ years now. It's like a digital version of Cheers, without avatars.

Sad to see how much IRC has declined recently. I spent much of my youth on DALnet, and that's what forced me to learn about computers. There was lots of hacking, exploits, social engineering, you name it. Combine that with how IRC standardly revealed everyone's IP, and it made for quite the environment. If you were going to run major channels back then, it was either learn to protect yourself, or get pwn3d. I had no choice but to do the former, and I'm still working with computers today.

Contrary to your gauge of IRC being in decline is that it isn't like DALnet of the 90s/early 2000s, I see that as a good thing. "Quite the environment" is quite the euphemism.

IRC was the first time that I ever turned my computer off in shock. "Quite the environment" is quite the euphemism!

One of my favorite subcultures online is the high school and collegiate quizbowl (or academic competition) circuit. They now operate three regular IRC channels where the majority of online discussion occurs, where internet matches are played, where the various support agencies and companies have their regular meetings, and more.

Such a national activity has to have good communication tools, and IRC can't be beat.

I've seen ZNC mentioned several times, but if you want a good bouncer that is very lightweight check out Bip


Also of historical interest is the Efnet Oper Guide:


By the way, here's an interesting project, people are working on a 'modern' alternative to IRC: http://chapp.is/

The extent of my recent experience with irc: A bunch of people joined. A bunch of people left. Nobody chatted.

Depends on the channel, the day of week and time of day (and the time zone its main constituency resides in) and how long you waited.

There are a few channels I know that are mostly active over the workweek in US pacific time. Others that wake up with the EU, with some extra activity on weekends.

But yes, some channels really are slow and mostly wake up only on specific actions (eg. joining, asking for a question, people answer, everybody gets back to doing their work) - essentially support channels.

Some are that way by design. #python on Freenode is really aimed at being a support channel. Off-topic conversation is practically not allowed (they have a bot that will pm you if you type lol telling you that #python is a no lol zone.)

On the other hand, I'm currently on 6 channels across 4 networks, all social channels with 10-30 people, and people talk near-constantly. It's just a case of finding places where people are - anyone can create a channel, just like anyone can create a web forum or a mailing list, doesn't mean people are going to pay attention unless the creators and first inhabitants put some effort into building a community.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact