# Why are marketing employees, product managers, etc. deserving of their own office, yet programmers are jammed in a room as many as possible?

Filed under:
|
|
##### inefficiency

I don't understand why many (many) companies treat software developers like they are assembly line workers making widgets. Joel Spolsky has a great example of the problems this creates:

With programmers, it's especially hard. Productivity depends on being able to juggle a lot of little details in short term memory all at once. Any kind of interruption can cause these details to come crashing down. When you resume work, you can't remember any of the details (like local variable names you were using, or where you were up to in implementing that search algorithm) and you have to keep looking these things up, which slows you down a lot until you get back up to speed.

Here's the simple algebra. Let's say (as the evidence seems to suggest) that if we interrupt a programmer, even for a minute, we're really blowing away 15 minutes of productivity. For this example, lets put two programmers, Jeff and Mutt, in open cubicles next to each other in a standard Dilbert veal-fattening farm. Mutt can't remember the name of the Unicode version of the strcpy function. He could look it up, which takes 30 seconds, or he could ask Jeff, which takes 15 seconds. Since he's sitting right next to Jeff, he asks Jeff. Jeff gets distracted and loses 15 minutes of productivity (to save Mutt 15 seconds).

Now let's move them into separate offices with walls and doors. Now when Mutt can't remember the name of that function, he could look it up, which still takes 30 seconds, or he could ask Jeff, which now takes 45 seconds and involves standing up (not an easy task given the average physical fitness of programmers!). So he looks it up. So now Mutt loses 30 seconds of productivity, but we save 15 minutes for Jeff. Ahhh!

More Spolsky on Offices

Why don't managers and owner's see this?

• #### Python productivity VS Java Productivity

as seen on Programmers - Search for 'Programmers'
Over on SO I came across a question regarding which platform, Java or Python is best for developing on Google AppEngine. Many people were boasting of the increased productivity gained from using Python over Java. One thing I would say about the Python vs Java productivity argument, is Java has excellent… >>> More

• #### Python productivity VS Java Productivity

as seen on Programmers - Search for 'Programmers'
Over on SO I came across a question regarding which platform, Java or Python is best for developing on Google AppEngine. Many people were boasting of the increased productivity gained from using Python over Java. One thing I would say about the Python vs Java productivity argument, is Java has excellent… >>> More

• #### Upcoming UPK Events

as seen on Oracle Blogs - Search for 'Oracle Blogs'
February 15th: UPK: Follow Panduit's Lead and Leverage Oracle's User Productivity Kit To Achieve Your Goals - Join us for a live webcast to learn how Oracle's User Productivity Kit can help you meet and exceed your goals. The webcast will feature Jim Boss, from the Panduit Corporation, who will… >>> More

• #### The Art of Productivity

as seen on ASP.net Weblogs - Search for 'ASP.net Weblogs'
Getting things done has always been a challenge regardless of gender, age, race, skill, or job position. No matter how hard some people try, they end up procrastinating tasks until the last minute. Some people simply focus better when they know they’re out of time and can’t procrastinate any longer… >>> More

• #### Productivity Improvements in Mono 2.4: Components and Architecture

as seen on Internet.com - Search for 'Internet.com'
Take a look under the hood of the latest version of Mono, the open source .NET development framework. Find out how its components and architecture help make developers more productive. >>> More

• #### iOS Efficiency File Saving Efficiency

as seen on Stack Overflow - Search for 'Stack Overflow'
I was working on my iOS app and my goal is to save a file that I am receiving from the internet bit by bit. My current setup is that I have a NSMutableData object and I add a bit of data to it as I receive my file. After the last "packet" is received, I write the NSData to a file and the process is… >>> More

• #### Data Center Efficiency From the Ground Up

as seen on Internet.com - Search for 'Internet.com'
Hard-Core Hardware: It isn't often a data center gets to install the latest in servers, blades, storage and networking gear from Day One. Yet the Emerson data center in St. Louis, Missouri had just that opportunity. >>> More

• #### Data Center Efficiency From the Ground Up

as seen on Internet.com - Search for 'Internet.com'
Hard-Core Hardware: It isn't often a data center gets to install the latest in servers, blades, storage and networking gear from Day One. Yet the Emerson data center in St. Louis, Missouri had just that opportunity. >>> More

• #### Storage Energy Efficiency: Knowledge Is Power

as seen on Internet.com - Search for 'Internet.com'
When it comes to storage and data center energy costs, users aren't getting enough information, according to a recent report. >>> More

• #### Meta on a Mac Delivers Efficiency Boost

as seen on Internet.com - Search for 'Internet.com'
Tip of the Trade: Tired of stretching your fingers to hit the ESC key on your Mac? There's a simple way to fix that. >>> More