Every organization has its “sacred spaces,” those physical locations that help contain the identity of the organization. For decades now, for example, Silicon Valley prided itself on the “open” culture, represented by cubicles that even the senior management shared. When I worked for Yahoo!, for example, the CEO had a cubicle (he or she also had a private office, but we weren’t supposed to know about that). This meant that the CEO was “one of us” and was supposedly approachable.
In reality, of course, different people have different needs. People involved in design or technical support need to collaborate; their workspaces should foster open communication and easily sharing graphic, visual elements. Sales people need to keep their energy levels up; they tend to rely on a team of people to help support them through sometimes challenging periods. (Of course, these are gross generalizations and do not apply everywhere, but that’s the value of generalizations.)
Software developers (programmers) have different needs, especially while they are programming. Specifically, numerous studies have shown that software developers have maximum productivity when they have 4-6 hours of uninterrupted time in which to write code. Note that this applies only when they are actively writing code; when they collaborate (for example, to design things or review something), they need a more collaborative environment.
And note, too, that uninterrupted means, specifically, no visual or auditory distractions for the entire duration. Programming at a high level requires an intense, effortless concentration—what psychologists call a “flow state” and what most people refer to as “in the zone.” It takes, at a minimum, 15-20 minutes (and often longer) for a person to reach this state. In an open-plan office, with conversations and other activities going on all the time, it is nearly impossible to go 20 minutes with no distractions. Thus, companies that force their software developers to work in an open-cubicle, group situation are guaranteeing that those people will operate at a vastly reduced efficiency.
In effect, those companies value the cultural artifacts (community, openness, collaboration) above the actual productivity of the individual developer. Their “sacred space” forces their employees to work at a lower level in return for some vague perception of cultural conformity.
Software developers are not prima donnas, nor do they think of themselves as somehow “better” than anyone else in the organization. In reality, they perform a highly-skilled activity that requires a very specific physical environment for them to perform at a maximum level. Imagine forcing premier athletes to run the 100m dash in high heels. In might look good, but their performance will suffer. Pay attention to the environment of your developers, and it will reward you with great results.