I got started on looking at productivity variations again and just couldn’t stop. I found Programmer performance and the effects of the workplace by DeMarco and Lister (yes, the authors of Peopleware). The paper is well worth a read.
In their study, they had 83 pairs of professional programmers work all on the same well-specified programming problem using their normal language tools in their normal office environment. Each pair was two people from the same company, but they were not supposed to work together.
- They found a strong correlation between the two halves of a company pair, which may be in part from
- a pretty stunning correlation between the office environment and productivity
- (or perhaps due to different companies having radically different tools/libraries/languages/training/procedures, which they didn’t discuss)
- The average time-to-complete was about twice the fastest time-to-complete.
- Cobol programmers as a group took much longer to finish than the other programmers. (Insert your favorite Cobol joke here.)
Over and over, I keep seeing that the median time to complete a single task is on the order of 2x to 4x times the fastest, not 100x. This study seems to imply that a great deal of that difference is due not to the individual’s inherent capabilities, but rather the environment where they work.