IRC is to Open Source what Electrons are to Physics

Software Development and Internet Relay Chat

Posted by Shubham Chaudhary on June 21, 2013
So you want to do software development but you've never heard about IRC than it's quite strange because the only (and I really mean only) possible way to learn baout other guys in the community is using IRC.
What exactly is IRC that these guys keep talking about?
Basically IRC (Internet Relay Chat) is a multi-user, multi-channel chatting system. Imagine sitting in front of your computer and “talking” through typed messages with either one person or many other people from all over the Internet, all in real time! Best of all, once you get set up, chatting on IRC is totally free! In simple word it's a geeks tweak to not to pay the mobile carrier for SMS.

Enough with the definition, I hate definitions. Now to really get started go to webchat.freenode.net
  1. First thing you need to fill in there is a nick. See how would someone know that who you are when you join a chat-room(channel), you need a name, in IRC we call it IRC nickname. It may be something as simple as "chaudhary" or something like "DonCorleone".
  2. Actually how IRC works is that, there are different servers all around the globe. You connect to one of these server and then you look for an appropriate channel someone created in that server. Any data you send in this channel is posted in realtime at everyone's computer who's connected to that channel. I mostly use Server Address: irc.freenode.net Port: 6667 There are others like irc.kde.org:6667 ( which basically redirects to freenode servers) and irc.mozilla.org:6697 and a lot more. But all of the channels a typical user needs are available on freenode servers. 
  3. In this case you are using a website created by freenode organisation which helps you to connect to its server without using any specific clients. Personally I like quassel very much. It's just awesome. But you should note that these clients usually don't work behind proxy servers.
  4. Now getting back to webchat.freenode.net next you should fill a channel name. Channel names begin with a '#'. To connect to PULUG channel just type "#pu-lug" in Channels textbox.
  5. Next just fill the captcha and voila you're connected to freenode server and chatting in #pu-lug channel.
  6. If you want to talk to someone in particular you can type their name in your chat and it'll show a notification on other user's computer. e.g. to get someone's attention you'll type chaudhary: ping! to which I'll reply yournick: pong and then we continue the chat
See it's that simple. No-one ever told me this.

But really, IRC is intimidating at first, With some practice, and good listening skills, you will be making new friends from around the globe in no time at all. IRC is a great way to get hands-on help when learning a new language or framework. Experts in tech-related IRC channels are amazing. In the real world, they could charge insane rates for consulting, but they give advice freely on IRC and mailing lists.
That said, it’s important to note that IRC veterans find some common newbie behaviors very annoying. Getting help from these experts can be frustrating for a newbie, but the rewards are great.
If you’re new to IRC, here is a short list of guidelines:
  • Before asking for help, use Google and read the docs. People will get annoyed if you ask questions that are answered in documentation. It shows you didn’t try very hard to find the answer before wasting their time.
  • Don’t ask to ask, just ask.
  • Explain the problem in detail. Saying, “It doesn’t work.” will earn you the ire of everyone in the channel. How doesn’t it work? What error messages do you see? What do the logs say? Be specific. People need to know the answers to these questions so they can help. Mention what you think should happen and what is actually happening.
  • List any error logs or source code you have a problem with. Pasting large chunks of text in IRC is frowned upon. It’s called flooding the channel, and it makes conversation difficult for others. Some channels will kick you for flooding. If your IRC client doesn’t rate-limit, the server can even disconnect you. So to post very long text you should PasteBin.
    Flooding the channel
  • Explain what you’re trying to do. Often there’s an easier way to get what you want out of a language or framework. Others might know of a useful module or library that does much of the heavy lifting for you.
  •  Be patient. I know it’s hard to imagine, but some of us actually are not sitting around waiting for you to ping us on IRC. Please be polite. If we were all sitting around a table outside, you wouldn’t just start shooting questions at me, out of nowhere, would you?
  • If there is no activity, it usually means that no one has read what you wrote yet. If no one responds, they don't know or didn't notice or don't want to answer. Respect their choice, they're not your personal assistant. Also never send mass private messages. It's like spam. 
    More or less
    You can re-try after a while, or ask if anyone has any clue with regards to your question. As a rule of thumb you can re-post your query after an hour and/or if there has been a lot of chat and your question is no longer visible.
  • Grow a thick skin. Because you’ll need it.
  • Finally, don’t be a dick. Don’t call a project stupid. Every piece of software has stupid parts. Granted, some have more stupidity than others, but name-calling isn’t going to help fix the problems. More importantly, name-calling won’t get you help. It will probably get you kick-banned
Following these rules will make life much more pleasant for everyone involved. You’ll be more likely to get your problem solved and the channel regulars will have less stress in their lives.

Here are some very useful links and I suggest that you go through all of them
  1. http://www.irchelp.org/irchelp/irctutorial.html
  2. http://www.ircbeginner.com/ircinfo/tutorials.html
  3. Freenode Nick Registration
  4. irc-commands
  5. IRC Etiquette - Must Read
  6. TDLP's Beginner's guide on using IRC
  7. How To Ask Questions The Smart Way