---
title: Collaborating distributed teams
url: https://www.grahambrooks.com/post/2010-03-23-collaborating-distributed-teams/
date: 2010-03-23T00:00:00+00:00
author: Graham Brooks
tags:
- Agile
---

# Collaborating distributed teams

Internet Relay Chat (IRC) has been around for a very long time (1988)
and Instant Messaging (IM) for even longer – although IM did not
become really popular until the mid 90's with the emergence of GUI
clients. There are many similarities between the two systems but for
this article I am concentrating on the differences, specifically
around their use as a team communication medium.

IM is optimised for point to point communication between
two people. There are options for group communication but this is
more of an exception where one person takes on the role of organiser
and brings other people into the conversation. IRC on the other
hand uses the channel concept, where a channel is synonymous with a
topic of conversation. The channel exists independent of the
participants in the conversation. Neither system offers a view of the
entire conversation, although a lot of clients log conversations.

For teams working on a software project effective communication is a
key ingredient for success. Ideally every member of the team would be
as close to one another as possible to foster a sense of team
and effect the least expensive way of communicating - face to
face speech.

For teams that are more disparate the cost and effort in maintaining a
effective communications is much higher. The separation of team
members need not be that great to effectively sever the communication
paths available to a co-located team. In these instances electronic
communication methods can help.

When working with a distributed team though Instant Messaging although
useful is not as useful as IRC - the workhorse of open source
development teams. Where IM provides efficient point to
point communication between individuals, IRC helps create a community
and allows topics to be discussed in an open forum. IM suffers from
the same problem as e-mail – the person you are trying to talk to has
to be there to respond to the message. IRC on the other hand tends to
be topic based. You may know who is most likely to respond to a
question or comment but it could be that someone else has more recent
or better information to share. When something is unknown or opinion
is being sought of the group IRC wins again.

Most organisations don't want their project information
leaking outside the organisation but since IRC has been around the
Internet for a very long time there are plenty of open source options
to choose from when setting up a server. It is often common to
have automated (ro)bots listening to the IRC chatter,
collecting conversation and contributing things like build status or
even version control commits.

Communicating via IRC has a very different feel to IM. Because
the information shared is generally available to everyone on the
team (and perhaps beyond) the conversations tend to be inclusive
rather than exclusive. Questions are directed at the
how/how/where/when rather than the who.

One problem is that if you cannot be connected to the stream
of information flowing from IRC then it is sometimes difficult
to understand what is happening when you join part way through a
team conversation. Bots can help capture the stream and persist it
for review and possible search for those times when you know a topic
has been discussed in the past but you can't remember when or what
the conclusions were.

If you have not tried IRC for distributed team communication and are
having long email converstations, give IRC a go.
