How many software developers does it take to change a lightbulb?


This post from Uncle Bob generate a lot of comments, I wonder why? ;-)

 
Summary
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.

 

1 Comment

  • Well said. Very well said.





    I'm momentarily stuck in my career path, doing SAP programming. Sucks big time, but one way or another I'll be rid of this this coming fall.





    A department of 15 programmers, millions spent on consulting, system purchased over 16 months ago. Let's see.... customer production lines shut down, nobody can figure out how to do barcode printing, and my latest project is to fix the feed coming out for forecassting - seems the numbers are just flat out wrong and nobody knows how to fix this inside of SAP.





    Why me? Seems I had this flash of sanity... told them I could get accurate numbers out inside of a week because I'll just go against the damn base tables and not some 'infostructure' that once again nobody - go figure - knows how to change. Why do I know I can do this? Because I wrote a shopping cart site and rolled my own queries for order/catalog searching and price break info (seems SAP kinda lacks in this sort of stuff - again, go figure).





    So let me understand this. 16 months, 15 programmers, millions on consulting. And not one programmer can write a simple program to pull out sales and invoice numbers. Net result? I'm stuck doing junior-level SAP coding.





    Whew. Thanks for the platform to rant!

Comments have been disabled for this content.