My current project has our whole team working remotely. Three of us are within several miles of each other, another member is about twenty miles north, and our fifth is a four hour drive north. I personally find working remotely long-term a bit of a detriment, but that’s another post. Either way, for a long time it felt as though we were five contractors who just had to be on a call for a few minutes in the morning, and then pick an item off the list and do it. That feeling of working as one unit was never really there. In retrospect, the problem was that of instant communication. If we had all been sitting in an office together, we’d be conversing and collaborating (and joking around) – but we weren’t, so that was lost. We were all on AOL Instant Messenger, but a one-on-one conversation wasn’t really a replacement.
So we started brainstorming solutions. IRC was an option, but we wanted to control the logs so we could have the option to look through old conversations. Running our own IRC server was an option, but that’s a huge hassle, and looking through logs could be a mess. AIM chat had the same problem, plus we probably would have felt like a bunch of thirteen-year-olds. While looking around, I came across HipChat, a service that’s basically all the good stuff about IRC, but they also host logs and uploads as well. We’re currently in a test drive of HipChat, but it’s been exceedingly successful. The ability to bounce ideas off of the whole team without having to resort to email is invaluable, and I think as a whole we’ve been more productive. The final confirmation that it was the right solution was today when the service was down for a bit, and a few of us somehow felt disconnected.
I’m not trying to shill for HipChat here, but rather to point out that remote teams may be suffering the same issues we were, and we found a solution. I’m not sure that this solution scales all that well; a team of, say, 50 developers would have to have separate team chats, and maybe an offtopic room for non-work discussion.