The Jargon File, Version 4.2.2, 20 Aug 2000

Chapter 34

Chapter 343,838 wordsPublic domain

1. [Unix] Ken Thompson, principal inventor of Unix. In the early days he used to hand-cut distribution tapes, often with a note that read "Love, ken". Old-timers still use his first name (sometimes uncapitalized, because it's a login name and mail address) in third-person reference; it is widely understood (on Usenet, in particular) that without a last name `Ken' refers only to Ken Thompson. Similarly, Dennis without last name means Dennis Ritchie (and he is often known as _dmr_). See also demigod, Unix. 2. A flaming user. This was originated by the Software Support group at Symbolics because the two greatest flamers in the user community were both named Ken.

Node:kernel-of-the-week club, Next:kgbvax, Previous:ken, Up:= K =

kernel-of-the-week club

The fictional society that BSD bigots claim [Linux] users belong to, alluding to the release-early-release-often style preferred by the kernel maintainers. See bazaar. This was almost certainly inspired by the earlier bug-of-the-month club.

Node:kgbvax, Next:KIBO, Previous:kernel-of-the-week club, Up:= K =

kgbvax /K-G-B'vaks/ n.

See kremvax.

Node:KIBO, Next:kiboze, Previous:kgbvax, Up:= K =

KIBO /ki:'boh/

1. [acronym] Knowledge In, Bullshit Out. A summary of what happens whenever valid data is passed through an organization (or person) that deliberately or accidentally disregards or ignores its significance. Consider, for example, what an advertising campaign can do with a product's actual specifications. Compare GIGO; see also SNAFU principle. 2. James Parry <[email protected]>, a Usenetter infamous for various surrealist net.pranks and an uncanny, machine-assisted knack for joining any thread in which his nom de guerre is mentioned. He has a website at http://www.kibo.com/.

Node:kiboze, Next:kibozo, Previous:KIBO, Up:= K =

kiboze v.

[Usenet] To grep the Usenet news for a string, especially with the intention of posting a follow-up. This activity was popularised by Kibo (see KIBO, sense 2).

Node:kibozo, Next:kick, Previous:kiboze, Up:= K =

kibozo /ki:-boh'zoh/ n.

[Usenet] One who kibozes but is not Kibo (see KIBO, sense 2).

Node:kick, Next:kill file, Previous:kibozo, Up:= K =

kick v.

1. [IRC] To cause somebody to be removed from a IRC channel, an option only available to channel ops. This is an extreme measure, often used to combat extreme flamage or flooding, but sometimes used at the CHOP's whim. Compare gun. 2. To reboot a machine or kill a running process. "The server's down, let me go kick it."

Node:kill file, Next:killer app, Previous:kick, Up:= K =

kill file n.

[Usenet; very common] (alt. `KILL file') Per-user file(s) used by some Usenet reading programs (originally Larry Wall's rn(1)) to discard summarily (without presenting for reading) articles matching some particularly uninteresting (or unwanted) patterns of subject, author, or other header lines. Thus to add a person (or subject) to one's kill file is to arrange for that person to be ignored by one's newsreader in future. By extension, it may be used for a decision to ignore the person or subject in other media. See also plonk.

Node:killer app, Next:killer micro, Previous:kill file, Up:= K =

killer app

The application that actually makes a sustaining market for a promising but under-utilized technology. First used in the mid-1980s to describe Lotus 1-2-3 once it became evident that demand for that product had been the major driver of the early business market for IBM PCs. The term was then restrospectively applied to VisiCalc, which had played a similar role in the success of the Apple II. After 1994 it became commonplace to describe the World Wide Web as the Internet's killer app. One of the standard questions asked about each new personal-computer technology as it emerges has become "what's the killer app?"

Node:killer micro, Next:killer poke, Previous:killer app, Up:= K =

killer micro n.

[popularized by Eugene Brooks] A microprocessor-based machine that infringes on mini, mainframe, or supercomputer performance turf. Often heard in "No one will survive the attack of the killer micros!", the battle cry of the downsizers. Used esp. of RISC architectures.

The popularity of the phrase `attack of the killer micros' is doubtless reinforced by the title of the movie "Attack Of The Killer Tomatoes" (one of the canonical examples of so-bad-it's-wonderful among hackers). This has even more flavor now that killer micros have gone on the offensive not just individually (in workstations) but in hordes (within massively parallel computers).

[1996 update: Eugene Brooks was right. Since this term first entered the Jargon File in 1990, the minicomputer has effectively vanished, the mainframe sector is in deep and apparently terminal decline (with IBM but a shadow of its former self), and even the supercomputer business has contracted into a smaller niche. It's networked killer micros as far as the eye can see. --ESR]

Node:killer poke, Next:kilo-, Previous:killer micro, Up:= K =

killer poke n.

A recipe for inducing hardware damage on a machine via insertion of invalid values (see poke) into a memory-mapped control register; used esp. of various fairly well-known tricks on bitty boxes without hardware memory management (such as the IBM PC and Commodore PET) that can overload and trash analog electronics in the monitor. See also HCF.

Node:kilo-, Next:KIPS, Previous:killer poke, Up:= K =

kilo- pref.

[SI] See quantifiers.

Node:KIPS, Next:KISS Principle, Previous:kilo-, Up:= K =

KIPS /kips/ n.

[abbreviation, by analogy with MIPS using K] Thousands (not 1024s) of Instructions Per Second. Usage: rare.

Node:KISS Principle, Next:kit, Previous:KIPS, Up:= K =

KISS Principle /kis' prin'si-pl/ n.

"Keep It Simple, Stupid". A maxim often invoked when discussing design to fend off creeping featurism and control development complexity. Possibly related to the marketroid maxim on sales presentations, "Keep It Short and Simple".

Node:kit, Next:klone, Previous:KISS Principle, Up:= K =

kit n.

[Usenet; poss. fr. DEC slang for a full software distribution, as opposed to a patch or upgrade] A source software distribution that has been packaged in such a way that it can (theoretically) be unpacked and installed according to a series of steps using only standard Unix tools, and entirely documented by some reasonable chain of references from the top-level README file. The more general term distribution may imply that special tools or more stringent conditions on the host environment are required.

Node:klone, Next:kludge, Previous:kit, Up:= K =

klone /klohn/ n.

See clone, sense 4.

Node:kludge, Next:kluge, Previous:klone, Up:= K =

kludge 1. /klooj/ n.

Incorrect (though regrettably common) spelling of kluge (US). These two words have been confused in American usage since the early 1960s, and widely confounded in Great Britain since the end of World War II. 2. [TMRC] A crock that works. (A long-ago "Datamation" article by Jackson Granholme similarly said: "An ill-assorted collection of poorly matching parts, forming a distressing whole.") 3. v. To use a kludge to get around a problem. "I've kludged around it for now, but I'll fix it up properly later."

This word appears to have derived from Scots `kludge' or `kludgie' for a common toilet, via British military slang. It apparently became confused with U.S. kluge during or after World War II; some Britons from that era use both words in definably different ways, but kluge is now uncommon in Great Britain. `Kludge' in Commonwealth hackish differs in meaning from `kluge' in that it lacks the positive senses; a kludge is something no Commonwealth hacker wants to be associated too closely with. Also, `kludge' is more widely known in British mainstream slang than `kluge' is in the U.S.

Node:kluge, Next:kluge around, Previous:kludge, Up:= K =

kluge /klooj/

[from the German `klug', clever; poss. related to Polish `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 farts 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.

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 above; 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.

Node:kluge around, Next:kluge up, Previous:kluge, Up:= K =

kluge around vt.

To avoid a bug or difficult condition by inserting a kluge. Compare workaround.

Node:kluge up, Next:Knights of the Lambda Calculus, Previous:kluge around, Up:= K =

kluge up vt.

To lash together a quick hack to perform a task; this is milder than cruft together and has some of the connotations of hack up (note, however, that the construction `kluge on' corresponding to hack on is never used). "I've kluged up this routine to dump the buffer contents to a safe place."

Node:Knights of the Lambda Calculus, Next:knobs, Previous:kluge up, Up:= K =

Knights of the Lambda Calculus n.

A semi-mythical organization of wizardly LISP and Scheme hackers. The name refers to a mathematical formalism invented by Alonzo Church, with which LISP is intimately connected. There is no enrollment list and the criteria for induction are unclear, but one well-known LISPer has been known to give out buttons and, in general, the members know who they are....

Node:knobs, Next:Knuth, Previous:Knights of the Lambda Calculus, Up:= K =

knobs pl.n.

Configurable options, even in software and even those you can't adjust in real time. Anything you can twiddle is a knob. "Has this PNG viewer got an alpha knob?" Software may be described as having "knobs and switches" or occasionally "knobs and lights".

Node:Knuth, Next:koan, Previous:knobs, Up:= K =

Knuth /ka-nooth'/ n.

[Donald E. Knuth's "The Art of Computer Programming"] Mythically, the reference that answers all questions about data structures or algorithms. A safe answer when you do not know: "I think you can find that in Knuth." Contrast the literature. See also bible. There is a Donald Knuth home page at http://www-cs-faculty.Stanford.EDU/~knuth.

Node:koan, Next:kremvax, Previous:Knuth, Up:= K =

koan /koh'an/ n.

A Zen teaching riddle. Classically, koans are attractive paradoxes to be meditated on; their purpose is to help one to enlightenment by temporarily jamming normal cognitive processing so that something more interesting can happen (this practice is associated with Rinzei Zen Buddhism). Hackers are very fond of the koan form and compose their own koans for humororous and/or enlightening effect. See Some AI Koans, has the X nature, hacker humor.

Node:kremvax, Next:kyrka, Previous:koan, Up:= K =

kremvax /krem-vaks/ n.

[from the then large number of Usenet VAXen with names of the form _foovax_] Originally, a fictitious Usenet site at the Kremlin, announced on April 1, 1984 in a posting ostensibly originated there by Soviet leader Konstantin Chernenko. The posting was actually forged by Piet Beertema as an April Fool's joke. Other fictitious sites mentioned in the hoax were _moskvax_ and kgbvax. This was probably the funniest of the many April Fool's forgeries perpetrated on Usenet (which has negligible security against them), because the notion that Usenet might ever penetrate the Iron Curtain seemed so totally absurd at the time.

In fact, it was only six years later that the first genuine site in Moscow, _demos.su_, joined Usenet. Some readers needed convincing that the postings from it weren't just another prank. Vadim Antonov, senior programmer at Demos and the major poster from there up to mid-1991, was quite aware of all this, referred to it frequently in his own postings, and at one point twitted some credulous readers by blandly asserting that he was a hoax!

Eventually he even arranged to have the domain's gateway site named _kremvax_, thus neatly turning fiction into fact and demonstrating that the hackish sense of humor transcends cultural barriers. [Mr. Antonov also contributed the Russian-language material for this lexicon. --ESR]

In an even more ironic historical footnote, _kremvax_ became an electronic center of the anti-communist resistance during the bungled hard-line coup of August 1991. During those three days the Soviet UUCP network centered on _kremvax_ became the only trustworthy news source for many places within the USSR. Though the sysops were concentrating on internal communications, cross-border postings included immediate transliterations of Boris Yeltsin's decrees condemning the coup and eyewitness reports of the demonstrations in Moscow's streets. In those hours, years of speculation that totalitarianism would prove unable to maintain its grip on politically-loaded information in the age of computer networking were proved devastatingly accurate -- and the original _kremvax_ joke became a reality as Yeltsin and the new Russian revolutionaries of `glasnost' and `perestroika' made _kremvax_ one of the timeliest means of their outreach to the West.

Node:kyrka, Next:lace card, Previous:kremvax, Up:= K =

kyrka /chur'ka/ n.

[Swedish] See feature key.

Node:= L =, Next:= M =, Previous:= K =, Up:The Jargon Lexicon

= L =

lace card:

lag:

lamer:

language lawyer:

languages of choice:

LART:

larval stage:

lase:

laser chicken:

lasherism:

laundromat:

LDB:

leaf site:

leak:

leaky heap:

leapfrog attack:

leech:

leech mode:

legal:

legalese:

LER:

LERP:

let the smoke out:

letterbomb:

lexer:

lexiphage:

life:

Life is hard:

light pipe:

lightweight:

like kicking dead whales down the beach:

like nailing jelly to a tree:

line 666:

line eater the:

line noise:

line starve:

linearithmic:

link farm:

link rot:

link-dead:

lint:

Lintel:

Linus:

Linux:

lion food:

Lions Book:

LISP:

list-bomb:

lithium lick:

little-endian:

live:

live data:

Live Free Or Die!:

livelock:

liveware:

lobotomy:

locals the:

locked and loaded:

locked up:

logic bomb:

logical:

loop through:

loose bytes:

lord high fixer:

lose:

lose lose:

loser:

losing:

loss:

lossage:

lost in the noise:

lost in the underflow:

lots of MIPS but no I/O:

low-bandwidth:

LPT:

Lubarsky's Law of Cybernetic Entomology:

Lumber Cartel:

lunatic fringe:

lurker:

luser:

Node:lace card, Next:lag, Previous:kyrka, Up:= L =

lace card n. obs.

A punched card with all holes punched (also called a `whoopee card' or `ventilator card'). Card readers tended to jam when they got to one of these, as the resulting card had too little structural strength to avoid buckling inside the mechanism. Card punches could also jam trying to produce these things owing to power-supply problems. When some practical joker fed a lace card through the reader, you needed to clear the jam with a `card knife' -- which you used on the joker first.

Node:lag, Next:lamer, Previous:lace card, Up:= L =

lag n.

[MUD, IRC; very common] When used without qualification this is synomous with netlag. Curiously, people will often complain "I'm really lagged" when in fact it is their server or network connection that is lagging.

Node:lamer, Next:language lawyer, Previous:lag, Up:= L =

lamer n.

[prob. originated in skateboarder slang] 1. Synonym for luser, not used much by hackers but common among warez d00dz, crackers, and phreakers. A person who downloads much, but who never uploads. (Also known as `leecher'). Oppose elite. Has the same connotations of self-conscious elitism that use of luser does among hackers. 2. Someone who tries to crack a BBS. 3. Someone who annoys the sysop or other BBS users - for instance, by posting lots of silly messages, uploading virus-ridden software, frequently dropping carrier, etc.

Crackers also use it to refer to cracker wannabees. In phreak culture, a lamer is one who scams codes off others rather than doing cracks or really understanding the fundamental concepts. In warez d00dz culture, where the ability to wave around cracked commercial software within days of (or before) release to the commercial market is much esteemed, the lamer might try to upload garbage or shareware or something incredibly old (old in this context is read as a few years to anything older than 3 days).

`Lamer' is also much used in the IRC world in a similar sense to the above.

Node:language lawyer, Next:languages of choice, Previous:lamer, Up:= L =

language lawyer n.

A person, usually an experienced or senior software engineer, who is intimately familiar with many or most of the numerous restrictions and features (both useful and esoteric) applicable to one or more computer programming languages. A language lawyer is distinguished by the ability to show you the five sentences scattered through a 200-plus-page manual that together imply the answer to your question "if only you had thought to look there". Compare wizard, legal, legalese.

Node:languages of choice, Next:LART, Previous:language lawyer, Up:= L =

languages of choice n.

C, C++, LISP, and Perl. Nearly every hacker knows one of C or LISP, and most good ones are fluent in both. C++, despite some serious drawbacks, is generally preferred to other object-oriented languages (though in 1999 it looks as though Java has displaced it in the affections of hackers, if not everywhere). Since around 1990 Perl has rapidly been gaining favor, especially as a tool for systems-administration utilities and rapid prototyping. Python, Smalltalk and Prolog are also popular in small but influential communities.

There is also a rapidly dwindling category of older hackers with FORTRAN, or even assembler, as their language of choice. They often prefer to be known as Real Programmers, and other hackers consider them a bit odd (see "The Story of Mel" in Appendix A). Assembler is generally no longer considered interesting or appropriate for anything but HLL implementation, glue, and a few time-critical and hardware-specific uses in systems programs. FORTRAN occupies a shrinking niche in scientific programming.

Most hackers tend to frown on languages like Pascal and Ada, which don't give them the near-total freedom considered necessary for hacking (see bondage-and-discipline language), and to regard everything even remotely connected with COBOL or other traditional card walloper languages as a total and unmitigated loss.

Node:LART, Next:larval stage, Previous:languages of choice, Up:= L =

LART //

Luser Attitude Readjustment Tool. 1. n. In the collective mythos of scary devil monastery, this is an essential item in the toolkit of every BOFH. The LART classic is a 2x4 or other large billet of wood usable as a club, to be applied upside the head of spammers and other people who cause sysadmins more grief than just naturally goes with the job. Perennial debates rage on _alt.sysadmin.recovery_ over what constitutes the truly effective LART; knobkerries, semiautomatic weapons, flamethrowers, and tactical nukes all have their partisans. Compare clue-by-four. 2. v. To use a LART. Some would add "in malice", but some sysadmins do prefer to gently lart their users as a first (and sometimes final) warning. 3. interj. Calling for one's LART, much as a surgeon might call "Scalpel!". 4. interj. [rare] Used in flames as a rebuke. "LART! LART! LART!"

Node:larval stage, Next:lase, Previous:LART, Up:= L =

larval stage n.

Describes a period of monomaniacal concentration on coding apparently passed through by all fledgling hackers. Common symptoms include the perpetration of more than one 36-hour hacking run in a given week; neglect of all other activities including usual basics like food, sleep, and personal hygiene; and a chronic case of advanced bleary-eye. Can last from 6 months to 2 years, the apparent median being around 18 months. A few so afflicted never resume a more `normal' life, but the ordeal seems to be necessary to produce really wizardly (as opposed to merely competent) programmers. See also wannabee. A less protracted and intense version of larval stage (typically lasting about a month) may recur when one is learning a new OS or programming language.

Node:lase, Next:laser chicken, Previous:larval stage, Up:= L =

lase /layz/ vt.