kluge

( /klooj/)

   [from  the  German  `klug', clever; poss. related to Polish & Russian
   `klucz' (a key, a hint, a main point)]

   1. n. A Rube Goldberg (or Heath Robinson) device, whether in hardware
   or software.

   2. n. A clever programming trick intended to solve a particular nasty
   case  in  an  expedient,  if  not clear, manner. Often used to repair
   bugs. Often involves {ad-hockery} and verges on being a {crock}.

   3. n. Something that works for the wrong reason.

   4. vt. To insert a kluge into a program. "I've kluged this routine to
   get around that weird bug, but there's probably a better way."

   5. [WPI] n. A feature that is implemented in a {rude} manner.

   Nowadays  this  term  is  often  encountered  in the variant spelling
   `kludge'.  Reports  from  {old fart}s are consistent that `kluge' was
   the  original  spelling, reported around computers as far back as the
   mid-1950s  and, at that time, used exclusively of hardware kluges. In
   1947,  the  New York Folklore Quarterly reported a classic shaggy-dog
   story  `Murgatroyd the Kluge Maker' then current in the Armed Forces,
   in which a `kluge' was a complex and puzzling artifact with a trivial
   function.  Other sources report that `kluge' was common Navy slang in
   the  WWII  era for any piece of electronics that worked well on shore
   but consistently failed at sea.

   However,  there  is  reason to believe this slang use may be a decade
   older.  Several  respondents have connected it to the brand name of a
   device  called  a  "Kluge  paper  feeder",  an  adjunct to mechanical
   printing  presses.  Legend  has it that the Kluge feeder was designed
   before  small,  cheap  electric  motors  and  control electronics; it
   relied  on  a  fiendishly  complex  assortment  of  cams,  belts, and
   linkages  to  both  power and synchronize all its operations from one
   motive  driveshaft.  It  was  accordingly  temperamental,  subject to
   frequent breakdowns, and devilishly difficult to repair -- but oh, so
   clever!  People  who  tell  this story also aver that `Kluge' was the
   name of a design engineer.

   There  is  in  fact  a Brandtjen & Kluge Inc., an old family business
   that  manufactures printing equipment -- interestingly, their name is
   pronounced  /kloo´gee/!  Henry Brandtjen, president of the firm, told
   me  (ESR,  1994) that his company was co-founded by his father and an
   engineer  named  Kluge  /kloo´gee/,  who  built  and  co-designed the
   original  Kluge  automatic  feeder  in  1919.  Mr.  Brandtjen claims,
   however, that this was a simple device (with only four cams); he says
   he  has  no  idea  how  the  myth  of its complexity took hold. Other
   correspondents  differ with Mr. Brandtjen's history of the device and
   his  allegation  that  it  was  a simple rather than complex one, but
   agree  that  the Kluge automatic feeder was the most likely source of
   the folklore.

   {TMRC}  and  the  MIT  hacker culture of the early '60s seems to have
   developed  in  a  milieu  that  remembered  and  still used some WWII
   military slang (see also {foobar}). It seems likely that `kluge' came
   to  MIT via alumni of the many military electronics projects that had
   been  located  in  Cambridge (many in MIT's venerable Building 20, in
   which {TMRC} is also located) during the war.

   The  variant  `kludge' was apparently popularized by the {Datamation}
   article  mentioned  under  {kludge};  it  was  titled How to Design a
   Kludge  (February  1962,  pp.  30,  31).  This  spelling was probably
   imported  from  Great  Britain,  where  {kludge}  has  an independent
   history  (though  this  fact was largely unknown to hackers on either
   side  of  the  Atlantic  before a mid-1993 debate in the Usenet group
   alt.folklore.computers  over the First and Second Edition versions of
   this  entry;  everybody used to think {kludge} was just a mutation of
   {kluge}).  It  now  appears  that  the  British, having forgotten the
   etymology  of  their  own `kludge' when `kluge' crossed the Atlantic,
   repaid  the  U.S.  by  lobbing  the `kludge' orthography in the other
   direction and confusing their American cousins' spelling!

   The  result  of  this  history is a tangle. Many younger U.S. hackers
   pronounce  the  word  as  /klooj/  but  spell it, incorrectly for its
   meaning and pronunciation, as `kludge'. (Phonetically, consider huge,
   refuge,  centrifuge,  and  deluge as opposed to sludge, judge, budge,
   and  fudge. Whatever its failings in other areas, English spelling is
   perfectly  consistent about this distinction.) British hackers mostly
   learned /kluhj/ orally, use it in a restricted negative sense and are
   at  least  consistent.  European hackers have mostly learned the word
   from  written  American  sources and tend to pronounce it /kluhj/ but
   use the wider American meaning!

   Some  observers  consider this mess appropriate in view of the word's
   meaning.

[glossary]
[Reference(s) to this entry by made by: {crock}{foo}{kludge}{kluge}{kluge around}{knurd}{mung}{munge}{quick-and-dirty}{Unix brain damage}{workaround}]