3: Productivity and Quality are Inseparable

Hmmmm.... I don't agree with this one. It might have been true in 1981 when the source paper was written (Programming Productivity - A life Cycle Concept)... Now; I can't agree with it.

What the book (and I assume paper) says is Productivity and Quality are inversely related. If you have high productivity you then have low quality. If you have high quality, you have low productivity.

Now; this is fucking bullshit.

We've learned that high quality code allows us to be very productive. It's like this conclusion is the exact opposite of teh reality we see now. If you know how to maintain high quality code; you can deliver quickly.
There is, of course, an area where qualtiy slows delivery... but it's in the first few weeks to months of a product. WELL before a typical delivery date.

The fact this is so far off from my experiences hurts. While I'd like to continue to use this book for cheap easy topics to write on... many more of these and I'll stop.

There's been more than one book I've thrown away (not in the trash... still can't "throw away" a book) when it's fundamentally wrong.
I had a book say that singletons are a great way to share state across the app... Noooooooo! No. It was the killer, but there were a few more crappy bits of advice in that book.

33% of the principles I've read are fundamentally wrong... ya know, literally 1 of 3. :)

Let's set things straight here - If you maintain high quality code, you will deliver features faster, with less bugs. That's simply what we see in the industry. Maybe it's not what was seen with the major language in the 1970s... We've got 40 years since that reearch was done to improve our craft; and we have.

Maintaining high quality code is hard work. It's ruthless and endless attention to detail. Constant, endless refactoring, reviewing, maintaining... A lot of work.

When you have to do something new in the code; it tends to be very little work. What comes before (pre-factoring) or after (re-factoring) is where the work comes in for high quality code.

I agree with the Principle; "Productivity and Quality are Inseparable"... the difference is that in my world, quality drives productivity. You cannot maintain a high level of productivity if you do not maintain a high level of quality. It's simply not possible long term.

This point is gonna eat at me. How has it changed so much? Not just since 1980, but this book was written in 1995... 15 years later and we didn't have good evidence of high quality lifting productivity? I find that hard to believe... Maybe in the slew of older books I've got queued up I'll get some insight into that... Maybe... But damn... Even just since 2000... seems so long ago, and yet not.

Show Comments