A few days ago I wrote about Actual Programmer Productivity, inspired by a post by Matt Rogish. Today I’d like to talk about that, but over time.
One of the points I made is that hours 40 to 60 in a work-week can produce useful code, in the first week of crunch-time (aka overtime). That last clause is the most important, since most people are going to extrapolate that those hours can generate good code in week n+1 of crunch-time, which is not the case. Each week of overtime wears down a developer (or designer, or whatnot) and causes their baseline productivity to drop. It also takes several weeks of refresh time, for programmers get back to their pre-crunch baseline productivity. A rough graph of it looks something like this:
Programmer Productivity under a run of Crunchtime
That is not the most scientific graph, but it’s a good start based on experience on a bunch of projects. These numbers are similar between game developers, Ford Assembly workers in 1909, and modern developers in a crazy cool office.
See Also:
8017_b from AWCI.org (pdf)
Rules of Productivity
Working Too Much Is Stupid
