The Artima Developer Community
Sponsored Link

Uncle Bob's Software Craftsmanship Corner
One per Pixel.
by Robert C. Martin
May 8, 2003
How many software developers does it take to change a lightbulb? 10 to discuss the requirements, 10 more to do the analysis, 10 more to do the design, and one to write the code, 12 years later.


On a newsgroup recently someone said: "Half of all programmers are below average." I responded that that was not necessarily true. Certainly half are below the median, but it is remotely possible that only one programmer is above average. (I'll leave you to decide who I was thinking of.)

I said this flippantly, but I was partially serious. It seems to me that 90% of the code that gets written in the world is written by 10% of the programmers. The other 90% of the programmers write the remaining 10% of the code (and the 10% then fix it.)

OK, this is snobbery. I know it. And maybe my numbers are a little skewed. Perhaps it's not 90/10. Perhaps it's 80/20 or even 70/30. But it sure isn't 50/50!

I once consulted for a company that had 50 developers working on a simple GUI. This GUI was a flat panel touch screen upon which several dozen dialog boxes could be made to appear. These 50 developers worked on this project for five years or more. That's 25 man-decades, 2.5 man-centuries! COME ON! Three guys could have done this in three months! My buddies and I used to joke that they had one developer per pixel and that each developer wrote the code for his pixel.

OK, so the manager was empire building. Some managers measure their worth by the number of people they manage rather by how much they can get done with how little. Still, I find this problem is not isolated. It seems to me that a large fraction (perhaps a majority) of all software projects are overstaffed by a huge factor.

I wonder if we'd get a lot more done in this industry if 90% of us quit.

Talk Back!

Have an opinion? Readers have already posted 19 comments about this weblog entry. Why not add yours?

RSS Feed

If you'd like to be notified whenever Robert C. Martin adds a new entry to his weblog, subscribe to his RSS feed.

About the Blogger

Robert C. Martin (Uncle Bob) has been a software professional since 1970 and an international software consultant since 1990. He is founder and president of Object Mentor Inc., a team of experienced consultants who mentor their clients worldwide in the fields of C++, Java, OO, Patterns, UML, Agile Methodologies, and Extreme Programming. In 1995 Robert authored the best-selling book: Designing Object Oriented C++ Applications using the Booch Method, published by Prentice Hall. From 1996 to 1999 he was the editor-in-chief of the C++ Report. In 1997 he was chief editor of the book: Pattern Languages of Program Design 3, published by Addison Wesley. In 1999 he was the editor of "More C++ Gems" published by Cambridge Press. He is co-author, with James Newkirk, of "XP in Practice", Addision Wesley, 2001. In 2002 he wrote the long awaited "Agile Software Development: Principles, Patterns, and Practices", Prentice Hall, 2002. He has published many dozens of articles in various trade journals, and is a regular speaker at international conferences and trade shows.

This weblog entry is Copyright © 2003 Robert C. Martin. All rights reserved.

Sponsored Links


Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use