You may not realize it, but there’s a whole world of developers out there accessible in real-time on one of the oldest original “social networks”!

IRC, or Internet Relay Chat, has been around forever. It was one of my first introductions to the social aspects of the Internet many years ago. As social networks started to grow, IRC seemed to die. Recently, however, it seems to have made a pretty strong comeback! For the purposes of developer interaction and resources, its an excellent option!

Install an IRC client

The first thing you are going to need to connect to an IRC server is a client. There are a number of free options out there, including web based tools that don’t require an install. One of the most popular clients for Windows is mIRC. Feel free to Google and checkout all the different available clients. Really they all do the same thing, so its more of finding one that fits your personal preferences.

Connect to a server

The first time you launch an IRC client, you are typically greeted with a ‘Connect’ dialog. In the case of mIRC, it has about 200 servers listed. O_o?! Fortunately, the development community by and large seems to have settled on a single server, irc.Freenode.net, as its main hub. Honestly, I don’t even know what any of the other servers are. There is a somewhat “underground” feel to IRC, so God only knows what kind of shenanigans you can get into if you started to explore 😉

Pick your nickname

Once connected, the first thing you need to think about is what your nickname is going to be. With IRC, you can literally pick anything and assuming another user isn’t on at that same time with the same nick, its yours! There is the idea of a NickServ, which is basically a nickname database that the server maintains. This allows you to keep your nickname and assign a password to it so that the next time you connect you can use it again and again.

If you notice any users in a channel with an @ in front of their name, that means they are an operator of that channel.  Consider them a boss!  They can do things like kick users, set the channel private, change the topic, etc.

Join a channel (aka room) and say hello!

Chat “rooms” in IRC are actually called channels.  They work the same way as a hashtag topic in Twitter.  You can pretty much join a channel for any topic.  You can list the topics to see the channels that already exist, or create your own.  The best place to start is to literally just guess and try the obvious: #node.js, #html5, ##javascript (#javascript is a private channel), #gulpjs, #browserify, etc.

To join a channel, simply type /join (or simply /j) #channelname from anywhere.  Once connected, you should see a list of the current users in that channel, the topic should appear (maybe in the titlebar of the channel window itself), along with any links about specific rules for that channel.

Once you’re in simply type a message and hit return.  Boom!  You just posted your first message to an IRC “chat room”!

IRC is interesting, in that there are times where a channel seems completely dead, and other times where you can’t keep up with the conversations because some many people are talking at once.  It definitely takes some getting used to.

Know your manners!

Like all things Internet, there are noobs and veterans.  No one likes a noob so don’t overly advertise that fact!  Know your manners, don’t troll, don’t message random people directly, and don’t ask stupid questions that you know you wouldn’t want to be bothered answering (i.e. RTFM).  A great place to read a quick start guide on how to interact with IRC is here: http://nodeirc.info

Customize mIRC

There’s a lot of customization options available in mIRC, perhaps too much initially.  Its best to ignore most of it and slowly tinker here and there as you get more comfortable.  Some early customization that you will want to do right away:

  • Colors – the toolbar has what looks like a set of crayons, that allows you to customize all of the colors of the program.  The initially color scheme is pure white and that can be a bit much.  You can easily tweak this and create your own scheme to match your favorite IDE scheme or whatever you want!
  • Via Tools -> Options: Connect on startup, Reconnect on disconnect, Uncheck Show connect on startup.
  • Via Tools -> Options -> Perform…: Enable perform on connect, and enter the following command: /msg NickServ identify yourpassword (enable this after you have established your nick and password via the NickServ bot)
  • Via Tools -> IRC: Rejoin channels on connect
  • Via Favorites -> Organize Favorites: Add a list of your favorite channels.  Check the box at the bottom Enable join on connect

Advanced topics:

There are a lot of advanced things you can do with IRC (and mIRC specifically).  Some topics to consider researching if you’re interested:

  • Transfer files back and forth, using DCC.  Some channels specialize exclusively in making files available for download 😉
  • Automation and scripting.  Also know as “bots”.  These are users that are fake, and respond to a number of commands.  You can pretty easily run your own!

Hopefully this short post is enough to get you interested in checking our IRC and realizing that its not as scary as it might seem.  Give it a try!  You can usually find me in #node.js, ##javascript!