Hi. My name is Brian Fromme and I work at Canonical in the Launchpad tools team. One topic area I am most interested in is the human side of software development. We developers often put great tools together only to find that the people using them still have problems getting their jobs done.
As part of my job at Canonical, I am trying to research and solve the human issues that come with distributed team collaboration. This blog is part of my work toward solutions (or just improvements) in that area.
Distributed Team Collaboration
This first post is meant to collect my initial thoughts, research, and potential solutions to issues with working in a highly-distributed workplace. At Canonical, work teams are distributed across every timezone in the world. This model is typical for open-source development, but creates challenges for teams and projects that involve cross-functional teams.
One goal of this blog is to gather existing information on this topic, both within and outside of Canonical. Also, it is assumed that phsychological and socialogical research will be helpful in understanding the complexities of human needs. Issues such as motivation, connectedness, and attachment to goals are just the beginning of this area.
I hope that this work will be a starting place for that dialog. Other tools, such as a public wiki will also be useful for the ongoing contributions that are hoped for as part of research and experimentation processes.
Simplistic Model of Communication
The following diagram (Figure 1) shows a simplistic model of communication vehicles being used today in many distributed teams.
In this model, the most interpersonal methods are from the top down and the most ubiquitous methods are from the bottom up. In general, text-based methods are good for assigning and updating tasks (and other forms of work), but have complications based on time and understanding of the written word. In-person meetings have the benefits of strong interpersonal communication, but are expensive and taxing.
A model for best use of specific resources could help in this area. In particular, such a model should take into account the plethora of human needs for specific interpersonal communication. For example, email seems a good way to assign a task to someone. But, that person may have a very different understanding of the task, based on many factors. Also, the assignee might have a personal reaction to the task. Email typically assists little in these issues, particularly since people will sometimes gaurd their views until pressed in person.
So, does this mean that phone calls and in-person meetings are the solution? No. Rather, a more detailed model is required – one that accounts for specific situations and possible reactions. This may mean that a combination of communication technologies is required, again based on circumstances. It is this area that is intriguing and seems to have the possibility of great returns.
This blog is meant to begin a dialog about the challenges of working in distributed teams. Study and potential solutions for cross-functional teamwork is also a goal.