Like a lot of people involved in the open source movement, though I use a variety of different tools for real time communications, I just can't seem to get away from IRC. While IRC isn't perfect, and I don’t love some of its quirks, it's here to stay for at least the foreseeable future as its low barrier to entry and wide selection of open source clients make IRC, and particularly Freenode, the go-to place for open source projects to collaborate.

But it's been awhile since I’ve evaluated what tools I use to connect to IRC. Given how much time I spend there, I thought it's about time to take a look at what my options are and see if there’s a client that can better meet my needs.

I stumbled upon a great article a few weeks ago from Joe Brockmeier which looked at the top IRC clients for Linux—Pidgin, Konversation, XChat, Chatzilla, and Irssi—but with that article now over five years old, I thought it was worth revisiting these tools and asking where they are today, and if there are any new contenders that should join the list.

Desktop: HexChat

Years ago, XChat would have definitely been one of my top picks. It's widely distributed, and it strikes a good balance between being easy to use while still chocked full of features. But times have changed. XChat development effectively halted after its last release in 2010, and a new contender has picked up the code base, created a fork, and run with it.

Meet HexChat, my personal favorite desktop IRC client. HexChat might be called the logical successor to XChat, bringing active development to what would otherwise be a dormant project. HexChat hosts a themeable interface, the ability to write custom scripts in Python or Perl, and a number of other features available through both native support and a variety of addons. And unlike the original XChat, HexChat is open source across every platform it is available on (XChat was only available commercially for Windows systems, but was free for Linux users).

HexChat is released under the GPL version 2, and its source code is available on GitHub.

If you're not a HexChat fan, there are lots of other options in this arena: Konversation, Quassel IRC, and KVIrc are all great choices, and there are many others.

Terminal: Irssi

Many developers and system administrators already spend a significant portion of their day at the command line. Why should they have to leave just to talk to their collaborators? Irssi is a terminal IRC client that's spectacularly powerful, albeit not a tool for beginners.

Because IRC is a text-based protocol, having a text-based client doesn't hold you back at all. Irssi features many logging option, lots of different automation features, tab completion for pretty much everything, and many pluggable themes and scripts. It's a terminal client, so you also have the option of running it remotely on an always-on server, giving you a persistent connection, and then simply connecting to the client. (Tools like screen and tmux makes this easy.)

Irssi's source is on GitHub, and its made available as open source under the GPL version 2.

Web: Kiwi IRC

What if I told you that you don't need a client on your computer at all to connect to IRC? If you're looking for an IRC client which can be used anywhere, across multiple computers, Kiwi IRC might be your best bet. It works with pretty much all major browsers, and features options for theming, text styling, user scripts, and a number of plugins.

Perhaps even more importantly, if you run an open source project, you can embed Kiwi IRC into your website to bring your community together even for those unfamiliar with IRC. But don't take my word for it, you can check out a live demo here.

Kiwi IRC written in JavaScript using the NodeJS framework, is available under an AGPL version 3 license, and the source code is yours to browse on GitHub.

You might also be interested in Shout, another great client for self-hosted web-based IRC.

Mobile: Yaaic

Yaaic is shorthand for Yet Another Android IRC Client. Because sometimes you still need to be able to connect while you're on the go. Like our top picks for other platforms, Yaaic works with multiple concurrent servers, and comes with a number of features, although fewer than what you might have come to expect on a desktop client.

You can pick up Yaaic in the Google Play Store, for free, and check out the source code on GitHub. Yaaic is available under version 3 of the GPL.

Others to consider

There are other open source IRC clients beyond the four I've picked here, of course.

One contender I did not include above is Pidgin. Pidgin, formerly known as GAIM, is a mutli-purpose chat client with the ability to tie in to a number of networks beyond just IRC. And in fact, I use it regularly, but not for Internet Relay Chat. I find it's a much better client for one-on-one or small group chats than it is for IRC, where I frequently find myself in dozens of rooms with hundreds of potential participants. But depending on how heavy of an IRC user you are, it may work for you.

Another option is the in-browser ChatZilla, which is distributed as an addon to Mozilla Firefox. As a Chromium user, it's not an option for me, but if you're a Firefox fan, it may be a good fit for your needs.

So what are your picks? Did I list your favorite client, or leave one off that you think everyone should try out? Let us know in the comments below.