Monday, May 31, 2010

Open Cubicles Must Die

"The cynic knows the price of everything and the value of nothing." - Oscar Wilde
In 1987, Tom DeMarco and Timothy Lister published the first edition of "Peopleware: Productive Projects and Teams".

The book discusses many reasons software projects fail, and provides numerous recommendations for making projects succeed.

Part II of the book discusses the effect a bad office environment has on productivity, and recommends (among other suggestions) private offices as a significant productivity enhancer. The book provides quantitative evidence to substantiate the recommendation. And the book eviscerates the productivity claims of cubicleware vendors, which are shown to have no substantiation (the book calls those claims "proof by repeated assertion").

Fittingly, the book is out of print. (Corrected: The same material is now available in "Peopleware: Productive Projects and Teams, 3rd Edition".)

If anything, in the decades since the book was published, things have gotten worse (other than getting rid of P.A. systems). We are in the grip of an industry-wide pathology that produces expensive, flow-disrupting buildings.

How did we get here?

A lot of it has a lot to do with the counting of beans.

It is easy for a bean counter to count tangible things, like square feet.

It is not easy for a bean counter to count intangible things, like lost productivity due to a noisy work environment yanking programmers out of flow.

Suppose at some point a bean counter notices that their company spends more for facilities than "comparable" companies spend. This seems to the bean counter like fiduciary irresponsibility, so the bean counter launches an investigation.

Because the bean counter cannot count intangibles, the bean counter does a poor job of counting beans, and works up an Excel spreadsheet that shows how, if they get rid of walls and doors, and reduce the space each programmer gets, and eliminate bookshelves, and generally pack programmers into "pods" where they're practically sitting in each other's laps, the company will save a bundle.

On paper at least.

Intrigued by the putative savings to be had, the exec staff--sitting in their capacious, private, quiet offices--decides to engage the services of a cubicleware vendor to "work up" some designs for how the building could look. (Note that open cubicles are by this point a foregone conclusion, and that by involving a cubicleware vendor as the consultant, we have an instance of bid rigging so egregious that if this was a government contract somebody would go to jail.)

The designs are very slick. Spiffy in color, appealing in the abstract, the revamped building will "facilitate collaboration" (and who would question the need for that?), foster "inter-departmental serendipity" (which also sounds desirable, whatever that is), and so forth.

Nobody asks the programmers for their input. Or they do ask, but when the programmers say they want private offices so they can focus on work, this is dismissed as "impractical", even though drywall is cheaper than cubicleware.

The building is revamped, the programmers move into it, and are pissed off because they feel like they're regarded as interchangeable, revenue-producing, chunks of meat. Morale drops and productivity goes into a tailspin.

Adding insult to injury, the company newsletter makes a big deal about how the building, in a triumph of form over function, won an AIA award for "design excellence".

Those programmers who stick around find ways to circumvent the limitations of the building. For example, they take refuge in the server room (lots of white noise), or work at home.

But these strategies ultimately backfire, because the bean counter's minions notice that a lot of cubicles--the ones occupied by programmers hiding in the server room or working at home--are empty, and conclude that the building was in fact overprovisioned--that there could have been smaller cubicles, and fewer of them. Inevitably, the bean counter concludes that cubicles shouldn't even be allocated to individual programmers, but instead should come from a pool, first-come/first-served.

Because programmers are now sharing keyboards and mice, they share flu germs, and occupancy rates go down again. As does productivity.

To make up for the loss of productivity, the company needs to hire more programmers. But where to put them? Clearly cubicles take up too much room. Programmers should just work on long tables, like medieval craftsmen.

Meanwhile, the aggressive reduction in facilities costs is noticed by other companies' bean counters, who don't want to look like spendthrifts based on the latest "comparables".

And so continues the industry-wide death spiral.

Another reason we have open cubicles is due to differences between how programmers work and how the execs making the decisions work.

Execs are people people. They like to meet new people. They like to shake hands. They like conversation. They're extroverts.

Cubicleware vendors are also people people. They're in sales, so of course they're extroverts.

Programmers are, well, if you're a programmer you know what we are. It's not that we're necessarily ugly, or antisocial, but we're a lot more likely to send an IM to somebody 10 feet away than to get up and walk over there to talk. We like to get into flow and stay there. We like to solve problems.

When people people design a work environment, they design it how they like to work. Which involves a lot of face-to-face interaction with other people, long phone conversations, open airy spaces, etc. It's almost the exact opposite of the conditions that foster flow.

A few companies ago, Lisa was in a cube farm at a Fortune 50 company, concentrating, when some ninny of a people person walked into the area and, apparently discomfited by the unfamiliar sound of work getting done, said: "There isn't enough visitin' going on".



Another reason we have open cubicles is that private offices are seen as a "perk". But they're not a perk, they're a software-development tool, and an effective one. Programmers don't care about status or prestige. They care about being effective. And they need good tools to do that.

Unfortunately, many execs do care about status and prestige, and they see private offices as a perk. It's a problem of semiotics.

