A few months ago, I read Steve McConnell’s book “Code Complete”. It is, without a doubt, the best book on programming I have ever read. It doesn’t matter what platform you code in, this book will help you do it better. An absolute goldmine.
Besides down-and-dirty coding strategies, McConnell discusses “soft” skills at the end of the book. Things like personal character — I don’t care how much of a .Net ninja you are, if you can’t admit it when you screw up, that’s something that compromises your abilities as a programmer.
He also discusses how to get the best out of programmers, and he mentions the book “Peopleware, of which Joel Spolsky has always been a huge fan. Spolsky cited the book in the development of his “bionic office.” I’ve always meant to read it.
On page 684 (second edition), McConnell reprints an eye-opening table from Peopleware. It’s the results of survey questions posed to programmers, and it showed the difference in answers between the top 25% of programmers (the great ones), and bottom 25% of programmers (the so-so ones). Here goes:
|Environmental Factor||Top 25%||Bottom 25%|
|Dedicated floor space||87 sq. ft.||46 sq. ft.|
|Acceptably quiet workspace||57% yes||29% yes|
|Acceptable private workspace||62% yes||19% yes|
|Ability to silence phone||52% yes||10% yes|
|Ability to divert calls||76% yes||19% yes|
|Frequent needless interruptions||38%yes||76% yes|
|Workspace that makes programmer feel appreciated||57% yes||29% yes|
Pretty telling results, but I wonder about cause and effect. Are they great programmers because they have such perks, or do they have such perks because they’re great programmers?