(moved from stackoverflow)
I have found lot of discussions here on about which keyboard, desk, light or colored background is best - but I can't find one addressing the layout of the whole office.
We are a company with about 20 employees moving to a new place, something larger. There are two main development practices going on here with regular combination, the back end people often needing to work with the mobile people to arrange web services. There are about twice as many back end people as mobile people. About half of the back end developers are working on-site at any time and while they are almost never all in the office at once at least 5-10 spaces need to be provided - so most of the time the two groups are about equal.
We have the chance to arrange desks, partitions and possibly even walls to make the space good. There won't be cash for dot-com frills like catering or massages but now's the time to be planning to avoid ending up with a bunch of desks in a long line.
Joel on Software's Bionic Office is an article I've remembered from way back and it has some good ideas but I* (and more importantly the company's owners) are not completely sold on the privacy idea in an environment where we are supposed to be collaborating. This is another great link - The Ultimate Software Development Office Layout - I hadn't even remembered enclosed meeting rooms until reading this.
Does the private office stand in the way of agile development? Is the scrum enough forced contact and if you need to bug someone you should need to get up and knock on their door?
What design layouts can you point to and why would you recommend them?
*I'm not against closed offices at all but would be happy if some other solution can do just as well. If it can't... well, that's what this question is all about.
Two updates - April 2013.
The first move was to an office that was "funky". Basically open but with weird features like one wall carpeted, half the floor carpeted, half the floor polished concrete. Everyone seated on the concrete wanted to be on the carpet. It looked OK but in practise I would recommend not carpeting only half the office, the people who felt the cold really hated it. For standups it was fine - huge whiteboards occupied one wall, plenty of space to talk and break out.
Then I moved to a very crowded place mixed in with another company (same owners) whose function was all about collaboration, design, phone calls, maintenance and installation of physical things. That sucked. Then we moved to new premises and someone decided warehouse/industrial was cool. Hard surfaces everywhere, glass and polished concrete. Developers sharing one big table in the middle of the highest traffic area right next to a kitchenette and dishwasher, not even in an alcove, just out there. Next to the people who spent all day on the phone. It sucked and continued to suck despite bandaids like noise absorbing panels. It sucked for agile because there was no space designed in for the board or for the standup and the acoustic characteristics of the place made hearing any one person above the clatter very difficult - as well as that feeling, during quiet moments, of shouting in a cathedral. Nobody ever listened to the complaints. I quit and so did a few others. Oh, it didn't help that the person who insisted on being "product owner" never bothered to show up.