[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: "static" declaration




Daniel Weinreb writes:
> >
> >_The Mythical Man-Month_ [Chapter 9]
>
> My, Brooks really did have so much figured out so long ago.  Time for
> me to re-read the book!

A contrarian view: it seems to me that we've not only found silver
bullets, we've got silver battlefield nuclear artillery. In MMM,
Brooks dismisses the idea of someone producing 30,000 lines of
assembly code in a year as naive optimism.

As an experiment, I told the compiler to save all the assembly files
for my latest project so I could count the number of lines in them.
My code compiles to about -- 30,000 lines of assembly. And this is
something I've worked seriously on for about two months, on a problem
domain I understand poorly enough that half my time is spent learning
the theory well enough to try implementing it!

I don't think we've seen a failure to improve the quality of our
software. Instead, I think that as the tools people have have gotten
better, the size and complexity of the programs we write has increased
to match. Eg, in MMM, Brooks, in his discussion of the second system
effect, notes the fact that OS/360 used 29 bytes of core to keep track
of the existence of 366-day leap years, and condemned it as
unwarranted bloat. The failure to do so would be logged as a bug in
any system I've used or programmed.

I guess I'm suggesting that there's a maximum bug level that people
can tolerate, and as tool improvements cut the bug rate per machine
instruction, the typical program size immediately grows to match.

-- 
Neel Krishnaswami
neelk@alum.mit.edu