I was just reading an article in Fast Company. The theme of this issue was “Design”, and the first article in there was about designing workspaces for knowledge workers. The article was written from the point of view of the author as she was writing the article, in a shared work area, with all kinds of interruptions going on around her. Every now and then in the text, she’d add an aside about how someone just came up to her to ask a question, or she’d mention that she overheard some conversation going on a few desks over. It was breaking her concentration, and preventing her from working as efficiently as possible.
Cut to my group at Microsoft today. We’ve just started working on Enterprise Library V2, and Scott Densmore and I, along with our tester Mani, are the only carry-overs from the first release. We’re essentially starting the team building process all over again. This means that we have to get all the new folks up to speed on how Enterprise Library works internally, and we have to begin to learn to work together as a team. We also get to have lots of design discussions, ask for, receive, and give help, and get to know each other. I prompted a conversation today about whether or not we were getting value from our standup meetings in the morning, and the general consensus was that everyone was getting more value out of just being together in a room all the time than from the meeting itself. Working in a war room, in the opinion of everyone in the room, was the deciding factor in helping us to go faster.
So, what is the difference between these two situations? I believe the difference is that we are acting as a team, whereas the author was acting alone. (Pretty obvious conclusion, eh? I amaze myself sometimes :)) The sole practitioner, thrown into a room with other sole operators, is lost in the white noise of all the conversations. One who belongs to a team revels in that same white noise, as that noise is the shared knowledge floating around the room.
My real point (I actually do have one) is that I believe this is why it is difficult for agile teams to convince management to give them a war room. Very few of the people who we must ask for such a room have ever lived the shared work experience. One kind of person that we must beg for that shared space is a facilities/HR/admin kind of person who has no first hand knowledge of how we work. In their experience, software people want their own offices and private spaces, because that’s how we work. We come in, put our headphones on, and pound on the keyboard all day long, never talking to anyone. That’s the stereotype, right? The other type of person we have to cajole is someone who used to work as described above, but has gotten promoted out of that role into management. From their own personal experience, they wanted their personal space, and they want to do good for their people. So they want to get them those private offices or cubes. In both cases, I believe the ones being asked are acting in the what they perceive to be the programmers’ best interests, since that’s how programmers have worked for eons. They just don’t know.
We have to take it upon ourselves to educate them. We have to speak up about how war rooms help us do our job better. We have to write articles, we have to invite our bosses into our war rooms, we have to blog about our experiences. We have to get the word out, so that our bosses will begin to offer us the open workspace that we crave so badly.
The fault is not theirs — the fault is ours. It is we who have changed, in our work habits, in our space desires. We have to communicate that to the world at large so that they will learn that programmers have emerged from their cocoons^h^h^h^h^h^h^hcubicles and are ready to work together.