How to use IRC effectively
The IRC channels: purposes of each channel
Drupal uses the freenode IRC network, irc.freenode.net, and occupies the following channels:
Essential channels to join:
- #drupal is a lounge of sorts. Here, we talk about patches we need reviewed, quick how-to questions, and what we've been doing with Drupal lately, among other things. If it's Drupal-related, and isn't in-depth enough to take over the channel with lots of text, and doesn't need a quiet venue, it is fair game in #drupal.
- #drupal-contribute is the place for core and contrib coding work, promotion, advocacy, infrastructure, and general Drupal community questions. The rule of thumb here: if it ends up on the drupal.org infrastructure then this is the place to talk about it.
Topical channels:
- #drupal-support is for long or deep support discussions. While quick questions are okay in #drupal, some discussions are just too long for that channel, or need a quieter venue -- that's when they go in #drupal support.
- #drupal-themes for in-depth or lengthy theme support discussions. If your theme work seems to be causing too much screen scroll in #drupal, or needs a quieter place then this is where to go.
- #drupal-dev is the place to take general development discussion when #drupal is too noisy.
- #drupal-accessibility channel to chat about coding and accessibility issues and extensions in Drupal
- #drupal-consultants for Drupal Consultants. You can find paid help here, as well as advice on best practices and general discussions surrounding the business side of Drupal. Ask questions here only if you're willing to pay for the advice.
- #drupal-design for drupal designers. This channel is not for theme related talks, but pure design.
- #drupal-docs for the Documentation team to discuss and organize working on the drupal.org handbooks.
- #drupal-dojo for the Drupal Dojo group. This is where dojo lessons are discussed and organized.
- #drupal-ecommerce for the E-commerce Group
- #drupal-geo for people interested in mapping, location, and geographic topics.
- #drupal-groups for group organizers. Receive and give tips on how to organize local Drupal user group.
- #drupal-seo for search engine optimization support and module development
- #drupal-ubercart for Ubercart support and development
- #drupal-usability for the Usability Team to discuss changes to the UI and general usability issues.
- #drupal-vcs for discussions about version control systems.
- #open_atrium for discussions about Open Atrium, an install profile for project management that is based on Drupal.
Regional channels:
- #drupal-au for Australian Drupal developers and users
- #drupal-bayarea for the San Francisco Bay Area group
- #drupal-boston for the Boston-area Drupal groups
- #drupal-br for the Brazil Drupal group
- #drupal.cat for the Catalan Drupal users
- #cdmug for the Chicago Drupal Meetup group
- #drupal-colorado for Colorado Drupal users
- #drupal.de for German Drupal users
- #drupal-denmark for the Drupal Denmark user group.
- #drupalfr.org for French-speaking Drupal users
- #drupal-es and #drupal-peru (Peru group) are Spanish language channels
- #drupal-florida for Florida Drupal users
- #drupal.hu for Hungarian Drupal users
- #drupal-in for the Drupal India community
- #drupal-israel for the Israeli Drupal community.
- #drupal-italia for the Drupal Italia user group.
- #drupal-la for the Los Angeles Drupal group
- #drupal-mu for Mauritius Drupal users
- #drupal-nc for North Carolina Drupal users
- #drupal-nebraska for Nebraska Drupal users
- #drupal-nl for Dutch and Belgian Drupal users
- #drupal-norge for Norwegian Drupal users. Though you can visit this channel anytime of the day, the Norwegian Drupal community site Drupal Norge announced a chat schedule from 21:00H (norwegian time) every Wednesday and Sunday.
- #drupalnyc for the New York Drupal group.
- #drupal-nz for New Zealanders (Kiwis)
- #drupal-pdx for the Portland, OR Drupal user group
- #drupal-ru for Russian Drupal users.
- #drupal-sacramento for the Sacramento area Drupal user group
- #drupal-se for Swedish Drupal users
- #drupal-tr for Turkish Drupal users
- #drupaluk for UK Drupal developers (also some Irish developers lurk there too)
- #drupal-jp for Japanese users and ほかの日本語 IRC チャンネルのリスト(list of more Japanese channels
- #drupaldelphia for the Philadelphia, PA area Drupal user group
Creating a New Channel
You first register yourself. Then register the channel with a command like /msg chanserv register password.
Find chx if you have any problems.
Courtesy
Drupal is a community and IRC is one means to communicate and interact with others. There are men and women of all ages and it is best to remember to treat others with respect and courtesy, as you would in any other community.
Using IRC
To learn more about how to actually get connected to IRC, there is a good write up on finding a good client and connecting to IRC at http://groups.drupal.org/node/2326. You can also watch videos about connecting to IRC. The intention of this book page is how to interact once you get connected to IRC.
There are a few simple IRC commands that should be used to allow best use of the IRC channels.
Register your nick with freenode
When you log into IRC you're going to want to register your name with NickServ so no one else can use your nick, and others can gain familiarity with you by you using the same nick. Learn how to register your nick at http://freenode.net/faq.shtml#nicksetup.
As a courtesy to the Druplicon (see below) and other members of the chat room, please do not include "Drupal" or any variation of it in your name.
Use the same IRC nick that you use with drupal.org
Most people use their Drupal user name as their nick in IRC. If that name is already taken on freenode, then append a dash or numerals to the name. Many IRC clients will automatically append an underscore to your nick upon join if the name is already taken. Having a familiar nick allows for consistency between IRC and the Drupal site.
If you are using a different name on IRC than on Drupal.org, you may wish to use an IRC cloak. Information on obtaining one is here: http://groups.drupal.org/node/5403
Actions
You'll often see people performing actions in IRC. Unlike talking normally, actions say to the IRC channel something that you're doing. You precede the action with /me. For example: /me shakes fist in the air in frustration about learning IRC.
While on Drupal's IRC channels, there may be several other conversations occurring simultaneously. To avoid confusion as to who is talk to whom, it is common courtesy to start your sentence out with the recipient's user name as it appears in the channel member list. For example, if "exampleUser" were a user in IRC and you wished to talk to that person, you should begin your message with that user's name: exampleUser: Can you please help me? Many IRC programs also have a tab-complete feature. That is, if you start typing a person's name and strike the tab key, the program will either complete the name if it can or suggest a list of names. This can greatly speed up your response time, especially if the recipient has a long, cryptic name.
Chatting directly with another user
If you want to message someone directly within the channel, precede your message with their nick:. This will alert the person that they have a message especially for them, and makes it easier for the person receiving the message to read it in a busy channel. For example: "tomf__: I'm speaking directly to tomf__". You can also use tab completion when typing in an IRC nick. Type the first couple of letters in someone's nick and then hit <tab>, and voila, your IRC client has finished typing the rest of the nick. If there is more than one nick that contains the first couple letters you typed in, keep hitting <tab> until you find the nick you want.
If you need to message someone directly, outside of the channel, precede your message with /msg nick. You should only message someone privately if the conversation does not concern the rest of the channel. Do not message anyone privately for support. To message someone privately you type: "/msg tomf__ hey, how was the game?".
A general courtesy is to request permission before sending a private message (PM) to someone. This is as simple as tomf__: hey, pm?. Some people consider uninvited private messages to be stalking behavior, and would be quite upset by it. Always ask before private messaging someone.
To chat with an unregistered nick, you need send a message to NickServ to set the Unfiltered variable ON:
/msg nickserv set unfiltered on
Filtering helps you a bit when spambots invade freenode, but as this is quite rare these days, there is little harm in keeping unfiltered on.
Asking questions
The motto for Drupal IRC chat is "Don't ask to ask, just ask." All you need to do is start asking. Please be aware that answers are provided on a voluntary basis. If someone is available to answer your question and has knowledge about your issue, they will do the best they can in assisting you. Here are a few tips for asking good questions ("good" meaning questions that will get answers faster):
- Vague questions with vague language will almost never get a response. You know the details about your issue right down to the letter but other people do not.
- Writing a paragraph to describe your problem is okay.
- Have some patience.
- Ask the Druplicon bot (see below)
Read this excellent blog post for more good advice on how to ask questions. Another good resource is this page.
Getting Answers
There are answers that you will get that are de facto in nature. What is meant by this is that many questions will get the same (initial) answer. So, to avoid losing patience, here is what you may receive initially:
- "There is a module that will do this for you. It is called <module name here>" More often than not, there is a module that will do what you want. Please skim over the module list and try some modules out before asking for help.
- "That type of functionality requires a custom module" If you need a very specific functionality, but cannot find a sufficient module, you will more than likely need to create the module yourself. If this is the case, you must know how to create modules. There are many great books out there for learning Drupal module development as well as a few small tutorials here.
As is often the case, doing a bit of research before hand will get you your answers. Asking questions that have simple answers -- though valid -- can be somewhat annoying to people trying help you. Again, do some research, use the search function (or through Google by using site:drupal.org <your search terms here> if drupal.org searching is disabled), and look through the module list before asking for help.
If you are asking a question about a specific third party module or theme, please realize that the likelihood of getting an answer depends on whether someone who can provide support for that specific project has actually joined the channel, isn't idle and is able to help. It is valid to ask questions about third party modules, but you may have better luck posting your question on the issue queue for that module.
Set an away message when you aren't available
If you're going to step away from your computer for a bit, but want to keep IRC open so you can scroll back to see the message log, you should set yourself to away. You precede your away message with /away to set yourself away. For example: /away I'm out to lunch for a bunch of munch. To come back from away status just type /away with nothing after it.
If you are using an "away script", please make certain it does not (repeatedly and initially alike) announce to any channels that you're away, as this quickly becomes spammy and is generally frowned upon.
The IRC bots
The bot in the drupal irc channels is Druplicon. The bot is run by Morbus, and if there are any weird problems, contact him. Druplicon uses the bot module.
You can use the bot to answer questions for you. The bot will automatically look up a node for you on drupal.org if you type a node id such as "#12345" or "4321", but only if that is the entirety of the message and the number is at least 4 digits.
You can also ask the bot the last time someone was seen. If someone asks "seen peter", "seen peter? seen lois?", "have you seen sbippy?" or similar questions, the bot will report the last time they've been seen, where, and what their last known message was. They will only respond if the "seen Name" trigger is followed by a question mark or if the message immediately ends thereafter.
Have the bot answer questions for you.
You can also have Druplicon remember definitions for you. If you constantly are saying the same thing over and over in the support channel, and don't feel like typing the same response over and over, have Druplicon remember the answer. You set this up by typing "keyword" is "definition" to Druplicon . For example: "Druplicon: irchelp is You can find a very informative book page about IRC help in the handbook."
Now if someone were to ask about irc help in the channel, one would only have to type "irchelp?" to have Druplicon automatically answer with "You can find a very informative book page about IRC help in the handbook." To have Druplicon forget about that definition just tell Druplicon to forget about it by doing by "Druplicon: forget irchelp"
IRC is a great place to feel like you're part of the community, and you can learn a lot by just lurking in the channels to start with.
And finally, once again: find chx if you have any problems.
