Re: programmer productivity




Richard Heathfield wrote:
Dann Corbit said:

"Mark P" <usenet@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:osmLg.24887$gY6.9937@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Years ago I heard [...]: "The average programmer produces [X] lines of
production quality code per day." [...] My recollection is that X was
pretty small, perhaps on the order of 10. Has anyone heard this before
and do you know what the reported value of X is?

It was originally measured at IBM and their result was 10SLOC per day.
Note: this was measured independent of project types and programming
languages. It's purpose was to show that programmers were more
effective in higher level languages than in assembler.


11 lines of debugged code per day is at the low end of typical estimates
and 20 lines per hour at the high end.

My guess is that the real case will be somewhere between these two
extremes for most projects.

I was always fascinated by that statistic. It just seems so utterly at odds
with my personal reality. If I turned in only 20 lines of code per day,
then over the course of a 50 year career, with 300 working days per year, I
would expect a career total of 300,000 lines of production quality code.

Other measurements by IBM and others have shown there is a WIDE range
of productivity, both between programmers and the same programmer on
different projects. Given the wide range, the 10SLOC/day becomes
essentially meaningless. It is an average, but the standard deviation
is too big to make it useful.


Not that I was counting, but I estimate that I passed that milestone within
three years of beginning my programming career. And I'm not trying to boast
here - I've met plenty of programmers who can churn out high-quality code a
fair bit faster than I can.

Early in my career, but enough into it that I had worked at a couple
places, and I had worked parttime on getting my masters degree. I found
I still had done more lines of code for school than for work. (I had
been doing software fulltime for about 8 years.) Documentation,
reviews, system maintenance, requirements reviews, and all kinds of
other stuff reduced my programming time at work, but school
assignments were usually well defined with clear success criteria,
making the upfront preparations much shorter, and coding a larger
portion of the work.


So I really don't see where that number comes from.

Oh, wait a moment...

Okay, flip side. Feb or Mar 2000. 450 lines or so of (extremely buggy) code
that took eight people six months to write. Call it 1000 person-days.
That's 0.45 lines per day. (It took me a single day to rewrite the thing
from scratch, so that it did the job properly, a thousand times faster, and
trust me, it wasn't hard.)

Okay, maybe I do see where that number comes from. :-)

--
Richard Heathfield

I found rewriting somethings easier too, but one reason for that is we
benefit from the research gone into the first version. It recalls the
old adage:
throw away the prototype.

Too bad that isn't done more often.
Ed

.



Relevant Pages

  • Re: Is my CS instructor nuts?
    ... Nilges, Build Your Own .Net Language and Compiler, ... I don't claim that Richard Heathfield moderates the group. ... means "doesn't know at least one programming language sufficiently well to ... And "lack of culture" doesn't really ...
    (comp.programming)
  • Re: Catching a bite
    ... programming is really all I'm good at, professionally speaking, ... I chose my new career by sitting down and starting from the following ... The wonderful thing about spending zero hours a week on earning income ... Sun Microsystems System Administration Guide ...
    (alt.sysadmin.recovery)
  • Re: When shorts are longer than longs !
    ... Richard Heathfield wrote: ... Portable Programming while leaving enough blunderous shit in your ... Both C90 and C99 implementations are supported. ... how to place your translator into conforming mode. ...
    (comp.lang.c)
  • Re: 3D programmers Salary
    ... programming career yields the highest pay. ... graphics programming salaries is found in the International Game Developers ... Community Manager, Windows Graphics and Gaming ...
    (microsoft.public.win32.programmer.directx.graphics)
  • Re: Algorithm Question
    ... Richard Heathfield wrote: ... especially people who overrated their programming ... Your notion of programming skill and professionalism is so obviously ... for the OP was exploring a way to use a formalism to find the string. ...
    (comp.programming)