Another reason we have open cubicles--and this is a self-inflicted wound--is that some of the newer methodologies emphasize collaboration, pair programming, etc.

But one person's collaboration is another person's pointless interruption.

When people are yakking around a programmer who's trying to get into flow or stay in flow, that constitutes involuntary collaboration. It's like being on an airplane before they banned smoking--there was no way to escape.

With private offices, programmers can always opt into collaboration by opening their door, sitting down in a communal work area, etc.

Without private offices, programmers can't opt out of collaboration. Which is a shame, because at some point, somebody, somehow, has to actually write some code.

But, you say, the programmer can always put on headphones. Yes, they can, except that page 78 of the second edition of Peopleware explains why that's a bad idea (a Cornell study showing that creativity is hampered by listening to music while programming).

The saddest part of all of this is that if companies would focus on maximizing programmer productivity instead of on minimizing facilities costs, they could accomplish a lot more work with far fewer programmers, which would save so much money in salaries it would dwarf the incremental cost of private offices.

Penny-wise, pound foolish.

Not all companies make this mistake. For example, when Adobe was building its headquarters in San Jose, they asked the programmers what they wanted, and then did something crazy: they listened. (Guess what the programmers wanted.)

Sometimes I get the argument that young programmers prefer open cubicles and more collaboration, but how would young programmers know? Did a lot of them previously work in large, quiet, private offices? Doubtful--cubiclitis has been infecting the industry since the 1960s, which is longer than young programmers have been working (indeed, longer than many of them have been alive).

Claiming that young programmers prefer it this way implies they ever had a choice. But they didn't have a choice, so there's no control group, and this is just more self-serving nonsense.

I'll close with a visit a few companies ago to one of the largest cubicleware vendors in Silicon Valley. We went there because we were opening up a development center, and needed furniture. The vendor took us on a tour of their facility, which doubled as a showroom and their headquarters. As the tour lady stood there telling us about the merits of this or that piece of furniture, I noticed some employees of the vendor in the background, in the accounting department.

They were glaring at us, because we were making too much noise.

Some interesting articles about or related to this topic:
Update: Look how far we have fallen--a friend sent: "In the '60's my father took me through his insurance company offices after hours. Most of the desks were in open bays. Then we came to the computer area and he pointed out the leased IBM 360/30. Nearby there were several special rooms along the wall with doors and glass walls. I asked why some of the desks were sealed off like that and he told me that the programmers needed quiet places to work without interruption because it was so important that their programs be correct. Your article brought back that memory."





The evidence continues to pile up, not that I expect it to change anyone's mind just because of the facts:






White elephant:


