Skip to main content
1 of 2
bethlakshmi
  • 7.6k
  • 1
  • 27
  • 35

My answer is "yes, but be careful how you use that metric".

A programmer who is, shall we say, functioning optimally, is one who creates for functionality and causes fewer errors that need fixing than his lower performing bretheren. I would not find it all hard to believe that these folks can perform at 10X the producitivity of others, particularly when you consider that a single good or bad choice made in an hour can readily have 10 hours of impact, and programmers make many such choices most days.

But...

You have be careful in you measure this. I really don't trust most measurements on productivity since I've seen endless cases where just about every known metric fails to consider something I consider vital for team productivity. So I generally hate such hard numbers for "productivity". Here's some examples:

  • Lines of code (LOC) - a generally hated metric, since a thoughtless programmer can generate many horrible, verbose, inefficient, hard to debug lines of code while a good programmer creates a few, elegant, easy to fix, rarely broken lines of code in more time, but which are overall a better choice.
  • Bugs generated and/or time to fix - everyone will generate some bugs, and often the most expensive bugs are generated by a series of bad decisions for which the generator of the issue is merely the last in the domino effect. Also, your great debuggers are not always your great designers - you need both.
  • By almost any metric, there are great developers who are such a pain to have on a team, that 1 "super productive" developer will drive away 10 basically good developers and I rarely see someone who can do everything well, so we'll need more than 1 person on the project.
  • There's no way to easily account for those wonderful people who see the problems coming before they serious and head them off, particularly when the problem is a gap in a process - faulty CM, inefficient build, a gap in testing, a security flaw - these often look like a big waste of time until you realize that they save you from disaster - there's no way to measure that.

Many measurement systems have tried to take these factors into account, but I have yet to see that there's one that takes all of these issues into account, so I'm never overly impressed with factors like "a good developer is 10X more productive than a mediocre one" because I have to wonder if the metric really accounts for all the work that needs to go into a successful ongoing product or a successful, thriving team.

bethlakshmi
  • 7.6k
  • 1
  • 27
  • 35