I’ve been working from home for over three years now, and while I absolutely love it, one of the things I miss the most about working in an office is camaraderie you have with fellow developers there.
The good news is that in the past year or so, I’ve found my fix with an online alternative: IRC!
IRC is an internet chat protocol that has been around since the beginning of the Internet. You can connect to IRC servers to chat about any subject imaginable – including iOS development, OS X development, and even Swift development.
I believe IRC is a great way to get to know fellow iOS developers, to get help with questions, and to help out others.
That’s why I’m writing this tutorial! This tutorial will help get you started with:
Let’s get chatting!
Choosing an IRC Client and Getting Started
The first step is to choose and download and install an OS X IRC client, and then follow some instructions I’ve provided to connect to a chat room. Here are some of the most popular options:
- Colloquy: If you’re not picky, I’d recommend that you download this one. It’s built specifically for OS X, it’s free, and is what I have been using in the past several years. [Download] [Getting Started]
- Adium: A second free client – this one with an AIM-like interface. [Download] [Getting Started]
- Irssi: A third free client – this one with a command-line interface. [Download] [Getting Started]
- Textual: A paid IRC client, built specifically for OS X. [Download] [Getting Started]
- IRCCloud: A free web-based client, which keeps you connected all the time. [Free Sign Up] [Getting Started]
Again – download and install the client of your choice, and then jump to the appropriate instructions below!
Getting Started: Colloquy
Connecting to an IRC server
Start up Colloquy and go to File\New Connection. For Nickname enter your preferred nickname, for Chat Server enter irc.freenode.net, and click Connect:
Back in your list of connections, after a few moments you should see a lightning bolt icon appear – this indicates you are connected. Note that you can always double click a connection to connect.
Registering your nickname
Click the Console button to reveal a connection to the IRC server itself. This will allow you to send some commands to register your nickname, which is a prerequisite to connecting to some of the iOS development channels.
Enter the following command down in the text field at the bottom of the screen and hit enter:
/msg NickServ REGISTER password youremail@example.com |
After a few moments, you should see a reply from NickServ letting you know that it has sent you an email:
Check your email and enter the command that it tells you in the text field and hit enter to continue. You should see a success message from NickServ.
Back in your Connections list, right click your connection and choose Get Info. Enter the password you set in the password field:
Right click on the connection, and choose Disconnect. Then double click to connect again. If you still have your console open, you will see an “authentication successful” message – this means your nickname and password is registered!
Joining a channel
Now for the fun part – joining a chat channel for iOS developers. Click the Join Room button in your Connections window:
Make sure the Connection is set to irc.freenode.net, for the Chat Room enter cocoa-init, and click Join:
And you’re in! You can use the text field at the bottom to chat.
At this point, feel free to skip ahead to the IRC Channels for iOS Developers section to find out about more channels you can join!
Getting Started: Adium
Connecting to an IRC server
Start up Adium. If the Setup Assistant appears, click the x button to dismiss it.
Then go to File\Add Account\IRC (Internet Relay Chat). For Nickname enter your preferred nickname, for Hostname enter irc.freenode.net, and click OK:
After a few moments, the green icon next to your name should light up to indicate that you are online. Note that you can always use the dropdown to switch your status to available to connect.
Registering your nickname
Go to File\New Chat, make sure that From is set to
Enter the following command down in the text field at the bottom of the screen and hit enter:
REGISTER password youremail@example.com |
After a few moments, you should see a reply from NickServ letting you know that it has sent you an email:
Check your email and enter the command that it tells you in the text field (without the /msg NickServ part) and hit enter to continue. You should see a success message from NickServ.
Close the NickServ window. In the Contacts window, choose the dropdown next to Available and set it to Offline to disconnect. Then set it back to Available to reconnect.
After a few moments, NickServ will ask you for your password, so enter the password you set in the password field:
If you don’t see any errors – this means your nickname and password is registered!
Joining a channel
Now for the fun part – joining a chat channel for iOS developers. Go to File\Join Group Chat…, make sure the Account is set to irc.freenode.net, for Channel enter #cocoa-init, and click Join:
And you’re in! You can use the text field at the bottom to chat.
At this point, feel free to skip ahead to the IRC Channels for iOS Developers section to find out about more channels you can join!
Getting Started: Irssi
Connecting to an IRC server
Irssi is different than the other options so far in that everything is on the command line!
Start up Irssi and you’ll see the following:
Enter these commands to connect to Freenode:
/set nick yournickname /network add -whois 1 -msgs 4 -kicks 1 -modes 4 freenode /server add -auto -network freenode irc.freenode.net 6667 /connect freenode |
After a few moments you should see some welcome messages from Freenode – this indicates you are connected.
Registering your nickname
Next you need to send some commands to NickServ to register your nickname, which is a prerequisite to connecting to some of the iOS development channels.
Enter the following command down in the text field at the bottom of the screen and hit enter:
/msg NickServ REGISTER password youremail@example.com |
This causes irssi to open a new window – use Command-P to switch to it.
After a few moments, you should see a reply from NickServ letting you know that it has sent you an email in the new window.
Check your email and enter the command that it tells you in the text field (but without the /msg NickServ part) and hit enter to continue. You should see a success message from NickServ.
Hit Command-P to go back to the main window. Enter this command to auto-register with NickServ when you connect from now on:
/network add -autosendcmd "/^msg nickserv identify password;wait 2000" freenode /save /quit |
Restart irssi, and verify that you automatically connect and register your nickname.
Joining a channel
Now for the fun part – joining a chat channel for iOS developers. Simply enter the following command:
/join #cocoa-init |
You will see a list of users in the channel, and you can use the text field at the bottom to chat.
And you’re in! You can use the text field at the bottom to chat. For more information, check out the Irssi documentation.
At this point, feel free to skip ahead to the IRC Channels for iOS Developers section to find out about more channels you can join!
Getting Started: Textual
Connecting to an IRC server
Start up Textual, click the + button in the lower left, and select Add Server:
For Network Name enter Freenode and for Server Address enter irc.freenode.net:
Switch to the Identity tab, for Nickname enter your preferred nickname, and click Save:
Back in the main window, double click the Freenode entry to connect. You should see a message from the server – this indicates you are connected.
Registering your nickname
Next you need to send some commands to register your nickname, which is a prerequisite to connecting to some of the iOS development channels.
Enter the following command down in the text field at the bottom of the screen and hit enter:
/msg NickServ REGISTER password youremail@example.com |
After a few moments, you should see a reply from NickServ letting you know that it has sent you an email:
Check your email and enter the command that it tells you in the text field (without the /msg NickServ part) and hit enter to continue. You should see a success message from NickServ.
Back on the sidebar, right click your Freenode connection and choose Server Properties. In the Identity tab, enter the password you set in the Personal Password field:
Right click on the freenode connection, and choose Disconnect. Then right click and choose Connect to connect again. If you don’t get any errors, this means you’re connected and authenticated successfully!
Joining a channel
Now for the fun part – joining a chat channel for iOS developers. Right click the Freenode entry and choose Join Channel. For Channel enter #cocoa-init, and click Save:
And you’re in! You can use the text field at the bottom to chat.
At this point, feel free to skip ahead to the next section to find out about more channels you can join!
Getting Started: IRCCloud
Note: Some IRC channels ban web-based clients like IRCCloud. You may prefer to use one of the other clients to avoid this.
Connecting to an IRC server
Go to irccloud.com and register for a free account. Once you have signed up, you will be automatically directed to Join a new network screen.
Under hostname enter irc.freenode.net. For Nickname, enter you preferred nickname. Leave other values to defaults and click Join network button.
Registering your nickname
You will need to register your nickname with the server before you can start chatting. Click on freenode shown towards the right side of window to reveal the server console. Here you can send commands to register your nickname, which is required to connect to some of the iOS development channels.
In the text field shown at the bottom of the screen, enter the following command
/msg NickServ REGISTER password youremail@example.com |
After a few moments, you should see a reply from NickServ, letting you know that it has sent you an email:
Check your email and enter the command that it tells you in the text field and hit enter to continue. You will see a successfully verified message from NickServ.
Now click on freenode towards the right side to select the server and click on the Identify Nickname button. Once you are identified succesfully, you are good to join channels.
Joining a channel
In the text field shown below, enter the following command.
/join #cocoa-init |
You will soon be redirected to the #cocoa-init channel screen. You can use the text field at the bottom of the screen to start chatting.
At this point, feel free to skip ahead to the IRC Channels for iOS Developers section to find out about more channels you can join!
IRC Channels for iOS Developers
Now that you’ve successfully connected to IRC, you may be wondering what some good channels are to join. Here are our recommendations:
- #cocoa-init: This is the channel you connected to in the tutorial. It’s actually a brand new channel, oriented to new developers (and beginner questions) in particular. It’s great if you are either a new Cocoa developer, or if you enjoy helping or meeting newer developers. Kyle Robson, Erica Sadun, and Lyle Andrews are the lead organizers of this channel, and I hang out here from time to time, so stop by and say hi!
- #swift-lang: Another relatively new channel, focused on the Swift language itself. This channel is particularly active lately and has some nice discussions. Mike Ash hangs out here.
- #iphonedev: The original and busiest iOS development channel on Freenode. This is the place to go for giving and getting advice on intermediate to advanced topics. Discussions about the official SDK only, no jailbreaking.
- #iphonedev-chat: This is the sister channel of #iphonedev, for off-topic discussions. Sometimes it’s fun to talk about things other than apps, and this the place to go. It’s great for those water cooler conversations — get your gossip here!
- #macdev: All the cool kids are doing iOS these days but if you’re old school and make OS X apps, then this is the channel to find likeminded developers. It’s not as busy as the iPhone channels but the regulars here are very knowledgeable.
- #iphone: For chatting about everything related to the iPhone. This is also a good place to go for jailbreaking questions.
IRC Etiquette
There are a few areas of IRC Etiquette that you should keep in mind.
First, it’s cool to ask questions on IRC, but if you do be sure to try to answer questions and help others as well. Learn the art of asking good questions. If you want to share source code, don’t paste it directly into the channel but use a “pastebin” instead.
Second, note that IRC can be very distracting if you let it. What I personally have found helpful is to simply minimize IRC and ignore it for a while when I get busy or am in the middle of something. Don’t worry, no-one will be insulted if you leave mid-conversation – we all do the same thing :]
Sometimes people who have nothing better to do with their time (usually bored kids) find it funny to troll on IRC. They do this just to get a rise out of people. The best advice is to ignore them. If a troll finds no response, they’ll go away eventually. If the trolling gets really bad, notify one of the channel operators so they can kick the trolls out of the room. Of course, don’t be a troll yourself. ;]
Remember that text — especially in real time chat — lacks the finesse of face-to-face conversation. It’s good to have a thick skin on IRC. It’s easy to get offended — or to offend — and start a flame war, but that spoils the mood for everyone and will get you kicked, or even banned, from the channel. Respect the channel rules.
Tip: Most IRC clients support “tab completion”. So if you want to respond to someone with the nick JonnyAppleseed, just type the first few letters of the nick followed by the tab key, and the IRC app will complete the name for you. Typing “jo<tab>” is a lot quicker than typing the full name.
Be nice, and make friends!
Where To Go From Here?
Enjoy! Remember the whole idea is to have an informal place to chat, help each other out, hang out, and have fun – when you have time to spare and need a “water cooler” moment! :]
Myself and many other IRC fans out there hope to get a chance to talk to you soon!
IRC for iOS Developers is a post from: Ray Wenderlich
The post IRC for iOS Developers appeared first on Ray Wenderlich.