News for hackers. Stuff that matters.
Re:Rands in Repose: Managing Nerds by hugh3 on Monday January 17, 2011 @11:08PM (#2114521)
Well for starters, the alternative of giving everyone a private office is really really expensive. Especially if you're also (like me) a believer in the idea that offices should have windows. I had my own windowless office for a year or so, and it was a really depressing environment in which to work -- I much prefer my current two-person office with a view.

The other point is that while an individual programmer might be more productive when he's alone in a room, a group might be more productive if they're all in the same room together. No point in having everyone write twice as much code per day if the code no longer fits together and nobody has any idea what everybody else is doing.

How much of a programmer's time is actually spent sitting down in full-on focus mode belting out lines of code?

Re:Rands in Repose: Managing Nerds by zeemonkee on Tuesday January 18, 2011 @03:07AM (#2115062)
Of course a cheaper option is to allow remote working to those who want it, at least for most days of the week. Use the office for client meetings and the occasional get-together. That way I get to have my private office with a window, coffee machine, private snack bar, XBox console and anything else I want, and it doesn't cost you a penny.

Besides, groups of developers in large open source projects, distributed around the world, seem to manage fine.

Re:Rands in Repose: Managing Nerds by jamii on Tuesday January 18, 2011 @09:19AM (#2115842)
On the other hand, being in the same room all day all week can be incredibly depressing. I've done it in the past and prefer any kind of office to working at home for extended periods.
Re:Rands in Repose: Managing Nerds by fvschie on Tuesday January 18, 2011 @04:54AM (#2115283)
Ensuring the code fits together is an activity that happens before you start coding. If a fellow programmer creates a function and then discusses with me how to integrate this, every single time, I'm not going to get any work done.

People can only work in groups when you divvy the work up between them, or if the group all focusses on one thing (one guy holds the fencepole up, the other whacks it with a hammer. One guy codes, the other guy checks the code. Etc).

The little full-on focus mode I get is spent on working out which code I need to put where. The remainder, simple code-monkey work, can be done in a normally focussed manner. Constant integration with everyone else's work destroys all focus.