Software development is a social activity, one that involves a lot of communication and interaction—constantly learning, constantly interacting, and dealing with and talking about the abstract—so coordination among individuals is of vital importance. What management has to keep in mind is that it’s the people on the front lines who know best, and people who don’t immerse themselves in building software don’t really understand it.
And though there might be some push-back from people who see this sort of communal space as an invasion of privacy, or personal space, as one more “perk” we’re no longer getting…think of it this way: if you’re in prison and you get in a fight or otherwise misbehave, they throw you in ...