It's come to this:


  1. I think young programmers like the open collaborative spaces because in college that's all they had. You're right in saying that we haven't worked in offices before. But many of us know that collaboration can lead to greater productivity, especially in academic environments.

    1. I am a programmer, and I work in an office, and personally think cubes and open office plans are distracting, discourage creativity and are insulting to the profession. Where I work some high dollar programmers are given cubes, while lowly clerical workers are given offices because they take phone calls. My question is this... why do people think offices discourage collaboration? I collaborate all the time and having an office has never been a hindrance. In fact, it gives you a place to meet other developers in private to bounce ideas, test prototypes, talk about features or discuss issues. Offices encourage collaboration because you know you aren't disturbing other teams. With offices you control the sound entering your space. You also control the light. Not everyone likes bright fluorescent lights beaming down all the time. And you arrange your desk the way you want your desk arranged. I hate sitting with my back to the doorway. In an office, I don't have to. I think there is a problem in this profession with us as developers letting accountants and modular furniture salespeople design our spaces, and we've been too meek and accepting of it.

  2. No, young programmers like the open collab environment because they can openly ask questions and learn quicker and easier.

  3. You can still get PeopleWare from Amazon in the UK. Though the wait is long it's well worth it.

    I dream of a cubicle. Our retarded beancounter prefers banks of twelve desks (about ten of them) in an open office.

  4. I work in an open-plan office. It's all right as long as everyone has the same tacit agreement not to talk to each other unless it's 1) really important or 2) lunchtime. People IM each other across the room all the time.

    1. I think this is very common in cube farms and open plans. Pointing out the obvious here, but tacit agreements not to talk are incompatible with collaboration. Especially if multiple teams are in the same space, and a discussion by one disturbs the others. Offices encourage collaboration by giving teams a place to meet when necessary and discuss things without disturbing everyone else.

  5. I'm a young developer and my preference for an open collaborative environment has nothing to do with University.

    The University environment is not collaborative. Open programming areas at University were generally loud, and full of people who had no respect for the noise-level or your productivity. I was regularly interrupted by loud conversations or disagreements, kids playing video games, or passers-by with pizza (and beer) in hand. The environment is NOT a productivity enhancer.

    On the other hand, when I started at the company I'm with now, we had closed-in "mini-office" cubicles with walls nearly touching the ceilings. The environment was very quiet. It stifled collaboration.

    I've since moved, quite voluntarily, to an open collaborative environment.

    The key is "collaborative". Everyone in the open area should be collaborating.

  6. Right on. I just pondered the thought:

  7. This comment has been removed by the author.

  8. This is why i wear moulded earplugs at work sometimes when it gets noisy. They fit like a glove and drop 15 - 30 db of noise.

  9. I totally agree.

    Earplugs are uncomfortable at best, as are headphones when you wear glasses.

    More interrupts = less productivity. Less productivity = less profits in more hours.

  10. To learn php,html,javascript,ajax,mysql,jquery with advanced concepts, you can visit

  11. Count me as another vote for offices with walls. It's very difficult to get into and stay in the flow state when you're surrounded by yammering bodies.

  12. I prefer open cubicles too, maybe not as open as sitting next to each other (like school labs) but what we have in bldg 4 seems decent.

  13. Good post. This is a very nice blog that i will definitively come back to more times this year. Thanks for informative post. cubicles ft lauderdale

  14. شركة شراء اثاث مستعمل بالرياض والقصيم وجدة
    هناك العديد من الخدمات التى يبحث عنها باستمرار عملاء داخل كل مكان فى الرياض ولكن لا يجدون افضل الخدمات المميزة والتى تحقق الخدمات التى تحقق مستوى عالى من الخدمة ، من اهم هذه الخدمات هو شراء الاثاث المستعمل فى الرياض وبيع الاثاث ايضا ، فلم يكن هناك منزل الا وقد يحتاج الى اعمال البيع او الشراء للاثاث او الرغبة فى التخلص من اى شىء متواجد فى المنازل لم يكن هناك بحاجة الية .
    محلات شراء الاثاث المستعمل بالرياض
    تهتم شركة المستقبل باعمال الشراء لجميع الموديلات المتواجدة ورغم ان هناك الكثير من الموديلات المختلفة المتواجدة فى المكان من الاثاث الزجاجى والاثاث الخشبى و... غيرها بالاضافة الى القيام باعمال الشراء للاغراض المنزلية المستعملة والاثاث بجميع انواعة والاجهزة الكهربائية وكافة الاغراض المتواجدة والتى اصبحت لا قيمة له بالنسبة لعملائنا فى كل مكان فى المملكة العربية السعودية .
    لماذا شركة المستقبل فى اعمال الشراء للاثاث المستعمل بالرياض؟
    ارقام الاثاث المستعمل بالرياض
    تهتم شركة المستقبل باعمال الشراء للاثاث المستعمل من خلال الفروع المنتشرة فى كل مكان فى المملكة والتى تسعى الى شراء اى قطعة من الاثاث مهما كانت موديلها ومهما كانت حالتة وبالاضافة الى اى كان المادة المصنوعة منها ليس فقط من الاخشاب فلدينا اتم استعداد لشراء اثاث المنازل والفنادق والبيوت والمطابخ .
    من اهم المميزات التى تقدمة شركة المستقل اثناء القيام باعمال الشراء للاثاث الاتى :-
    • - الاسعار التى تقدمة الشركة افضل الاسعار والتى تتلائم مع الاغراض المراد
    محلات الاثاث المستعمل
    • القيام بشراءة دون ان يبخس فى اسعارها .
    • - تعتمد على الخبراء فى تحديد الاسعار ولا يتم الامر بشكل عشوائى فالدقة والامانة من اهم مميزات شركة المستقبل .
    • - يتم تحديد الوقت من قبل عملائنا وعلينا القيام باعمال الفحص واعطاء التقرير وتقدير الاغراض المتواحدة فى المكان .
    • - تقوم الشركة بتوفير السيارات المتخصصة فى اعمال النقل من المكان الى المخازن الخاصة بالشركة .
    محلات الاثاث المستعمل بجدة
    عزيزى عميل شركة المستقبل شركتنا تهتم باعمال الشراء والبيع للاثاث المستعمل والعمل على اعادة اصلاحة وتجديدة مرة اخرى والقيام باعمال الدهانات و التجنيد والاهتمام بكافة الخدمات التى يحتاح الية الاثاث .
    شراء اثاث مستعمل بجدة
    لا تكتفى شركة باعمال الشراء فقط ، فنظرا لان هناك ارتفاع فى الاسعار للاثاث فى الاوانة الاخيرة فلدينا محلات لبيع الاثاث المستعمل لا تستطيع ان تفرق بينة وبين الاثاث الجديد فاذا كنت تبحث عن شراء الاثاث الذى يلزم منزلك او تبحث شراء قطعة من التحف وغيرها ، فتاكد انك سوف تجد كل ما هو مميز لدينا ونحقق لك افضل ما تتمنى ان ترى علية المكان فتعاون مع شركة المستقبل فى القيام باى خدمة خاصة ببيع او شراء الاثاث المستعمل فى اى مكان فى المملكة .

  15. Your blog content is exactly what I need, I like your blog, I sincerely hope that your blog is a fast-growing traffic density, and to help promote your blog, we hope you blog updates and place can always be colorful.cubicles ft lauderdale

  16. This is highly informatics, crisp and clear. I think that everything has been described in systematic manner so that reader could get maximum information and learn many furniture Jacksonville