1. 9

  2. 4

    Interesting paper. I think the model is missing one more aspect that causes net negative effect: production of additional maintenance overhead. If a programmer writes a lot of code quickly but the quality of the code suffers, this may make the team less productive overall due to the increased technical debt. Also, it will make other team members less productive if they have to catch and point out the issues frequently during the code review process.

    1. 1

      I think it’s implied in the fourth paragraph:

      This negative production does not merely apply to extreme cases. In a team of ten, expect as many as three people to have a defect rate high enough to make them NNPPs. … If you are unfortunate enough to work on a high-defect project (density of from thirty to sixty defects per thousand lines of executable code), then fully half of your team may be NNPPs.

    2. 2

      The prevalence of NNPPs makes the movement toward safer languages all the more obviously important. The less the language facilitates the creation of costly defects, the less damage an NNPP is able to cause.

      1. 2

        This was a design goal for Java, directly opposing it to C++.