Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Okay, so I work on a team of 4 people. We're spread all around the country, and when we communicate, it's either through email or our issue tracker.

That's okay most of the time, but I feel like I spend a lot of time waiting for people to reply to my emails/comments on tickets. That's a real productivity kill for me, since in the 5 or so minutes it takes to get a response, I usually start doing something else. I'd like to start using some kind of synchronous (i.e. instant) form of messaging so that we can communicate faster. I was thinking that I could set up a private IRC channel, but I'm not familiar with the ins and outs of hosting this and I'm not sure I could sell this to some people on the team. I also like the idea of being able to convey status to everyone else -- show that you're available by being in the channel, and then set statuses (e.g. "working on x issue" or "eating lunch" while in the channel).

Are there any no- or low-cost options (some time cost is okay, just not monetary) that will allow us to instantly communicate as a team, much like an IRC channel would allow? Some priorities:

  • We all have to be able to chat at the same time or PM each other if needed
  • Privacy is, of course, important
  • It has to be relatively easy to set up or it won't get adopted
  • It has to be low-cost

Also, any thoughts on instant communication in general? I'm interested in any support for my theory as well as any criticism.

share|improve this question

closed as off-topic by gnat, GlenH7, MichaelT, Dan Pichelman, Kilian Foth Sep 10 '13 at 11:55

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, GlenH7, MichaelT, Dan Pichelman, Kilian Foth
If this question can be reworded to fit the rules in the help center, please edit the question.

Might I suggest that if you always need an instant answer, that you might have some problems with your communication process itself? Being interrupted with requests from bosses and coworkers for immediate responses to information requests is the surest way I know of to kill productivity. –  Robert Harvey Jul 19 '11 at 14:41
@Robert didn't really think of it that way. I suppose that my solution might have more issues than it solves. –  Rafe Kettler Jul 19 '11 at 14:45

7 Answers 7

  1. E-mail is not an instant-response medium. You are expecting your colleagues to reply within 5 minutes? You are being unreasonable, they may also be doing focused work where they do not want to be interrupted. Some people at my company make a point of only checking their e-mail twice a day: in the morning and after lunch. They do this for precisely that reason.

  2. If you want an instant response, consider for a moment if you really need it. Do you really want to pull one of your coworkers out of the "zone" costing them at least 15 minutes of productivity because you are being impatient? Is it really that important? Or can it wait a few hours until they find time to respond?

  3. If you need an instant response, pick up the phone. If phoning is too expensive, use something like skype. Don't use text-based messaging, it's too easily misunderstood for all but the most trivial things (and even then). This is even more important if you have to cross a language-barrier, i.e. either you or one of your colleagues is not communicating in your native language.

All of the above is assuming a relatively "hostile" environment - you don't know your colleagues very well. If you are communicating cross-country with colleagues that you consider friends a lot of the above can be watered down. At my job we do use Windows Live Messenger - developers from a remote office contact me a lot (though we have a prior agreement that it's always okay to interrupt me!).

share|improve this answer
+1 for encouraging patience and preventing interruptions. –  StuperUser Jul 19 '11 at 14:47
Disagree with #3 - IMs can sometimes be a lot easier than phone. It depends on a lot of things. –  configurator Jul 19 '11 at 16:33
Most phone calls turn into voice mail tag. With IM, you know the person is available. If the chat doesn't go your way, pick up the phone. –  JeffO Jul 19 '11 at 21:50
@Jeff O - in my experience IM does NOT tell y ou that the person is available. Just because I have my IM on doesn't mean I can actually respond immediately (because of local interruptions etc.). Also, many people ignore "busy" or "away" statuses when sending messages - which is just as distracting as a phone-ring if the message starts blinking. –  Joris Timmermans Jul 20 '11 at 13:11

Skype has a good instant messenger that allows multiple members and has statuses for those logged in. It's free too and is an easy install.

Skype is a freemium voice-over-IP service and instant messaging client...

The service allows users to communicate with peers by voice using a microphone, video by using a webcam, and instant messaging over the Internet...

Unlike most other VoIP services, Skype is a hybrid peer-to-peer and client–server system. It makes use of background processing on computers running Skype software...

share|improve this answer
Actually, I believe the SO devs use Skype to collaborate a lot. –  Jon Jul 19 '11 at 15:32

I assume you've already discounted just using a public service like AIM for some valid reason? We use it extensively on my project which has team members all over the place. Asking questions to an IRC channel is more likely to be ignored due the bystander effect. You are better off talking directly to one peroson. And most clients support some kind of group chat too.

share|improve this answer

In our team we use MSN (aka Windows Live) and Skype. I found both easy to setup and they work fine.

However, @MadKeith is perfectly right in that your colleagues may not want to be pulled out of their flow state all the time when you need an answer. So start by discussing this problem with them, and only progress if it is a problem to them too, and the team agrees to take a chat client into use.

Otherwise, maybe you could work on improving your multitasking skills, so that while waiting for an answer related to one task, you could pick up another. Then when you are finished or stuck with the latter, check back to your mailbox to see whether you got a response to your question in the meantime.

share|improve this answer

Where I work we are all largely in-office but we have a number of team members that work off-site, around the world. What we do:

  1. Messenger: we are required to be logged in at all times, while working and are to use the availability status functions (so you aren't needlessly kicked out of the zone).
  2. e-mail: For async communication, this is relatively standard.
  3. Phone: We are all required to be available by phone while working. Most people don't use it, but when I want to work more interactively with someone who's offsite, I'll pickup the phone and call.
  4. Meetings: We have regular meetings. They're never too long (30 mins, 1 hr tops) but the meetings are always conference calls where everyone partakes.
  5. Livemeeting: AFAIK, the livemeeting server isn't free, but I think some screen sharing software is. All of our meetings are hosted on livemeeting so that the people offsite see the same screen as we see projected on the wall in the board room.

It's not perfect, or the same as 'being there' but it works well for us.

share|improve this answer

There are tons of services out there. Many are free like Skype or Google. I prefer something that integrates with my email/why have to apps open.

If your goal is to get instant responses whenever you want, that's not going to go over very well. At best, you'll know who is available and ask at that time. Otherwise, just send an email knowing you may not get a quick response and plan your time accordingly.

The tough part is getting use to indicating your availability status. Some timeout automatically when you're innactive on your computer.

There will be those that think it is a way for Big Brother to use as a way to track time. Some company cultures are not setup to take advantage of this.

share|improve this answer

You could always old-school it and call them on the phone.

share|improve this answer
+1 for using a synchronous medium for a synchronous interaction –  jasonk Jan 30 '12 at 8:08

Not the answer you're looking for? Browse other questions tagged or ask your own question.