About   Slides   Home  

Managed Chaos
Naresh Jain's Random Thoughts on Software Development and Adventure Sports
RSS Feed
Recent Thoughts
Recent Comments

Using IRC Chat Rooms as a replacement for Wikis and IMs

In other words, using IRC Chat Rooms as a form of intra-team communication and as a knowledge repository

I‘m currently working on a product which has 8 development teams. All the teams are located in the same building. Each team has about 8–15 members on the team. It includes a QA, a Scrum Master, a Subject mater expert and the rest are developers. We also have couple of Product owners and Project Managers.

We started of with one team of 8 people about a year ago. We have gradually grown over time by adding 2–3 new team members to the existing teams and talking the same number of older members and forming new teams. We also had a few exchange of team members between the teams.

We have tried this predominantly for:

  1. Having good collaboration between teams
  2. Managing process and technology related knowledge between the teams, so that each team does not reinvent the wheel
  3. Consistency between the teams. Both in terms of Architecture and product vision

We still seem to be facing issues with the items listed above. We have tried to used a Wiki to capture/document different things that we feel should be shared between the teams. Right from how to get started as a new team member to configuration issues to architectural guidelines, everything seems to be captured on the Wiki. But the real problem is finding things easily on the Wiki. The whole Wiki is such a mess; there is no easy way to refactor it to find information more intuitively.

Work Around: Mostly people walk across team rooms and ask the so-called experts about the issue they are currently facing. While I value face-to-face communication, some times it is not very effective. Esp. when you don‘t know whom to ask or when the so-called expert is not available.

In addition to this, we also use Instant Messengers [IMs]. IMs are little more convenient but they are essentially one-to-one conversations and hence we could see the same issues discussed over and over again.

I also think this is not a very sustainable model for managing knowledge within a team over its lifecycle. We are looking at this system to be in development for 3–4 years and then 20–25 years in production.

Theoretical solution:
To solve the issues listed above, I was thinking of installing an IRC chat server and use chat rooms as an offline discussion forum. When the team members get into office, they can logon to the chat server, just like they logon to IM. When somebody has a question they can shoot it on the chat room. Whoever has the knowledge and is available can respond back. There could be questions flying back and forth in real time.

As these conversations go on, we can have a bot recording [logging] all the conversations. There are a few IRC Loggers [bots] available which can log the conversations. They also provide a web front-end to search the logs.

This can act as the knowledge repository which people can search. The biggest advantage I see with this approach is that it is just a natural process of recording information. We don‘t have to go and separately write [record] it on the Wiki. It‘s also common for people find solutions when they are searching for specific questions. There is a high probability that someone else would have asked a similar question.

Other benefits:
One could use the IRC channel as an effective way to publish information to the team. For Ex. CruiseControl can publish the build results, etc.

Open Questions:
1. Do you think this approach could work?
2. Do people know of a good Windows based IRC server and client?
3. Are there any IRC servers that can group topics together like a mailing list does?

Other comments are welcomed.

    Licensed under
Creative Commons License