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

Re: [Fun With Perl] Idiom misuse (typos can getcha)



On Fri, Jun 11, 1999 at 04:52:53AM -0700, Randal L. Schwartz wrote:
> >>>>> "Ronald" == Ronald J Kimball <rjk@linguist.dartmouth.edu> writes:
> Ronald> That looked a lot like what he wanted to do, so he copied the
> Ronald> code, and added in the bits he needed for what he was doing.
> 
> Ronald> Unfortunately, not being familiar with the unlink() function,
> Ronald> he left that part of the code intact.
> 
> Why do people do this?  I see it in my class all day.  Why do people
> *ever* put a statement in a program that they don't understand!?
> 
> I don't get it.  I mean, I sometimes put stuff in for which I have the
> wrong mental model, and then I have to remove the induced bug.  But I
> *never* add something because someone else happpened to type it into a
> different program.


>From Jargon File (4.0.0/24 July 1996) [jargon]:

  cargo cult programming /n./  A style of (incompetent)
     programming dominated by ritual inclusion of code or program
     structures that serve no real purpose.  A cargo cult programmer
     will usually explain the extra code as a way of working around some
     bug encountered in the past, but usually neither the bug nor the
     reason the code apparently avoided the bug was ever fully
     understood (compare {shotgun debugging}, {voodoo
     programming}).
  
     The term `cargo cult' is a reference to aboriginal religions that
     grew up in the South Pacific after World War II.  The practices of
     these cults center on building elaborate mockups of airplanes and
     military style landing strips in the hope of bringing the return of
     the god-like airplanes that brought such marvelous cargo during the
     war.  Hackish usage probably derives from Richard Feynman's
     characterization of certain practices as "cargo cult science" in
     his book "Surely You're Joking, Mr. Feynman!" (W. W. Norton
     & Co, New York 1985, ISBN 0-393-01921-7).

  voodoo programming /n./  [from George Bush's "voodoo
     economics"] The use by guess or cookbook of an {obscure} or
     {hairy} system, feature, or algorithm that one does not truly
     understand.  The implication is that the technique may not work,
     and if it doesn't, one will never know why.  Almost synonymous with
     {black magic}, except that black magic typically isn't
     documented and *nobody* understands it.  Compare {magic},
     {deep magic}, {heavy wizardry}, {rain dance}, {cargo
     cult programming}, {wave a dead chicken}.


-- 

Michael G Schwern                                           schwern@pobox.com
                    http://www.pobox.com/~schwern
     /(?:(?:(1)[.-]?)?\(?(\d{3})\)?[.-]?)?(\d{3})[.-]?(\d{4})(x\d+)?/i

==== Want to unsubscribe from this list? (Don't you love us anymore?)
==== Well, if you insist... Send mail with body "unsubscribe" to
==== fwp-request@technofile.org