[WikiEN-l] History of "stub" concept?
dpbsmith at verizon.net
dpbsmith at verizon.net
Tue Sep 21 20:04:19 UTC 2004
I have some guesses about the evolution of the "stub" concept on Wikipedia
and am seeking information from oldtimers as to whether my guesses are right.
I first encountered the word "stub" in a technical context. About the time I
started hearing about "top-down programming," which would have been, um, the
1980s, I also started hearing about "stubs."
When you are following the top-down methodology, you often encounter a
situation where subroutine A calls (and hence depends on) subroutine B. Yet
you want to write and test A before B is written.
For example, subroutine A might call subroutine B to find out whether a
device is ready before trying to output to it. Subroutine B is
absolutely vital to the finished program, but for purposes of writing and
testing A you just write a "stub" version of B which doesn't actually talk to
the device, but just says "the device is ready."
In this context, a stub is a piece of temporary scaffolding that is put in
place solely to allow work to proceed, which is not a part of the finished
product, and which must be removed and replaced with the real subroutine
before the product is released.
I fantasize that it is a couple of years ago, and that there are enormous
numbers of articles that anyone can see need to be written, and that I have
decided to write about (say) echinoderms. As I start to write, say, an
article on "Echinodermata," I realize that I will eventually want to write
and link to Asteroidea, Echinoidea, etc. So I create stubs for these, with
two things in mind. First, I have at least some intention of going back and
actually writing those articles. Second, I know that there are other people
who know as much or more than I do about echinoderms, and may prefer to write
the article on Asteroidea myself rather than waiting for me to do it.
So the stub serves _three_ purposes: a reminder to everyone that there's an
article that needs to be written, an implied statement that I sort of plan to
write that article when I get around to it, and an implied invitation to
others that if they feel like working on this _before_ I can get around to
it, they should just jump in.
I notice that "The Perfect Stub" clearly presents stubs in the context of an
intention by the creator of the stub to continue personally working on
expanding the stub. It seems to suggest that the expected timeframe for
this expansion is a few weeks; that is, it should reasonably expected that
the stub contributor will keep nibbling away, adding small accretions to the
stub, and that if a few weeks have elapsed and nobody else has taken on the
job of writing the article the stub creator should assume that nobody else is
going to, and they should write the article themselves.
Part and parcel of this viewpoint is that a stub is not useful in itself. As
with the programmer's stub, it is just a temporary expedient to allow work to
continue, and must be replaced with a real article before "release."
Does this imaginary view of mine correspond to an historically correct
description of the mindset with which stubs were viewed a couple of years
ago?
More information about the WikiEN-l
mailing list