10

There is this question ( which is now closed as not constructive) that asked about the average productivity per day.

My question is, is there any scientific study on the productivity of programmers? I can't help but feel that doing 8 hours of quality programming work from Monday to Friday consistently is very hard. And if yes, is there any literature that investigates this?

Graviton
  • 4,005

3 Answers3

13

I don't think there would be any, for the simple reason that you can't study it objectively:

1. It varies from project to project

I had to work on projects so boring that working one hour per day was already too long. With badly written requirements, badly written existent codebase and no quality whatsoever required from me, I could try my best to concentrate, and find myself browsing Programmers.SE or doing other unrelated stuff for the last three hours.

I also had to work on projects so exciting that I spend 60 hours in a week on them (without being forced to), writing not so bad source code.

In those two cases, I was the same person. In the first case, my productivity was terrible and I was able to concentrate 0 hours per week. In the second one, my productivity was high and I was able to concentrate more than 40 hours per week.

2. It varies from company to company

As an experience, you can put two developers in different working conditions on the same project. One developer will work in her own office with a dual screen fast PC, comfortable chair, etc. The second one will have a desk in the middle of a call center, with an old PC, a 56k internet connection and a 50 MB limitation for all the personal files (and no right to use USB sticks).

Two weeks later, invert the working conditions. See the difference?

3. It varies from day to day

Imagine that on Thursday, the developer knows that he will be able to quickly solve the remaining issues, that the work to do is interesting, and everything is exciting and promising. She also learnt that she was promoted, and her husband contacted her to announce some good news related to her personal life.

On Friday, the same developer finds her old dog dead and her car won't start. She's late at work and spills her coffee on her desk, etc. How would this affect her daily performance, compared to the day before?

  • 5
    All these issues can be addressed through proper research methodology. A more severe issue is that productivity is hard (if not impossible) to quantify. – tdammers Oct 04 '12 at 10:57
  • Once you get past all that, about 6 hours seems to be the average "useful" coding time per day. – Brian Knoblauch Oct 04 '12 at 12:00
  • 1 very true. To add my personal experience - it even varies with levels of motivation. Many years ago, I worked a few bouts of 50 hours+ (not something I would actually recommend) each in a "single sitting", remaining relatively productive throughout. It was basically down to being crazy motivated, however. I'm guessing being overworked in the long-term demoralises developers, causing much of the decrease in productivity. In the long term, 6 to 8 hours is more than enough in my opinion.
  • – Daniel B Oct 04 '12 at 13:07
  • 1
  • it varies from person to person. Developer A has Adult ADD, can't concentrate on anything more than 10 minutes at a time but during that time performs briliantly (and can switch back and forth between two-three tasks like a pendulum over a day), person B is compulsive obsessive, once she's set her teeth in something she never lets go until it is done, can work 100 hour weeks on a single task seemingly without getting tired, but her output per hour is low.
  • – jwenting Oct 04 '12 at 13:26