Sometimes developers get offices, sometimes we get cubicles. I'm not convinced in office is always a better choice, though. Here are 9 reasons why I think cubicles are better, and 2 reasons they are not:
1) You're part of the Dev Network. Hopefully, your cubicle is in a row with other developers and architects. If that's the case, you get to listen in on and take part in all kinds of conversations about a wide range of work topics. In turn, this lets you benefit from other's opinions and experiences.
2) You have a face. Unfortunately, I've worked at places that have had layoffs. In fact, I've seen some good technicians let go before less effective counterparts-- because the guys who were kept were more familiar to everyone. Once you're in an office, you become a little less known to your local work group. (Along the same lines, I've known top-notch technicians who were given less 'street cred' by the senior techs in the shop because the guy worked remote. Had that guy been a local cube-dweller, I'm sure his opinions would have carried great weight.)
3) You're the first to know about food carry-ins, where cube-dwellers gather and share treats. 'Nuff said.
4) If you're single, you have an excuse to mingle. It worked for me-- I've been married for 12 years to the hot chick from across the wall.
5) It helps keep the amount of clutter in check for us pack rats. I for one would have TONS of old developer magazines, books, printed tutorials, etc. if I had an office. As it is, I probably only have half a ton in my cube.
6) You can easily ask a co-worker for a second set of eyes on a problem. Two heads are better than one-- it would be much more difficult to leave the office, pull someone from the cubes, etc.
7) You can build on your all-important social/work network. So maybe it's not the best use of your time to talk about World of Warcraft or sports once in a while. It does help you form bonds with your co-workers, though, and that can later pay off when you need to leverage the network (i.e. referal for a new job).
8) You won't lose face if your work area gets moved. If you work in a big building and your work team gets moved, it's no big deal if you go from a cube to another cube. But if you had an office and got moved to a cubicle, it might seem like you 'lost something'.
9) You're on the right side of the Dilbert labor/management spectrum when you're in a cube. Once you get an office, you're more like the pointy-haired type than the engineering type.
And a few reasons you'd really rather have an office
1) It gets you out of the noise when you need to concentrate. On those occasions, it's nice to be able to close the door and get lost in your code. If you're in a cubicle, headphones might be the next best thing.
2) You can make phone calls without the whole world listening in. Business or not, sometimes there are calls you'd rather not have overheard. Luckily for cube-dwellers, vacant conference rooms can help fill this need.
3) Good old hubris. Let's face it, an office just carries a little more prestige, doesn't it? But that's not a good motivation, IMHO.