Saturday, May 17, 2008

Excessive communication considered harmful


Communication is one of the core Agile principles. It is supposed to replace documentation to some extent and to foster knowledge sharing between team members. I guess it serves well both purposes. But...


I wish we focused more on programming and less on communication. To code a solution to a non-trivial problem a developer needs to concentrate and think. At least I do. When continuously involved in communication with different people, especially in communication not initiated by me, so concerning another topic than what I am just working on, it is impossible to concentrate and get the work eventually done. I am not saying we should not communicate at all. I only think there should be a way to avoid communication for a time period needed to solve a particularly difficult problem.

Modern office arrangements (open spaces) force everybody to communicate with everybody else, whether they want and need it or not. It is reasonable to put the whole team in one room. But not the whole development shop! And also there should be places in the office that allow for periodic work in solitude.

Knowledge sharing between experienced and novice team members is definitely a valuable thing. But it is not granted that a novice team member will ever get experienced that way. Since it is so easy to ask a more experienced team member, there is no motivation to become more independent. As a result, the novice team member can easily get into a habit of first asking and then potentially thinking, and never become experienced (him/her)self.

I believe companies should promote communication, but purposeful and managed, rather than thoughtless and unlimited.

0 comments: