← Table of contents
The Jargon File, Version 4.0.0, 24 Jul 1996

#======= THIS IS THE JARGON FILE, VERSION 4.0.0, 24 JUL 1996 =======# (continued 7)

Reading edition

When DEC cancelled the Jupiter project in 1983, Systems Concepts should have made a bundle selling their machine into shops with a lot of software investment in PDP-10s, and in fact their spring 1984 announcement generated a great deal of excitement in the PDP-10 world. TOPS-10 was running on the Mars by the summer of 1984, and TOPS-20 by early fall. Unfortunately, the hackers running Systems Concepts were much better at designing machines than at mass producing or selling them; the company allowed itself to be sidetracked by a bout of perfectionism into continually improving the design, and lost credibility as delivery dates continued to slip. They also overpriced the product ridiculously; they believed they were competing with the KL10 and VAX 8600 and failed to reckon with the likes of Sun Microsystems and other hungry startups building workstations with power comparable to the KL10 at a fraction of the price. By the time SC shipped the first SC-30M to Stanford in late 1985, most customers had already made the traumatic decision to abandon the PDP-10, usually for VMS or Unix boxes. Most of the Mars computers built ended up being purchased by CompuServe.

This tale and the related saga of {Foonly} hold a lesson for hackers: if you want to play in the {Real World}, you need to learn Real World moves.

:martian: /n./ A packet sent on a TCP/IP network with a source address of the test loopback interface [127.0.0.1]. This means that it will come back labeled with a source address that is clearly not of this earth. "The domain server is getting lots of packets from Mars. Does that gateway have a martian filter?"

:massage: /vt./ Vague term used to describe `smooth' transformations of a data set into a different form, esp. transformations that do not lose information. Connotes less pain than {munch} or {crunch}. "He wrote a program that massages X bitmap files into GIF format." Compare {slurp}.

:math-out: /n./ [poss. from `white-out' (the blizzard variety)] A paper or presentation so encrusted with mathematical or other formal notation as to be incomprehensible. This may be a device for concealing the fact that it is actually {content-free}. See also {numbers}, {social science number}.

:Matrix: /n./ [FidoNet] 1. What the Opus BBS software and sysops call {FidoNet}. 2. Fanciful term for a {cyberspace} expected to emerge from current networking experiments (see {network, the}). 3. The totality of present-day computer networks.

:maximum Maytag mode: /n./ What a {washing machine} or, by extension, any hard disk is in when it's being used so heavily that it's shaking like an old Maytag with an unbalanced load. If prolonged for any length of time, can lead to disks becoming {walking drives}.

:Mbogo, Dr. Fred: /*m-boh'goh, dok'tr fred/ /n./ [Stanford] The archetypal man you don't want to see about a problem, esp. an incompetent professional; a shyster. "Do you know a good eye doctor?" "Sure, try Mbogo Eye Care and Professional Dry Cleaning." The name comes from synergy between {bogus} and the original Dr. Mbogo, a witch doctor who was Gomez Addams' physician on the old "Addams Family" TV show. Compare {Bloggs Family, the}, see also {fred}.

:meatware: /n./ Synonym for {wetware}. Less common.

:meeces: /mees'*z/ /n./ [TMRC] Occasional furry visitors who are not {urchin}s. [That is, mice. This may no longer be in live use; it clearly derives from the refrain of the early-1960s cartoon character Mr. Jinx: "I hate meeces to *pieces*!" —- ESR]

:meg: /meg/ /n./ See {{quantifiers}}.

:mega-: /me'g*/ /pref./ [SI] See {{quantifiers}}.

:megapenny: /meg'*-pen`ee/ /n./ $10,000 (1 cent * 10^6). Used semi-humorously as a unit in comparing computer cost and performance figures.

:MEGO: /me'goh/ or /mee'goh/ [`My Eyes Glaze Over', often `Mine Eyes Glazeth (sic) Over', attributed to the futurologist Herman Kahn] Also `MEGO factor'. 1. /n./ A {handwave} intended to confuse the listener and hopefully induce agreement because the listener does not want to admit to not understanding what is going on. MEGO is usually directed at senior management by engineers and contains a high proportion of {TLA}s. 2. excl. An appropriate response to MEGO tactics. 3. Among non-hackers, often refers not to behavior that causes the eyes to glaze, but to the eye-glazing reaction itself, which may be triggered by the mere threat of technical detail as effectively as by an actual excess of it.

:meltdown, network: /n./ See {network meltdown}.

:meme: /meem/ /n./ [coined by analogy with `gene', by Richard Dawkins] An idea considered as a {replicator}, esp. with the connotation that memes parasitize people into propagating them much as viruses do. Used esp. in the phrase `meme complex' denoting a group of mutually supporting memes that form an organized belief system, such as a religion. This lexicon is an (epidemiological) vector of the `hacker subculture' meme complex; each entry might be considered a meme. However, `meme' is often misused to mean `meme complex'. Use of the term connotes acceptance of the idea that in humans (and presumably other tool- and language-using sophonts) cultural evolution by selection of adaptive ideas has superseded biological evolution by selection of hereditary traits. Hackers find this idea congenial for tolerably obvious reasons.

:meme plague: /n./ The spread of a successful but pernicious {meme}, esp. one that parasitizes the victims into giving their all to propagate it. Astrology, BASIC, and the other guy's religion are often considered to be examples. This usage is given point by the historical fact that `joiner' ideologies like Naziism or various forms of millennarian Christianity have exhibited plague-like cycles of exponential growth followed by collapses to small reservoir populations.

:memetics: /me-met'iks/ /n./ [from {meme}] The study of memes. As of early 1996, this is still an extremely informal and speculative endeavor, though the first steps towards at least statistical rigor have been made by H. Keith Henson and others. Memetics is a popular topic for speculation among hackers, who like to see themselves as the architects of the new information ecologies in which memes live and replicate.

:memory farts: /n./ The flatulent sounds that some DOS box BIOSes (most notably AMI's) make when checking memory on bootup.

:memory leak: /n./ An error in a program's dynamic-store allocation logic that causes it to fail to reclaim discarded memory, leading to eventual collapse due to memory exhaustion. Also (esp. at CMU) called {core leak}. These problems were severe on older machines with small, fixed-size address spaces, and special "leak detection" tools were commonly written to root them out. With the advent of virtual memory, it is unfortunately easier to be sloppy about wasting a bit of memory (although when you run out of memory on a VM machine, it means you've got a *real* leak!). See {aliasing bug}, {fandango on core}, {smash the stack}, {precedence lossage}, {overrun screw}, {leaky heap}, {leak}.

:memory smash: /n./ [XEROX PARC] Writing through a pointer that doesn't point to what you think it does. This occasionally reduces your machine to a rubble of bits. Note that this is subtly different from (and more general than) related terms such as a {memory leak} or {fandango on core} because it doesn't imply an allocation error or overrun condition.

:menuitis: /men`yoo-i:'tis/ /n./ Notional disease suffered by software with an obsessively simple-minded menu interface and no escape. Hackers find this intensely irritating and much prefer the flexibility of command-line or language-style interfaces, especially those customizable via macros or a special-purpose language in which one can encode useful hacks. See {user-obsequious}, {drool-proof paper}, {WIMP environment}, {for the rest of us}.

:mess-dos: /mes-dos/ /n./ Derisory term for MS-DOS. Often followed by the ritual banishing "Just say No!" See {{MS-DOS}}. Most hackers (even many MS-DOS hackers) loathe MS-DOS for its single-tasking nature, its limits on application size, its nasty primitive interface, and its ties to IBMness (see {fear and loathing}). Also `mess-loss', `messy-dos', `mess-dog', `mess-dross', `mush-dos', and various combinations thereof. In Ireland and the U.K. it is even sometimes called `Domestos' after a brand of toilet cleanser.

:meta: /me't*/ or /may't*/ or (Commonwealth) /mee't*/ adj.,/pref./ [from analytic philosophy] One level of description up. A metasyntactic variable is a variable in notation used to describe syntax, and meta-language is language used to describe language. This is difficult to explain briefly, but much hacker humor turns on deliberate confusion between meta-levels. See {{hacker humor}}.

:meta bit: /n./ The top bit of an 8-bit character, which is on in character values 128—255. Also called {high bit}, {alt bit}, or {hobbit}. Some terminals and consoles (see {space-cadet keyboard}) have a META shift key. Others (including, *mirabile dictu*, keyboards on IBM PC-class machines) have an ALT key. See also {bucky bits}.

Historical note: although in modern usage shaped by a universe of 8-bit bytes the meta bit is invariably hex 80 (octal 0200), things were different on earlier machines with 36-bit words and 9-bit bytes. The MIT and Stanford keyboards (see {space-cadet keyboard}) generated hex 100 (octal 400) from their meta keys.

:metasyntactic variable: /n./ A name used in examples and understood to stand for whatever thing is under discussion, or any random member of a class of things under discussion. The word {foo} is the {canonical} example. To avoid confusion, hackers never (well, hardly ever) use `foo' or other words like it as permanent names for anything. In filenames, a common convention is that any filename beginning with a metasyntactic-variable name is a {scratch} file that may be deleted at any time.

To some extent, the list of one's preferred metasyntactic variables is a cultural signature. They occur both in series (used for related groups of variables or objects) and as singletons. Here are a few common signatures:

{foo}, {bar}, {baz}, {quux}, quuux, quuuux…: MIT/Stanford usage, now found everywhere (thanks largely to early versions of this lexicon!). At MIT (but not at Stanford), {baz} dropped out of use for a while in the 1970s and '80s. A common recent mutation of this sequence inserts {qux} before {quux}. bazola, ztesch: Stanford (from mid-'70s on). {foo}, {bar}, thud, grunt: This series was popular at CMU. Other CMU-associated variables include {gorp}. {foo}, {bar}, fum: This series is reported to be common at XEROX PARC. {fred}, {barney}: See the entry for {fred}. These tend to be Britishisms. {corge}, {grault}, {flarp}: Popular at Rutgers University and among {GOSMACS} hackers. zxc, spqr, wombat: Cambridge University (England). shme Berkeley, GeoWorks, Ingres. Pronounced /shme/ with a short /e/. snork Brown University, early 1970s. {foo}, {bar}, zot Helsinki University of Technology, Finland. blarg, wibble New Zealand. toto, titi, tata, tutu France. pippo, pluto, paperino Italy. Pippo /pee'po/ and Paperino /pa-per-ee'-no/ are the Italian names for Goofy and Donald Duck. aap, noot, mies The Netherlands. These are the first words a child used to learn to spell on a Dutch spelling board.

Of all these, only `foo' and `bar' are universal (and {baz} nearly so). The compounds {foobar} and `foobaz' also enjoy very wide currency.

Some jargon terms are also used as metasyntactic names; {barf} and {mumble}, for example. See also {{Commonwealth Hackish}} for discussion of numerous metasyntactic variables found in Great Britain and the Commonwealth.

:MFTL: /M-F-T-L/ [abbreviation: `My Favorite Toy Language'] 1. /adj./ Describes a talk on a programming language design that is heavy on the syntax (with lots of BNF), sometimes even talks about semantics (e.g., type systems), but rarely, if ever, has any content (see {content-free}). More broadly applied to talks —- even when the topic is not a programming language — in which the subject matter is gone into in unnecessary and meticulous detail at the sacrifice of any conceptual content. "Well, it was a typical MFTL talk". 2. /n./ Describes a language about which the developers are passionate (often to the point of proselytic zeal) but no one else cares about. Applied to the language by those outside the originating group. "He cornered me about type resolution in his MFTL."

The first great goal in the mind of the designer of an MFTL is usually to write a compiler for it, then bootstrap the design away from contamination by lesser languages by writing a compiler for it in itself. Thus, the standard put-down question at an MFTL talk is "Has it been used for anything besides its own compiler?" On the other hand, a language that cannot even be used to write its own compiler is beneath contempt. See {break-even point}.

(On a related note, Doug McIlroy once proposed a test of the generality and utility of a language and the operating system under which it is compiled: "Is the output of a FORTRAN program acceptable as input to the FORTRAN compiler?" In other words, can you write programs that write programs? (See {toolsmith}.) Alarming numbers of (language, OS) pairs fail this test, particularly when the language is FORTRAN; aficionados are quick to point out that {Unix} (even using FORTRAN) passes it handily. That the test could ever be failed is only surprising to those who have had the good fortune to have worked only under modern systems which lack OS-supported and -imposed "file types".)

:mickey: /n./ The resolution unit of mouse movement. It has been suggested that the `disney' will become a benchmark unit for animation graphics performance.

:mickey mouse program: /n./ North American equivalent of a {noddy} (that is, trivial) program. Doesn't necessarily have the belittling connotations of mainstream slang "Oh, that's just mickey mouse stuff!"; sometimes trivial programs can be very useful.

:micro-: /pref./ 1. Very small; this is the root of its use as a quantifier prefix. 2. A quantifier prefix, calling for multiplication by 10^(-6) (see {{quantifiers}}). Neither of these uses is peculiar to hackers, but hackers tend to fling them both around rather more freely than is countenanced in standard English. It is recorded, for example, that one CS professor used to characterize the standard length of his lectures as a microcentury — that is, about 52.6 minutes (see also {attoparsec}, {nanoacre}, and especially {microfortnight}). 3. Personal or human-scale — that is, capable of being maintained or comprehended or manipulated by one human being. This sense is generalized from `microcomputer', and is esp. used in contrast with `macro-' (the corresponding Greek prefix meaning `large'). 4. Local as opposed to global (or {macro-}). Thus a hacker might say that buying a smaller car to reduce pollution only solves a microproblem; the macroproblem of getting to work might be better solved by using mass transit, moving to within walking distance, or (best of all) telecommuting.

:MicroDroid: /n./ [Usenet] A Microsoft employee, esp. one who posts to various operating-system advocacy newsgroups. MicroDroids post follow-ups to any messages critical of Microsoft's operating systems, and often end up sounding like visiting Mormon missionaries.

:microfloppies: /n./ 3.5-inch floppies, as opposed to 5.25-inch {vanilla} or mini-floppies and the now-obsolete 8-inch variety. This term may be headed for obsolescence as 5.25-inchers pass out of use, only to be revived if anybody floats a sub-3-inch floppy standard. See {stiffy}, {minifloppies}.

:microfortnight: /n./ 1/1000000 of the fundamental unit of time in the Furlong/Firkin/Fortnight system of measurement; 1.2096 sec. (A furlong is 1/8th of a mile; a firkin is 1/4th of a barrel; the mass unit of the system is taken to be a firkin of water). The VMS operating system has a lot of tuning parameters that you can set with the SYSGEN utility, and one of these is TIMEPROMPTWAIT, the time the system will wait for an operator to set the correct date and time at boot if it realizes that the current value is bogus. This time is specified in microfortnights!

Multiple uses of the millifortnight (about 20 minutes) and {nanofortnight} have also been reported.

:microLenat: /mi:`-kroh-len'-*t/ /n./ The unit of {bogosity}, written uL; the consensus is that this is the largest unit practical for everyday use. The microLenat, originally invented by David Jefferson, was promulgated as an attack against noted computer scientist Doug Lenat by a {tenured graduate student} at CMU. Doug had failed the student on an important exam for giving only "AI is bogus" as his answer to the questions. The slur is generally considered unmerited, but it has become a running gag nevertheless. Some of Doug's friends argue that *of course* a microLenat is bogus, since it is only one millionth of a Lenat. Others have suggested that the unit should be redesignated after the grad student, as the microReid.

:microReid: /mi:'kroh-reed/ /n./ See {microLenat}.

:Microsloth Windows: /mi:'kroh-sloth` win'dohz/ /n./ Hackerism for `Microsoft Windows', a windowing system for the IBM-PC which is so limited by bug-for-bug compatibility with {mess-dos} that it is agonizingly slow on anything less than a fast 486. Also just called `Windoze', with the implication that you can fall asleep waiting for it to do anything; the latter term is extremely common on Usenet. See {Black Screen of Death}; compare {X}, {sun-stools}.

:microtape: /mi:'kroh-tayp/ /n./ Occasionally used to mean a DECtape, as opposed to a {macrotape}. A DECtape is a small reel, about 4 inches in diameter, of magnetic tape about an inch wide. Unlike those for today's {macrotape}s, microtape drivers allowed random access to the data, and therefore could be used to support file systems and even for swapping (this was generally done purely for {hack value}, as they were far too slow for practical use). In their heyday they were used in pretty much the same ways one would now use a floppy disk: as a small, portable way to save and transport files and programs. Apparently the term `microtape' was actually the official term used within DEC for these tapes until someone coined the word `DECtape', which, of course, sounded sexier to the {marketroid}s; another version of the story holds that someone discovered a conflict with another company's `microtape' trademark.

:middle-endian: /adj./ Not {big-endian} or {little-endian}. Used of perverse byte orders such as 3-4-1-2 or 2-1-4-3, occasionally found in the packed-decimal formats of minicomputer manufacturers who shall remain nameless. See {NUXI problem}. Non-US hackers use this term to describe the American mm/dd/yy style of writing dates (Europeans write dd/mm/yy).

:milliLampson: /mil'*-lamp`sn/ /n./ A unit of talking speed, abbreviated mL. Most people run about 200 milliLampsons. The eponymous Butler Lampson (a CS theorist and systems implementor highly regarded among hackers) goes at 1000. A few people speak faster. This unit is sometimes used to compare the (sometimes widely disparate) rates at which people can generate ideas and actually emit them in speech. For example, noted computer architect C. Gordon Bell (designer of the PDP-11) is said, with some awe, to think at about 1200 mL but only talk at about 300; he is frequently reduced to fragments of sentences as his mouth tries to keep up with his speeding brain.

:minifloppies: /n./ 5.25-inch {vanilla} floppy disks, as opposed to 3.5-inch or {microfloppies} and the now-obsolescent 8-inch variety. At one time, this term was a trademark of Shugart Associates for their SA-400 minifloppy drive. Nobody paid any attention. See {stiffy}.

:MIPS: /mips/ /n./ [abbreviation] 1. A measure of computing speed; formally, `Million Instructions Per Second' (that's 10^6 per second, not 2^(20)!); often rendered by hackers as `Meaningless Indication of Processor Speed' or in other unflattering ways. This joke expresses a nearly universal attitude about the value of most {benchmark} claims, said attitude being one of the great cultural divides between hackers and {marketroid}s. The singular is sometimes `1 MIP' even though this is clearly etymologically wrong. See also {KIPS} and {GIPS}. 2. Computers, especially large computers, considered abstractly as sources of {computron}s. "This is just a workstation; the heavy MIPS are hidden in the basement." 3. The corporate name of a particular RISC-chip company; among other things, they designed the processor chips used in DEC's 3100 workstation series. 4. Acronym for `Meaningless Information per Second' (a joke, prob. from sense 1).

:misbug: /mis-buhg/ /n./ [MIT] An unintended property of a program that turns out to be useful; something that should have been a {bug} but turns out to be a {feature}. Usage: rare. Compare {green lightning}. See {miswart}.

:misfeature: /mis-fee'chr/ or /mis'fee`chr/ /n./ A feature that eventually causes lossage, possibly because it is not adequate for a new situation that has evolved. Since it results from a deliberate and properly implemented feature, a misfeature is not a bug. Nor is it a simple unforeseen side effect; the term implies that the feature in question was carefully planned, but its long-term consequences were not accurately or adequately predicted (which is quite different from not having thought ahead at all). A misfeature can be a particularly stubborn problem to resolve, because fixing it usually involves a substantial philosophical change to the structure of the system involved.

Many misfeatures (especially in user-interface design) arise because the designers/implementors mistake their personal tastes for laws of nature. Often a former feature becomes a misfeature because trade-offs were made whose parameters subsequently change (possibly only in the judgment of the implementors). "Well, yeah, it is kind of a misfeature that file names are limited to six characters, but the original implementors wanted to save directory space and we're stuck with it for now."

:Missed'em-five: /n./ Pejorative hackerism for AT&T System V Unix, generally used by {BSD} partisans in a bigoted mood. (The synonym `SysVile' is also encountered.) See {software bloat}, {Berzerkeley}.

:missile address: /n./ See {ICBM address}.

:miswart: /mis-wort/ /n./ [from {wart} by analogy with {misbug}] A {feature} that superficially appears to be a {wart} but has been determined to be the {Right Thing}. For example, in some versions of the {EMACS} text editor, the `transpose characters' command exchanges the character under the cursor with the one before it on the screen, *except* when the cursor is at the end of a line, in which case the two characters before the cursor are exchanged. While this behavior is perhaps surprising, and certainly inconsistent, it has been found through extensive experimentation to be what most users want. This feature is a miswart.

:moby: /moh'bee/ [MIT: seems to have been in use among model railroad fans years ago. Derived from Melville's "Moby Dick" (some say from `Moby Pickle').] 1. /adj./ Large, immense, complex, impressive. "A Saturn V rocket is a truly moby frob." "Some MIT undergrads pulled off a moby hack at the Harvard-Yale game." (See "{The Meaning of `Hack'}"). 2. /n./ obs. The maximum address space of a machine (see below). For a 680[234]0 or VAX or most modern 32-bit architectures, it is 4,294,967,296 8-bit bytes (4 gigabytes). 3. A title of address (never of third-person reference), usually used to show admiration, respect, and/or friendliness to a competent hacker. "Greetings, moby Dave. How's that address-book thing for the Mac going?" 4. /adj./ In backgammon, doubles on the dice, as in `moby sixes', `moby ones', etc. Compare this with {bignum} (sense 3): double sixes are both bignums and moby sixes, but moby ones are not bignums (the use of `moby' to describe double ones is sarcastic). Standard emphatic forms: `Moby foo', `moby win', `moby loss'. `Foby moo': a spoonerism due to Richard Greenblatt. 5. The largest available unit of something which is available in discrete increments. Thus, ordering a "moby Coke" at the local fast-food joint is not just a request for a large Coke, it's an explicit request for the largest size they sell.

This term entered hackerdom with the Fabritek 256K memory added to the MIT AI PDP-6 machine, which was considered unimaginably huge when it was installed in the 1960s (at a time when a more typical memory size for a timesharing system was 72 kilobytes). Thus, a moby is classically 256K 36-bit words, the size of a PDP-6 or PDP-10 moby. Back when address registers were narrow the term was more generally useful, because when a computer had virtual memory mapping, it might actually have more physical memory attached to it than any one program could access directly. One could then say "This computer has 6 mobies" meaning that the ratio of physical memory to address space is 6, without having to say specifically how much memory there actually is. That in turn implied that the computer could timeshare six `full-sized' programs without having to swap programs between memory and disk.

Nowadays the low cost of processor logic means that address spaces are usually larger than the most physical memory you can cram onto a machine, so most systems have much *less* than one theoretical `native' moby of {core}. Also, more modern memory-management techniques (esp. paging) make the `moby count' less significant. However, there is one series of widely-used chips for which the term could stand to be revived —- the Intel 8088 and 80286 with their incredibly {brain-damaged} segmented-memory designs. On these, a `moby' would be the 1-megabyte address span of a segment/offset pair (by coincidence, a PDP-10 moby was exactly 1 megabyte of 9-bit bytes).

:mockingbird: /n./ Software that intercepts communications (especially login transactions) between users and hosts and provides system-like responses to the users while saving their responses (especially account IDs and passwords). A special case of {Trojan horse}.

:mod: /vt.,n./ 1. Short for `modify' or `modification'. Very commonly used — in fact the full terms are considered markers that one is being formal. The plural `mods' is used esp. with reference to bug fixes or minor design changes in hardware or software, most esp. with respect to {patch} sets or a {diff}. 2. Short for {modulo} but used *only* for its techspeak sense.

:mode: /n./ A general state, usually used with an adjective describing the state. Use of the word `mode' rather than `state' implies that the state is extended over time, and probably also that some activity characteristic of that state is being carried out. "No time to hack; I'm in thesis mode." In its jargon sense, `mode' is most often attributed to people, though it is sometimes applied to programs and inanimate objects. In particular, see {hack mode}, {day mode}, {night mode}, {demo mode}, {fireworks mode}, and {yoyo mode}; also {talk mode}.

One also often hears the verbs `enable' and `disable' used in connection with jargon modes. Thus, for example, a sillier way of saying "I'm going to crash" is "I'm going to enable crash mode now". One might also hear a request to "disable flame mode, please".

In a usage much closer to techspeak, a mode is a special state that certain user interfaces must pass into in order to perform certain functions. For example, in order to insert characters into a document in the Unix editor `vi', one must type the "i" key, which invokes the "Insert" command. The effect of this command is to put vi into "insert mode", in which typing the "i" key has a quite different effect (to wit, it inserts an "i" into the document). One must then hit another special key, "ESC", in order to leave "insert mode". Nowadays, modeful interfaces are generally considered {losing} but survive in quite a few widely used tools built in less enlightened times.

:mode bit: /n./ A {flag}, usually in hardware, that selects between two (usually quite different) modes of operation. The connotations are different from {flag} bit in that mode bits are mainly written during a boot or set-up phase, are seldom explicitly read, and seldom change over the lifetime of an ordinary program. The classic example was the EBCDIC-vs.-ASCII bit (#12) of the Program Status Word of the IBM 360. Another was the bit on a PDP-12 that controlled whether it ran the PDP-8 or the LINC instruction set.

:modulo: /mod'yu-loh/ /prep./ Except for. An overgeneralization of mathematical terminology; one can consider saying that 4 equals 22 except for the 9s (4 = 22 mod 9). "Well, LISP seems to work okay now, modulo that {GC} bug." "I feel fine today modulo a slight headache."

:molly-guard: /mol'ee-gard/ /n./ [University of Illinois] A shield to prevent tripping of some {Big Red Switch} by clumsy or ignorant hands. Originally used of the plexiglass covers improvised for the BRS on an IBM 4341 after a programmer's toddler daughter (named Molly) frobbed it twice in one day. Later generalized to covers over stop/reset switches on disk drives and networking equipment.

:Mongolian Hordes technique: /n./ [poss. from the Sixties counterculture expression `Mongolian clusterfuck' for a public orgy] Development by {gang bang}. Implies that large numbers of inexperienced programmers are being put on a job better performed by a few skilled ones. Also called `Chinese Army technique'; see also {Brooks's Law}.

:monkey up: /vt./ To hack together hardware for a particular task, especially a one-shot job. Connotes an extremely {crufty} and consciously temporary solution. Compare {hack up}, {kluge up}, {cruft together}.

:monkey, scratch: /n./ See {scratch monkey}.

:monstrosity: 1. /n./ A ridiculously {elephantine} program or system, esp. one that is buggy or only marginally functional. 2. /adj./ The quality of being monstrous (see `Overgeneralization' in the discussion of jargonification). See also {baroque}.

:monty: /mon'tee/ /n./ 1. [US Geological Survey] A program with a ludicrously complex user interface written to perform extremely trivial tasks. An example would be a menu-driven, button clicking, pulldown, pop-up windows program for listing directories. The original monty was an infamous weather-reporting program, Monty the Amazing Weather Man, written at the USGS. Monty had a widget-packed X-window interface with over 200 buttons; and all monty actually *did* was {FTP} files off the network. 2. [Great Britain; commonly capitalized as `Monty' or as `the Full Monty'] 16 megabytes of memory, when fitted to an IBM-PC or compatible. A standard PC-compatible using the AT- or ISA-bus with a normal BIOS cannot access more than 16 megabytes of RAM. Generally used of a PC, Unix workstation, etc. to mean `fully populated with' memory, disk-space or some other desirable resource. This usage is possibly derived from a TV commercial for Del Monte fruit juice, in which one of the characters insisted on "the full Del Monte". Compare American {moby}.

:Moof: /moof/ [Macintosh users] 1. /n./ The call of a semi-legendary creature, properly called the {dogcow}. (Some previous versions of this entry claimed, incorrectly, that Moof was the name of the *creature*.) 2. /adj./ Used to flag software that's a hack, something untested and on the edge. On one Apple CD-ROM, certain folders such as "Tools & Apps (Moof!)" and "Development Platforms (Moof!)", are so marked to indicate that they contain software not fully tested or sanctioned by the powers that be. When you open these folders you cross the boundary into hackerland. 3. /v./ On the Microsoft Network, the term `moof' has gained popularity as a verb meaning `to be suddenly disconnected by the system'. One might say "I got moofed".

:Moore's Law: /morz law/ /prov./ The observation that the logic density of silicon integrated circuits has closely followed the curve (bits per square inch) = 2^((t - 1962)) where t is time in years; that is, the amount of information storable on a given amount of silicon has roughly doubled every year since the technology was invented. This relation, first uttered in 1964 by semiconductor engineer Gordon Moore (who co-founded Intel four years later) held until the late 1970s, at which point the doubling period slowed to 18 months. It remained at that value through time of writing (late 1995). See also {Parkinson's Law of Data}.

:moose call: /n./ See {whalesong}.

:moria: /mor'ee-*/ /n./ Like {nethack} and {rogue}, one of the large PD Dungeons-and-Dragons-like simulation games, available for a wide range of machines and operating systems. The name is from Tolkien's Mines of Moria; compare {elder days}, {elvish}. The game is extremely addictive and a major consumer of time better used for hacking.

:MOTAS: /moh-tahz/ /n./ [Usenet: Member Of The Appropriate Sex, after {MOTOS} and {MOTSS}] A potential or (less often) actual sex partner. See also {SO}.

:MOTOS: /moh-tohs/ /n./ [acronym from the 1970 U.S. census forms via Usenet: Member Of The Opposite Sex] A potential or (less often) actual sex partner. See {MOTAS}, {MOTSS}, {SO}. Less common than MOTSS or {MOTAS}, which have largely displaced it.

:MOTSS: /mots/ or /M-O-T-S-S/ /n./ [from the 1970 U.S. census forms via Usenet] Member Of The Same Sex, esp. one considered as a possible sexual partner. The gay-issues newsgroup on Usenet is called soc.motss. See {MOTOS} and {MOTAS}, which derive from it. See also {SO}.

:mouse ahead: /vi./ Point-and-click analog of `type ahead'. To manipulate a computer's pointing device (almost always a mouse in this usage, but not necessarily) and its selection or command buttons before a computer program is ready to accept such input, in anticipation of the program accepting the input. Handling this properly is rare, but it can help make a {WIMP environment} much more usable, assuming the users are familiar with the behavior of the user interface.

:mouse around: /vi./ To explore public portions of a large system, esp. a network such as Internet via {FTP} or {TELNET}, looking for interesting stuff to {snarf}.

:mouse belt: /n./ See {rat belt}.

:mouse droppings: /n./ [MS-DOS] Pixels (usually single) that are not properly restored when the mouse pointer moves away from a particular location on the screen, producing the appearance that the mouse pointer has left droppings behind. The major causes for this problem are programs that write to the screen memory corresponding to the mouse pointer's current location without hiding the mouse pointer first, and mouse drivers that do not quite support the graphics mode in use.

:mouse elbow: /n./ A tennis-elbow-like fatigue syndrome resulting from excessive use of a {WIMP environment}. Similarly, `mouse shoulder'; GLS reports that he used to get this a lot before he taught himself to be ambimoustrous.

:mouso: /mow'soh/ /n./ [by analogy with `typo'] An error in mouse usage resulting in an inappropriate selection or graphic garbage on the screen. Compare {thinko}, {braino}.

:MS-DOS:: /M-S-dos/ /n./ [MicroSoft Disk Operating System] A {clone} of {{CP/M}} for the 8088 crufted together in 6 weeks by hacker Tim Paterson at Seattle Computer Products, who called the original QDOS (Quick and Dirty Operating System) and is said to have regretted it ever since. Microsoft licensed QDOS order to have something to demo for IBM on time, and the rest is history. Numerous features, including vaguely Unix-like but rather broken support for subdirectories, I/O redirection, and pipelines, were hacked into Microsoft's 2.0 and subsequent versions; as a result, there are two or more incompatible versions of many system calls, and MS-DOS programmers can never agree on basic things like what character to use as an option switch or whether to be case-sensitive. The resulting appalling mess is now the highest-unit-volume OS in history. Often known simply as DOS, which annoys people familiar with other similarly abbreviated operating systems (the name goes back to the mid-1960s, when it was attached to IBM's first disk operating system for the 360). The name further annoys those who know what the term {operating system} does (or ought to) connote; DOS is more properly a set of relatively simple interrupt services. Some people like to pronounce DOS like "dose", as in "I don't work on dose, man!", or to compare it to a dose of brain-damaging drugs (a slogan button in wide circulation among hackers exhorts: "MS-DOS: Just say No!"). See {mess-dos}, {ill-behaved}.

:mu: /moo/ The correct answer to the classic trick question "Have you stopped beating your wife yet?". Assuming that you have no wife or you have never beaten your wife, the answer "yes" is wrong because it implies that you used to beat your wife and then stopped, but "no" is worse because it suggests that you have one and are still beating her. According to various Discordians and Douglas Hofstadter the correct answer is usually "mu", a Japanese word alleged to mean "Your question cannot be answered because it depends on incorrect assumptions". Hackers tend to be sensitive to logical inadequacies in language, and many have adopted this suggestion with enthusiasm. The word `mu' is actually from Chinese, meaning `nothing'; it is used in mainstream Japanese in that sense, but native speakers do not recognize the Discordian question-denying use. It almost certainly derives from overgeneralization of the answer in the following well-known Rinzei Zen teaching riddle:

A monk asked Joshu, "Does a dog have the Buddha nature?" Joshu retorted, "Mu!"

See also {has the X nature}, {AI Koans}, and Douglas Hofstadter's "G"odel, Escher, Bach: An Eternal Golden Braid" (pointer in the {Bibliography} in Appendix C.

:MUD: /muhd/ /n./ [acronym, Multi-User Dungeon; alt. Multi-User Dimension] 1. A class of {virtual reality} experiments accessible via the Internet. These are real-time chat forums with structure; they have multiple `locations' like an adventure game, and may include combat, traps, puzzles, magic, a simple economic system, and the capability for characters to build more structure onto the database that represents the existing world. 2. /vi./ To play a MUD. The acronym MUD is often lowercased and/or verbed; thus, one may speak of `going mudding', etc.

Historically, MUDs (and their more recent progeny with names of MU- form) derive from a hack by Richard Bartle and Roy Trubshaw on the University of Essex's DEC-10 in the early 1980s; descendants of that game still exist today and are sometimes generically called BartleMUDs. There is a widespread myth (repeated, unfortunately, by earlier versions of this lexicon) that the name MUD was trademarked to the commercial MUD run by Bartle on British Telecom (the motto: "You haven't *lived* 'til you've *died* on MUD!"); however, this is false — Richard Bartle explicitly placed `MUD' in the public domain in 1985. BT was upset at this, as they had already printed trademark claims on some maps and posters, which were released and created the myth.

Students on the European academic networks quickly improved on the MUD concept, spawning several new MUDs (VAXMUD, AberMUD, LPMUD). Many of these had associated bulletin-board systems for social interaction. Because these had an image as `research' they often survived administrative hostility to BBSs in general. This, together with the fact that Usenet feeds were often spotty and difficult to get in the U.K., made the MUDs major foci of hackish social interaction there.

AberMUD and other variants crossed the Atlantic around 1988 and quickly gained popularity in the U.S.; they became nuclei for large hacker communities with only loose ties to traditional hackerdom (some observers see parallels with the growth of Usenet in the early 1980s). The second wave of MUDs (TinyMUD and variants) tended to emphasize social interaction, puzzles, and cooperative world-building as opposed to combat and competition. By 1991, over 50% of MUD sites were of a third major variety, LPMUD, which synthesizes the combat/puzzle aspects of AberMUD and older systems with the extensibility of TinyMud. In 1996 the cutting edge of the technology is Pavel Curtis's MOO, even more extensible using a built-in object-oriented language. The trend toward greater programmability and flexibility will doubtless continue.

The state of the art in MUD design is still moving very rapidly, with new simulation designs appearing (seemingly) every month. Around 1991 there was an unsuccessful movement to deprecate the term {MUD} itself, as newer designs exhibit an exploding variety of names corresponding to the different simulation styles being explored. It survived. See also {bonk/oif}, {FOD}, {link-dead}, {mudhead}, {talk mode}.

:muddie: /n./ Syn. {mudhead}. More common in Great Britain, possibly because system administrators there like to mutter "bloody muddies" when annoyed at the species.

:mudhead: /n./ Commonly used to refer to a {MUD} player who eats, sleeps, and breathes MUD. Mudheads have been known to fail their degrees, drop out, etc., with the consolation, however, that they made wizard level. When encountered in person, on a MUD, or in a chat system, all a mudhead will talk about is three topics: the tactic, character, or wizard that is supposedly always unfairly stopping him/her from becoming a wizard or beating a favorite MUD; why the specific game he/she has experience with is so much better than any other; and the MUD he or she is writing or going to write because his/her design ideas are so much better than in any existing MUD. See also {wannabee}.

To the anthropologically literate, this term may recall the Zuni/Hopi legend of the mudheads or `koyemshi', mythical half-formed children of an unnatural union. Figures representing them act as clowns in Zuni sacred ceremonies. Others may recall the `High School Madness' sequence from the Firesign Theater album "Don't Crush That Dwarf, Hand Me the Pliers", in which there is a character named "Mudhead".

:multician: /muhl-ti'shn/ /n./ [coined at Honeywell, ca. 1970] Competent user of {{Multics}}. Perhaps oddly, no one has ever promoted the analogous `Unician'.

:Multics:: /muhl'tiks/ /n./ [from "MULTiplexed Information and Computing Service"] An early (late 1960s) timesharing operating system co-designed by a consortium including MIT, GE, and Bell Laboratories. Multics was very innovative for its time —- among other things, it introduced the idea of treating all devices uniformly as special files. All the members but GE eventually pulled out after determining that {second-system effect} had bloated Multics to the point of practical unusability (the `lean' predecessor in question was {CTSS}). Honeywell commercialized Multics after buying out GE's computer group, but it was never very successful (among other things, on some versions one was commonly required to enter a password to log out). One of the developers left in the lurch by the project's breakup was Ken Thompson, a circumstance which led directly to the birth of {{Unix}}. For this and other reasons, aspects of the Multics design remain a topic of occasional debate among hackers. See also {brain-damaged} and {GCOS}.

:multitask: /n./ Often used of humans in the same meaning it has for computers, to describe a person doing several things at once (but see {thrash}). The term `multiplex', from communications technology (meaning to handle more than one channel at the same time), is used similarly.

:mumblage: /muhm'bl*j/ /n./ The topic of one's mumbling (see {mumble}). "All that mumblage" is used like "all that stuff" when it is not quite clear how the subject of discussion works, or like "all that crap" when `mumble' is being used as an implicit replacement for pejoratives.

:mumble: /interj./ 1. Said when the correct response is too complicated to enunciate, or the speaker has not thought it out. Often prefaces a longer answer, or indicates a general reluctance to get into a long discussion. "Don't you think that we could improve LISP performance by using a hybrid reference-count transaction garbage collector, if the cache is big enough and there are some extra cache bits for the microcode to use?" "Well, mumble … I'll have to think about it." 2. [MIT] Expression of not-quite-articulated agreement, often used as an informal vote of consensus in a meeting: "So, shall we dike out the COBOL emulation?" "Mumble!" 3. Sometimes used as an expression of disagreement (distinguished from sense 2 by tone of voice and other cues). "I think we should buy a {VAX}." "Mumble!" Common variant: `mumble frotz' (see {frotz}; interestingly, one does not say `mumble frobnitz' even though `frotz' is short for `frobnitz'). 4. Yet another {metasyntactic variable}, like {foo}. 5. When used as a question ("Mumble?") means "I didn't understand you". 6. Sometimes used in `public' contexts on-line as a placefiller for things one is barred from giving details about. For example, a poster with pre-released hardware in his machine might say "Yup, my machine now has an extra 16M of memory, thanks to the card I'm testing for Mumbleco." 7. A conversational wild card used to designate something one doesn't want to bother spelling out, but which can be {glark}ed from context. Compare {blurgle}. 8. [XEROX PARC] A colloquialism used to suggest that further discussion would be fruitless.

:munch: /vt./ [often confused with {mung}, q.v.] To transform information in a serial fashion, often requiring large amounts of computation. To trace down a data structure. Related to {crunch} and nearly synonymous with {grovel}, but connotes less pain.

:munching: /n./ Exploration of security holes of someone else's computer for thrills, notoriety, or to annoy the system manager. Compare {cracker}. See also {hacked off}.

:munching squares: /n./ A {display hack} dating back to the PDP-1 (ca. 1962, reportedly discovered by Jackson Wright), which employs a trivial computation (repeatedly plotting the graph Y = X XOR T for successive values of T — see {HAKMEM} items 146—148) to produce an impressive display of moving and growing squares that devour the screen. The initial value of T is treated as a parameter, which, when well-chosen, can produce amazing effects. Some of these, later (re)discovered on the LISP machine, have been christened `munching triangles' (try AND for XOR and toggling points instead of plotting them), `munching w's', and `munching mazes'. More generally, suppose a graphics program produces an impressive and ever-changing display of some basic form, foo, on a display terminal, and does it using a relatively simple program; then the program (or the resulting display) is likely to be referred to as `munching foos'. [This is a good example of the use of the word {foo} as a {metasyntactic variable}.]

:munchkin: /muhnch'kin/ /n./ [from the squeaky-voiced little people in L. Frank Baum's "The Wizard of Oz"] A teenage-or-younger micro enthusiast hacking BASIC or something else equally constricted. A term of mild derision — munchkins are annoying but some grow up to be hackers after passing through a {larval stage}. The term {urchin} is also used. See also {wannabee}, {bitty box}.

:mundane: /n./ [from SF fandom] 1. A person who is not in science fiction fandom. 2. A person who is not in the computer industry. In this sense, most often an adjectival modifier as in "in my mundane life…." See also {Real World}.

:mung: /muhng/ /vt./ [in 1960 at MIT, `Mash Until No Good'; sometime after that the derivation from the {{recursive acronym}} `Mung Until No Good' became standard; but see {munge}] 1. To make changes to a file, esp. large-scale and irrevocable changes. See {BLT}. 2. To destroy, usually accidentally, occasionally maliciously. The system only mungs things maliciously; this is a consequence of {Finagle's Law}. See {scribble}, {mangle}, {trash}, {nuke}. Reports from {Usenet} suggest that the pronunciation /muhnj/ is now usual in speech, but the spelling `mung' is still common in program comments (compare the widespread confusion over the proper spelling of {kluge}). 3. The kind of beans the sprouts of which are used in Chinese food. (That's their real name! Mung beans! Really!)

Like many early hacker terms, this one seems to have originated at {TMRC}; it was already in use there in 1958. Peter Samson (compiler of the original TMRC lexicon) thinks it may originally have been onomatopoeic for the sound of a relay spring (contact) being twanged. However, it is known that during the World Wars, `mung' was U.S. army slang for the ersatz creamed chipped beef better known as `SOS', and it seems quite likely that the word in fact goes back to Scots-dialect {munge}.

:munge: /muhnj/ /vt./ 1. [derogatory] To imperfectly transform information. 2. A comprehensive rewrite of a routine, data structure or the whole program. 3. To modify data in some way the speaker doesn't need to go into right now or cannot describe succinctly (compare {mumble}).

This term is often confused with {mung}, which probably was derived from it. However, it also appears the word `munge' was in common use in Scotland in the 1940s, and in Yorkshire in the 1950s, as a verb, meaning to munch up into a masticated mess, and as a noun, meaning the result of munging something up (the parallel with the {kluge}/{kludge} pair is amusing).

:Murphy's Law: /prov./ The correct, *original* Murphy's Law reads: "If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it." This is a principle of defensive design, cited here because it is usually given in mutant forms less descriptive of the challenges of design for {luser}s. For example, you don't make a two-pin plug symmetrical and then label it `THIS WAY UP'; if it matters which way it is plugged in, then you make the design asymmetrical (see also the anecdote under {magic smoke}).

Edward A. Murphy, Jr. was one of the engineers on the rocket-sled experiments that were done by the U.S. Air Force in 1949 to test human acceleration tolerances (USAF project MX981). One experiment involved a set of 16 accelerometers mounted to different parts of the subject's body. There were two ways each sensor could be glued to its mount, and somebody methodically installed all 16 the wrong way around. Murphy then made the original form of his pronouncement, which the test subject (Major John Paul Stapp) quoted at a news conference a few days later.

Within months `Murphy's Law' had spread to various technical cultures connected to aerospace engineering. Before too many years had gone by variants had passed into the popular imagination, changing as they went. Most of these are variants on "Anything that can go wrong, will"; this is correctly referred to as {Finagle's Law}. The memetic drift apparent in these mutants clearly demonstrates Murphy's Law acting on itself!

:music:: /n./ A common extracurricular interest of hackers (compare {{science-fiction fandom}}, {{oriental food}}; see also {filk}). Hackish folklore has long claimed that musical and programming abilities are closely related, and there has been at least one large-scale statistical study that supports this. Hackers, as a rule, like music and often develop musical appreciation in unusual and interesting directions. Folk music is very big in hacker circles; so is electronic music, and the sort of elaborate instrumental jazz/rock that used to be called `progressive' and isn't recorded much any more. The hacker's musical range tends to be wide; many can listen with equal appreciation to (say) Talking Heads, Yes, Gentle Giant, Pat Metheny, Scott Joplin, Tangerine Dream, Dream Theater, King Sunny Ade, The Pretenders, Screaming Trees, or the Brandenburg Concerti. It is also apparently true that hackerdom includes a much higher concentration of talented amateur musicians than one would expect from a similar-sized control group of {mundane} types.

:mutter: /vt./ To quietly enter a command not meant for the ears, eyes, or fingers of ordinary mortals. Often used in `mutter an {incantation}'. See also {wizard}.

= N = =====

:N: /N/ /quant./ 1. A large and indeterminate number of objects: "There were N bugs in that crock!" Also used in its original sense of a variable name: "This crock has N bugs, as N goes to infinity." (The true number of bugs is always at least N + 1; see {Lubarsky's Law of Cybernetic Entomology}.) 2. A variable whose value is inherited from the current context. For example, when a meal is being ordered at a restaurant, N may be understood to mean however many people there are at the table. From the remark "We'd like to order N wonton soups and a family dinner for N - 1" you can deduce that one person at the table wants to eat only soup, even though you don't know how many people there are (see {great-wall}). 3. `Nth': /adj./ The ordinal counterpart of N, senses 1 and 2. "Now for the Nth and last time…" In the specific context "Nth-year grad student", N is generally assumed to be at least 4, and is usually 5 or more (see {tenured graduate student}). See also {{random numbers}}, {two-to-the-N}.

:nadger: /nad'jr/ /v./ [UK] Of software or hardware (not people), to twiddle some object in a hidden manner, generally so that it conforms better to some format. For instance, string printing routines on 8-bit processors often take the string text from the instruction stream, thus a print call looks like `jsr print:"Hello world"'. The print routine has to `nadger' the saved instruction pointer so that the processor doesn't try to execute the text as instructions when the subroutine returns.

Apparently this word originated on a now-legendary 1950s radio comedy program called "The Goon Show". The Goon Show usage of "nadger" was definitely in the sense of "jinxed" "clobbered" "fouled up". The American mutation {adger} seems to have preserved more of the original flavor.

:nagware: /nag'weir/ /n./ [Usenet] The variety of {shareware} that displays a large screen at the beginning or end reminding you to register, typically requiring some sort of keystroke to continue so that you can't use the software in batch mode. Compare {crippleware}.

:nailed to the wall: /adj./ [like a trophy] Said of a bug finally eliminated after protracted, and even heroic, effort.

:nailing jelly: /vi./ See {like nailing jelly to a tree}.

:naive: /adj./ Untutored in the perversities of some particular program or system; one who still tries to do things in an intuitive way, rather than the right way (in really good designs these coincide, but most designs aren't `really good' in the appropriate sense). This trait is completely unrelated to general maturity or competence, or even competence at any other specific program. It is a sad commentary on the primitive state of computing that the natural opposite of this term is often claimed to be `experienced user' but is really more like `cynical user'.

:naive user: /n./ A {luser}. Tends to imply someone who is ignorant mainly owing to inexperience. When this is applied to someone who *has* experience, there is a definite implication of stupidity.

:NAK: /nak/ /interj./ [from the ASCII mnemonic for 0010101] 1. On-line joke answer to {ACK}?: "I'm not here." 2. On-line answer to a request for chat: "I'm not available." 3. Used to politely interrupt someone to tell them you don't understand their point or that they have suddenly stopped making sense. See {ACK}, sense 3. "And then, after we recode the project in COBOL…." "Nak, Nak, Nak! I thought I heard you say COBOL!"

:nano: /nan'oh/ /n./ [CMU: from `nanosecond'] A brief period of time. "Be with you in a nano" means you really will be free shortly, i.e., implies what mainstream people mean by "in a jiffy" (whereas the hackish use of `jiffy' is quite different — see {jiffy}).

:nano-: /pref./ [SI: the next quantifier below {micro-}; meaning * 10^(-9)] Smaller than {micro-}, and used in the same rather loose and connotative way. Thus, one has {{nanotechnology}} (coined by hacker K. Eric Drexler) by analogy with `microtechnology'; and a few machine architectures have a `nanocode' level below `microcode'. Tom Duff at Bell Labs has also pointed out that "Pi seconds is a nanocentury". See also {{quantifiers}}, {pico-}, {nanoacre}, {nanobot}, {nanocomputer}, {nanofortnight}.

:nanoacre: /nan'oh-ay`kr/ /n./ A unit (about 2 mm square) of real estate on a VLSI chip. The term gets its giggle value from the fact that VLSI nanoacres have costs in the same range as real acres once one figures in design and fabrication-setup costs.

:nanobot: /nan'oh-bot/ /n./ A robot of microscopic proportions, presumably built by means of {{nanotechnology}}. As yet, only used informally (and speculatively!). Also called a `nanoagent'.

:nanocomputer: /nan'oh-k*m-pyoo'tr/ /n./ A computer with molecular-sized switching elements. Designs for mechanical nanocomputers which use single-molecule sliding rods for their logic have been proposed. The controller for a {nanobot} would be a nanocomputer.

:nanofortnight: /n./ [Adelaide University] 1 fortnight * 10^(-9), or about 1.2 msec. This unit was used largely by students doing undergraduate practicals. See {microfortnight}, {attoparsec}, and {micro-}.

:nanotechnology:: /nan'-oh-tek-no`l*-jee/ /n./ A hypothetical fabrication technology in which objects are designed and built with the individual specification and placement of each separate atom. The first unequivocal nanofabrication experiments took place in 1990, for example with the deposition of individual xenon atoms on a nickel substrate to spell the logo of a certain very large computer company. Nanotechnology has been a hot topic in the hacker subculture ever since the term was coined by K. Eric Drexler in his book "Engines of Creation" (Anchor/Doubleday, ISBN 0-385-19973-2), where he predicted that nanotechnology could give rise to replicating assemblers, permitting an exponential growth of productivity and personal wealth. See also {blue goo}, {gray goo}, {nanobot}.

:nasal demons: /n./ Recognized shorthand on the Usenet group comp.std.c for any unexpected behavior of a C compiler on encountering an undefined construct. During a discussion on that group in early 1992, a regular remarked "When the compiler encounters [a given undefined construct] it is legal for it to make demons fly out of your nose" (the implication is that the compiler may choose any arbitrarily bizarre way to interpret the code without violating the ANSI C standard). Someone else followed up with a reference to "nasal demons", which quickly became established.

:nastygram: /nas'tee-gram/ /n./ 1. A protocol packet or item of email (the latter is also called a {letterbomb}) that takes advantage of misfeatures or security holes on the target system to do untoward things. 2. Disapproving mail, esp. from a {net.god}, pursuant to a violation of {netiquette} or a complaint about failure to correct some mail- or news-transmission problem. Compare {shitogram}, {mailbomb}. 3. A status report from an unhappy, and probably picky, customer. "What'd Corporate say in today's nastygram?" 4. [deprecated] An error reply by mail from a {daemon}; in particular, a {bounce message}.

:Nathan Hale: /n./ An asterisk (see also {splat}, {{ASCII}}). Oh, you want an etymology? Notionally, from "I regret that I have only one asterisk for my country!", a misquote of the famous remark uttered by Nathan Hale just before he was hanged. Hale was a (failed) spy for the rebels in the American War of Independence.

:nature: /n./ See {has the X nature}.

:neat hack: /n./ 1. A clever technique. 2. A brilliant practical joke, where neatness is correlated with cleverness, harmlessness, and surprise value. Example: the Caltech Rose Bowl card display switch (see "{The Meaning of `Hack'}", Appendix A). See also {hack}.

:neats vs. scruffies: /n./ The label used to refer to one of the continuing {holy wars} in AI research. This conflict tangles together two separate issues. One is the relationship between human reasoning and AI; `neats' tend to try to build systems that `reason' in some way identifiably similar to the way humans report themselves as doing, while `scruffies' profess not to care whether an algorithm resembles human reasoning in the least as long as it works. More importantly, neats tend to believe that logic is king, while scruffies favor looser, more ad-hoc methods driven by empirical knowledge. To a neat, scruffy methods appear promiscuous, successful only by accident, and not productive of insights about how intelligence actually works; to a scruffy, neat methods appear to be hung up on formalism and irrelevant to the hard-to-capture `common sense' of living intelligences.

:neep-neep: /neep neep/ /n./ [onomatopoeic, widely spread through SF fandom but reported to have originated at Caltech in the 1970s] One who is fascinated by computers. Less specific than {hacker}, as it need not imply more skill than is required to boot games on a PC. The derived noun `neeping' applies specifically to the long conversations about computers that tend to develop in the corners at most SF-convention parties (the term `neepery' is also in wide use). Fandom has a related proverb to the effect that "Hacking is a conversational black hole!".

:neophilia: /nee`oh-fil'-ee-*/ /n./ The trait of being excited and pleased by novelty. Common among most hackers, SF fans, and members of several other connected leading-edge subcultures, including the pro-technology `Whole Earth' wing of the ecology movement, space activists, many members of Mensa, and the Discordian/neo-pagan underground. All these groups overlap heavily and (where evidence is available) seem to share characteristic hacker tropisms for science fiction, {{music}}, and {{oriental food}}. The opposite tendency is `neophobia'.

:nerd: /n./ 1. [mainstream slang] Pejorative applied to anyone with an above-average IQ and few gifts at small talk and ordinary social rituals. 2. [jargon] Term of praise applied (in conscious ironic reference to sense 1) to someone who knows what's really important and interesting and doesn't care to be distracted by trivial chatter and silly status games. Compare the two senses of {computer geek}.

The word itself appears to derive from the lines "And then, just to show them, I'll sail to Ka-Troo / And Bring Back an It-Kutch, a Preep and a Proo, / A Nerkle, a Nerd, and a Seersucker, too!" in the Dr. Seuss book "If I Ran the Zoo" (1950). (The spellings `nurd' and `gnurd' also used to be current at MIT.) How it developed its mainstream meaning is unclear, but sense 1 seems to have entered mass culture in the early 1970s (there are reports that in the mid-1960s it meant roughly "annoying misfit" without the connotation of intelligence).

An IEEE Spectrum article (4/95, page 16) once derived `nerd' in its variant form `knurd' from the word `drunk' backwards, but this bears all the earmarks of a bogus folk etymology.

Hackers developed sense 2 in self-defense perhaps ten years later, and some actually wear "Nerd Pride" buttons, only half as a joke. At MIT one can find not only buttons but (what else?) pocket protectors bearing the slogan and the MIT seal.

:net.-: /net dot/ /pref./ [Usenet] Prefix used to describe people and events related to Usenet. From the time before the {Great Renaming}, when most non-local newsgroups had names beginning `net.'. Includes {net.god}s, `net.goddesses' (various charismatic net.women with circles of on-line admirers), `net.lurkers' (see {lurker}), `net.person', `net.parties' (a synonym for {boink}, sense 2), and many similar constructs. See also {net.police}.

:net.god: /net god/ /n./ Accolade referring to anyone who satisfies some combination of the following conditions: has been visible on Usenet for more than 5 years, ran one of the original backbone sites, moderated an important newsgroup, wrote news software, or knows Gene, Mark, Rick, Mel, Henry, Chuq, and Greg personally. See {demigod}. Net.goddesses such as Rissa or the Slime Sisters have (so far) been distinguished more by personality than by authority.

:net.personality: /net per`sn-al'-*-tee/ /n./ Someone who has made a name for him or herself on {Usenet}, through either longevity or attention-getting posts, but doesn't meet the other requirements of {net.god}hood.

:net.police: /net-p*-lees'/ /n./ (var. `net.cops') Those Usenet readers who feel it is their responsibility to pounce on and {flame} any posting which they regard as offensive or in violation of their understanding of {netiquette}. Generally used sarcastically or pejoratively. Also spelled `net police'. See also {net.-}, {code police}.

:NetBOLLIX: /n./ [from bollix: to bungle] {IBM}'s NetBIOS, an extremely {brain-damaged} network protocol that, like {Blue Glue}, is used at commercial shops that don't know any better.

:netburp: /n./ [IRC] When {netlag} gets really bad, and delays between servers exceed a certain threshhold, the {IRC} network effectively becomes partitioned for a period of time, and large numbers of people seem to be signing off at the same time and then signing back on again when things get better. An instance of this is called a `netburp' (or, sometimes, {netsplit}).

:netdead: /n./ [IRC] The state of someone who signs off {IRC}, perhaps during a {netburp}, and doesn't sign back on until later. In the interim, he is "dead to the net".

:nethack: /net'hak/ /n./ [Unix] A dungeon game similar to {rogue} but more elaborate, distributed in C source over {Usenet} and very popular at Unix sites and on PC-class machines (nethack is probably the most widely distributed of the freeware dungeon games). The earliest versions, written by Jay Fenlason and later considerably enhanced by Andries Brouwer, were simply called `hack'. The name changed when maintenance was taken over by a group of hackers originally organized by Mike Stephenson; the current contact address (as of early 1996) is nethack-bugs@linc.cis.upenn.edu.

:netiquette: /net'ee-ket/ or /net'i-ket/ /n./ [portmanteau from "network etiquette"] The conventions of politeness recognized on {Usenet}, such as avoidance of cross-posting to inappropriate groups and refraining from commercial pluggery outside the biz groups.

:netlag: /n./ [IRC, MUD] A condition that occurs when the delays in the {IRC} network or on a {MUD} become severe enough that servers briefly lose and then reestablish contact, causing messages to be delivered in bursts, often with delays of up to a minute. (Note that this term has nothing to do with mainstream "jet lag", a condition which hackers tend not to be much bothered by.)

:netnews: /net'n[y]ooz/ /n./ 1. The software that makes {Usenet} run. 2. The content of Usenet. "I read netnews right after my mail most mornings."

:netrock: /net'rok/ /n./ [IBM] A {flame}; used esp. on VNET, IBM's internal corporate network.

:netsplit: /n./ Syn. {netburp}.

:netter: /n./ 1. Loosely, anyone with a {network address}. 2. More specifically, a {Usenet} regular. Most often found in the plural. "If you post *that* in a technical group, you're going to be flamed by angry netters for the rest of time!"

:network address: /n./ (also `net address') As used by hackers, means an address on `the' network (see {network, the}; this used to include {bang path} addresses but now almost always implies an {{Internet address}}).

Display of a network address is essential if one wants to be to be taken seriously by hackers; in particular, persons or organizations that claim to understand, work with, sell to, or recruit from among hackers but *don't* display net addresses are quietly presumed to be clueless poseurs and mentally flushed (see {flush}, sense 4). Hackers often put their net addresses on their business cards and wear them prominently in contexts where they expect to meet other hackers face-to-face (see also {{science-fiction fandom}}). This is mostly functional, but is also a signal that one identifies with hackerdom (like lodge pins among Masons or tie-dyed T-shirts among Grateful Dead fans). Net addresses are often used in email text as a more concise substitute for personal names; indeed, hackers may come to know each other quite well by network names without ever learning each others' `legal' monikers. See also {sitename}, {domainist}.

[1996 update: the lodge-pin function of the network address has been gradually eroding in the last two years as Internet and World Wide Web usage have become common outside hackerdom. — ESR]

:network meltdown: /n./ A state of complete network overload; the network equivalent of {thrash}ing. This may be induced by a {Chernobyl packet}. See also {broadcast storm}, {kamikaze packet}.

Network meltdown is often a result of network designs that are optimized for a steady state of moderate load and don't cope well with the very jagged, bursty usage patterns of the real world. One amusing instance of this is triggered by the the popular and very bloody shoot-'em-up game Doom on the PC. When used in multiplayer mode over a network, the game uses broadcast packets to inform other machines when bullets are fired. This causes problems with weapons like the chain gun which fire rapidly — it can blast the network into a meltdown state just as easily as it shreds opposing monsters.

:network, the: /n./ 1. The union of all the major noncommercial, academic, and hacker-oriented networks, such as Internet, the pre-1990 ARPANET, NSFnet, {BITNET}, and the virtual UUCP and {Usenet} `networks', plus the corporate in-house networks and commercial time-sharing services (such as CompuServe, GEnie and AOL) that gateway to them. A site is generally considered `on the network' if it can be reached through some combination of Internet-style (@-sign) and UUCP (bang-path) addresses. See {Internet}, {bang path}, {{Internet address}}, {network address}. Following the mass-culture discovery of the Internet in 1994 and subsequent proliferation of cheap TCP/IP connections, "the network" is increasingly synonymous with the Internet itself (as it was before the second wave of wide-area computer networking began around 1980). 2. A fictional conspiracy of libertarian hacker-subversives and anti-authoritarian monkeywrenchers described in Robert Anton Wilson's novel "Schr"odinger's Cat", to which many hackers have subsequently decided they belong (this is an example of {ha ha only serious}).

In sense 1, `network' is often abbreviated to `net'. "Are you on the net?" is a frequent question when hackers first meet face to face, and "See you on the net!" is a frequent goodbye.

:New Jersey: /adj./ [primarily Stanford/Silicon Valley] Brain-damaged or of poor design. This refers to the allegedly wretched quality of such software as C, C++, and Unix (which originated at Bell Labs in Murray Hill, New Jersey). "This compiler bites the bag, but what can you expect from a compiler designed in New Jersey?" Compare {Berkeley Quality Software}. See also {Unix conspiracy}.

:New Testament: /n./ [C programmers] The second edition of K&R's "The C Programming Language" (Prentice-Hall, 1988; ISBN 0-13-110362-8), describing ANSI Standard C. See {K&R}; this version is also called `K&R2'.

:newbie: /n[y]oo'bee/ /n./ [orig. from British public-school and military slang variant of `new boy'] A Usenet neophyte. This term surfaced in the {newsgroup} talk.bizarre but is now in wide use. Criteria for being considered a newbie vary wildly; a person can be called a newbie in one newsgroup while remaining a respected regular in another. The label `newbie' is sometimes applied as a serious insult to a person who has been around Usenet for a long time but who carefully hides all evidence of having a clue. See {B1FF}.

:newgroup wars: /n[y]oo'groop worz/ /n./ [Usenet] The salvos of dueling `newgroup' and `rmgroup' messages sometimes exchanged by persons on opposite sides of a dispute over whether a {newsgroup} should be created net-wide, or (even more frequently) whether an obsolete one should be removed. These usually settle out within a week or two as it becomes clear whether the group has a natural constituency (usually, it doesn't). At times, especially in the completely anarchic alt hierarchy, the names of newsgroups themselves become a form of comment or humor; e.g., the spinoff of alt.swedish.chef.bork.bork.bork from alt.tv.muppets in early 1990, or any number of specialized abuse groups named after particularly notorious {flamer}s, e.g., alt.weemba.

:newline: /n[y]oo'li:n/ /n./ 1. [techspeak, primarily Unix] The ASCII LF character (0001010), used under {{Unix}} as a text line terminator. A Bell-Labs-ism rather than a Berkeleyism; interestingly (and unusually for Unix jargon), it is said to have originally been an IBM usage. (Though the term `newline' appears in ASCII standards, it never caught on in the general computing world before Unix). 2. More generally, any magic character, character sequence, or operation (like Pascal's writeln procedure) required to terminate a text record or separate lines. See {crlf}, {terpri}.

:NeWS: /nee'wis/, /n[y]oo'is/ or /n[y]ooz/ /n./ [acronym; the `Network Window System'] The road not taken in window systems, an elegant {{PostScript}}-based environment that would almost certainly have won the standards war with {X} if it hadn't been {proprietary} to Sun Microsystems. There is a lesson here that too many software vendors haven't yet heeded. Many hackers insist on the two-syllable pronunciations above as a way of distinguishing NeWS from {news} (the {netnews} software).

:news: /n./ See {netnews}.

:newsfroup: // /n./ [Usenet] Silly synonym for {newsgroup}, originally a typo but now in regular use on Usenet's talk.bizarre and other lunatic-fringe groups. Compare {hing}, {grilf}, and {filk}.

:newsgroup: /n./ [Usenet] One of {Usenet}'s huge collection of topic groups or {fora}. Usenet groups can be `unmoderated' (anyone can post) or `moderated' (submissions are automatically directed to a moderator, who edits or filters and then posts the results). Some newsgroups have parallel {mailing list}s for Internet people with no netnews access, with postings to the group automatically propagated to the list and vice versa. Some moderated groups (especially those which are actually gatewayed Internet mailing lists) are distributed as `digests', with groups of postings periodically collected into a single large posting with an index.

Among the best-known are comp.lang.c (the C-language forum), comp.arch (on computer architectures), comp.unix.wizards (for Unix wizards), rec.arts.sf.written and siblings (for science-fiction fans), and talk.politics.misc (miscellaneous political discussions and {flamage}).

:nick: /n./ [IRC] Short for nickname. On {IRC}, every user must pick a nick, which is sometimes the same as the user's real name or login name, but is often more fanciful. Compare {handle}.

:nickle: /ni'kl/ /n./ [from `nickel', common name for the U.S. 5-cent coin] A {nybble} + 1; 5 bits. Reported among developers for Mattel's GI 1600 (the Intellivision games processor), a chip with 16-bit-wide RAM but 10-bit-wide ROM. See also {deckle}, and {nybble} for names of other bit units.

:night mode: /n./ See {phase} (of people).

:Nightmare File System: /n./ Pejorative hackerism for Sun's Network File System (NFS). In any nontrivial network of Suns where there is a lot of NFS cross-mounting, when one Sun goes down, the others often freeze up. Some machine tries to access the down one, and (getting no response) repeats indefinitely. This causes it to appear dead to some messages (what is actually happening is that it is locked up in what should have been a brief excursion to a higher {spl} level). Then another machine tries to reach either the down machine or the pseudo-down machine, and itself becomes pseudo-down. The first machine to discover the down one is now trying both to access the down one and to respond to the pseudo-down one, so it is even harder to reach. This situation snowballs very quickly, and soon the entire network of machines is frozen — worst of all, the user can't even abort the file access that started the problem! Many of NFS's problems are excused by partisans as being an inevitable result of its statelessness, which is held to be a great feature (critics, of course, call it a great {misfeature}). (ITS partisans are apt to cite this as proof of Unix's alleged bogosity; ITS had a working NFS-like shared file system with none of these problems in the early 1970s.) See also {broadcast storm}.

:NIL: /nil/ No. Used in reply to a question, particularly one asked using the `-P' convention. Most hackers assume this derives simply from LISP terminology for `false' (see also {T}), but NIL as a negative reply was well-established among radio hams decades before the advent of LISP. The historical connection between early hackerdom and the ham radio world was strong enough that this may have been an influence.

:Ninety-Ninety Rule: /n./ "The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time." Attributed to Tom Cargill of Bell Labs, and popularized by Jon Bentley's September 1985 "Bumper-Sticker Computer Science" column in "Communications of the ACM". It was there called the "Rule of Credibility", a name which seems not to have stuck.

:NMI: /N-M-I/ /n./ Non-Maskable Interrupt. An IRQ 7 on the PDP-11 or 680[01234]0; the NMI line on an 80[1234]86. In contrast with a {priority interrupt} (which might be ignored, although that is unlikely), an NMI is *never* ignored. Except, that is, on {clone} boxes, where NMI is often ignored on the motherboard because flaky hardware can generate many spurious ones.

:no-op: /noh'op/ /n.,v./ alt. NOP /nop/ [no operation] 1. A machine instruction that does nothing (sometimes used in assembler-level programming as filler for data or patch areas, or to overwrite code to be removed in binaries). See also {JFCL}. 2. A person who contributes nothing to a project, or has nothing going on upstairs, or both. As in "He's a no-op." 3. Any operation or sequence of operations with no effect, such as circling the block without finding a parking space, or putting money into a vending machine and having it fall immediately into the coin-return box, or asking someone for help and being told to go away. "Oh, well, that was a no-op." Hot-and-sour soup (see {great-wall}) that is insufficiently either is `no-op soup'; so is wonton soup if everybody else is having hot-and-sour.

:noddy: /nod'ee/ /adj./ [UK: from the children's books] 1. Small and un-useful, but demonstrating a point. Noddy programs are often written by people learning a new language or system. The archetypal noddy program is {hello, world}. Noddy code may be used to demonstrate a feature or bug of a compiler. May be used of real hardware or software to imply that it isn't worth using. "This editor's a bit noddy." 2. A program that is more or less instant to produce. In this use, the term does not necessarily connote uselessness, but describes a {hack} sufficiently trivial that it can be written and debugged while carrying on (and during the space of) a normal conversation. "I'll just throw together a noddy {awk} script to dump all the first fields." In North America this might be called a {mickey mouse program}. See {toy program}.

:node: /n./ 1. [Internet, UUCP] A host machine on the network. 2. [MS-DOS BBSes] A dial-in line on a BBS. Thus an MS-DOS {sysop} might say that his BBS has 4 nodes even though it has a single machine and no Internet link, confusing an Internet hacker no end.

:NOMEX underwear: /noh'meks uhn'-der-weir/ /n./ [Usenet] Syn. {asbestos longjohns}, used mostly in auto-related mailing lists and newsgroups. NOMEX underwear is an actual product available on the racing equipment market, used as a fire resistance measure and required in some racing series.

:Nominal Semidestructor: /n./ Soundalike slang for `National Semiconductor', found among other places in the Networking/2 networking sources. During the late 1970s to mid-1980s this company marketed a series of microprocessors including the NS16000 and NS32000 and several variants. At one point early in the great microprocessor race, the specs on these chips made them look like serious competition for the rising Intel 80x86 and Motorola 680x0 series. Unfortunately, the actual parts were notoriously flaky and never implemented the full instruction set promised in their literature, apparently because the company couldn't get any of the mask steppings to work as designed. They eventually sank without trace, joining the Zilog Z8000 and a few even more obscure also-rans in the graveyard of forgotten microprocessors. Compare {HP-SUX}, {AIDX}, {buglix}, {Macintrash}, {Telerat}, {Open DeathTrap}, {ScumOS}, {sun-stools}.

:non-optimal solution: /n./ (also `sub-optimal solution') An astoundingly stupid way to do something. This term is generally used in deadpan sarcasm, as its impact is greatest when the person speaking looks completely serious. Compare {stunning}. See also {Bad Thing}.

:nonlinear: /adj./ [scientific computation] 1. Behaving in an erratic and unpredictable fashion; unstable. When used to describe the behavior of a machine or program, it suggests that said machine or program is being forced to run far outside of design specifications. This behavior may be induced by unreasonable inputs, or may be triggered when a more mundane bug sends the computation far off from its expected course. 2. When describing the behavior of a person, suggests a tantrum or a {flame}. "When you talk to Bob, don't mention the drug problem or he'll go nonlinear for hours." In this context, `go nonlinear' connotes `blow up out of proportion' (proportion connotes linearity).

:nontrivial: /adj./ Requiring real thought or significant computing power. Often used as an understated way of saying that a problem is quite difficult or impractical, or even entirely unsolvable ("Proving P=NP is nontrivial"). The preferred emphatic form is `decidedly nontrivial'. See {trivial}, {uninteresting}, {interesting}.

:not ready for prime time: /adj./ Usable, but only just so; not very robust; for internal use only. Said of a program or device. Often connotes that the thing will be made more solid {Real Soon Now}. This term comes from the ensemble name of the original cast of "Saturday Night Live", the "Not Ready for Prime Time Players". It has extra flavor for hackers because of the special (though now semi-obsolescent) meaning of {prime time}. Compare {beta}.

:notwork: /not'werk/ /n./ A network, when it is acting {flaky} or is {down}. Compare {nyetwork}. Said at IBM to have originally referred to a particular period of flakiness on IBM's VNET corporate network ca. 1988; but there are independent reports of the term from elsewhere.

:NP-: /N-P/ /pref./ Extremely. Used to modify adjectives describing a level or quality of difficulty; the connotation is often `more so than it should be' This is generalized from the computer-science terms `NP-hard' and `NP-complete'; NP-complete problems all seem to be very hard, but so far no one has found a good a priori reason that they should be. NP is the set of Nondeterministic-Polynomial algorithms, those that can be completed by a nondeterministic Turing machine in an amount of time that is a polynomial function of the size of the input; a solution for one NP-complete problem would solve all the others. "Coding a BitBlt implementation to perform correctly in every case is NP-annoying."

:nroff:: /N'rof/ /n./ [Unix, from "new roff" (see {{troff}})] A companion program to the Unix typesetter {{troff}}, accepting identical input but preparing output for terminals and line printers.

:NSA line eater: /n./ The National Security Agency trawling program sometimes assumed to be reading the net for the U.S. Government's spooks. Most hackers describe it as a mythical beast, but some believe it actually exists, more aren't sure, and many believe in acting as though it exists just in case. Some netters put loaded phrases like `KGB', `Uzi', `nuclear materials', `Palestine', `cocaine', and `assassination' in their {sig block}s in a (probably futile) attempt to confuse and overload the creature. The {GNU} version of {EMACS} actually has a command that randomly inserts a bunch of insidious anarcho-verbiage into your edited text.

There is a mainstream variant of this myth involving a `Trunk Line Monitor', which supposedly used speech recognition to extract words from telephone trunks. This one was making the rounds in the late 1970s, spread by people who had no idea of then-current technology or the storage, signal-processing, or speech recognition needs of such a project. On the basis of mass-storage costs alone it would have been cheaper to hire 50 high-school students and just let them listen in. Speech-recognition technology can't do this job even now (1996), and almost certainly won't in this millennium, either. The peak of silliness came with a letter to an alternative paper in New Haven, Connecticut, laying out the factoids of this Big Brotherly affair. The letter writer then revealed his actual agenda by offering — at an amazing low price, just this once, we take VISA and MasterCard — a scrambler guaranteed to daunt the Trunk Trawler and presumably allowing the would-be Baader-Meinhof gangs of the world to get on with their business.

:NSP: /N-S-P/ /n./ Common abbreviation for `Network Service Provider', one of the big national or regional companies that maintains a portion of the Internet backbone and resells connectivity to {ISP}s. In 1996, major NSPs include ANS, MCI, UUNET, and Sprint. An Internet wholesaler.

:nude: /adj./ Said of machines delivered without an operating system (compare {bare metal}). "We ordered 50 systems, but they all arrived nude, so we had to spend a an extra weekend with the installation tapes." This usage is a recent innovation reflecting the fact that most PC clones are now delivered with DOS or Microsoft Windows pre-installed at the factory. Other kinds of hardware are still normally delivered without OS, so this term is particular to PC support groups.

:nuke: /n[y]ook/ /vt./ 1. To intentionally delete the entire contents of a given directory or storage volume. "On Unix, `rm -r /usr' will nuke everything in the usr filesystem." Never used for accidental deletion. Oppose {blow away}. 2. Syn. for {dike}, applied to smaller things such as files, features, or code sections. Often used to express a final verdict. "What do you want me to do with that 80-meg {wallpaper} file?" "Nuke it." 3. Used of processes as well as files; nuke is a frequent verbal alias for `kill -9' on Unix. 4. On IBM PCs, a bug that results in {fandango on core} can trash the operating system, including the FAT (the in-core copy of the disk block chaining information). This can utterly scramble attached disks, which are then said to have been `nuked'. This term is also used of analogous lossages on Macintoshes and other micros without memory protection.

:number-crunching: /n./ Computations of a numerical nature, esp. those that make extensive use of floating-point numbers. The only thing {Fortrash} is good for. This term is in widespread informal use outside hackerdom and even in mainstream slang, but has additional hackish connotations: namely, that the computations are mindless and involve massive use of {brute force}. This is not always {evil}, esp. if it involves ray tracing or fractals or some other use that makes {pretty pictures}, esp. if such pictures can be used as {wallpaper}. See also {crunch}.

:numbers: /n./ [scientific computation] Output of a computation that may not be significant results but at least indicate that the program is running. May be used to placate management, grant sponsors, etc. `Making numbers' means running a program because output — any output, not necessarily meaningful output — is needed as a demonstration of progress. See {pretty pictures}, {math-out}, {social science number}.

:NUXI problem: /nuk'see pro'bl*m/ /n./ Refers to the problem of transferring data between machines with differing byte-order. The string `UNIX' might look like `NUXI' on a machine with a different `byte sex' (e.g., when transferring data from a {little-endian} to a {big-endian}, or vice-versa). See also {middle-endian}, {swab}, and {bytesexual}.

:nybble: /nib'l/ (alt. `nibble') /n./ [from /v./ `nibble' by analogy with `bite' => `byte'] Four bits; one {hex} digit; a half-byte. Though `byte' is now techspeak, this useful relative is still jargon. Compare {{byte}}; see also {bit}, Apparently the `nybble' spelling is uncommon in Commonwealth Hackish, as British orthography suggests the pronunciation /ni:'bl/.

Following `bit', `byte' and `nybble' there have been quite a few analogical attempts to construct unambiguous terms for bit blocks of other sizes. All of these are strictly jargon, not techspeak, and not very common jargon at that (most hackers would recognize them in context but not use them spontaneously). We collect them here for reference together with the ambiguous techspeak terms `word', `half-word' and `quadwords'; some (indicated) have substantial information separate entries. 2 bits: {crumb}, {quad}, {quarter}, tayste 4 bits: nybble 5 bits: {nickle} 10 bits: {deckle} 16 bits: playte, {chawmp} (on a 32-bit machine), word (on a 16-bit machine), half-word (on a 32-bit machine). 18 bits: {chawmp} (on a 36-bit machine), half-word (on a 36-bit machine) 32 bits: dynner, {gawble} (on a 32-bit machine), word (on a 32-bit machine), longword (on a 16-bit machine). 36: word (on a 36-bit machine) 48 bits: {gawble} (under circumstances that remain obscure)

The fundamental motivation for most of these jargon terms (aside from the normal hackerly enjoyment of punning wordplay) is the extreme ambiguity of the term `word' and its derivatives.

:nyetwork: /nyet'werk/ /n./ [from Russian `nyet' = no] A network, when it is acting {flaky} or is {down}. Compare {notwork}.

= O = =====

:Ob-: /ob/ /pref./ Obligatory. A piece of {netiquette} acknowledging that the author has been straying from the newsgroup's charter topic. For example, if a posting in alt.sex is a response to a part of someone else's posting that has nothing particularly to do with sex, the author may append `ObSex' (or `Obsex') and toss off a question or vignette about some unusual erotic act. It is considered a sign of great {winnitude} when one's Obs are more interesting than other people's whole postings.

:Obfuscated C Contest: /n./ (in full, the `International Obfuscated C Code Contest', or IOCCC) An annual contest run since 1984 over Usenet by Landon Curt Noll and friends. The overall winner is whoever produces the most unreadable, creative, and bizarre (but working) C program; various other prizes are awarded at the judges' whim. C's terse syntax and macro-preprocessor facilities give contestants a lot of maneuvering room. The winning programs often manage to be simultaneously (a) funny, (b) breathtaking works of art, and (c) horrible examples of how *not* to code in C.

This relatively short and sweet entry might help convey the flavor of obfuscated C:

/* * HELLO WORLD program * by Jack Applin and Robert Heckendorn, 1985 */ main(v,c)char**c;{for(v[c++]="Hello, world!\n)"; (!!c)[*c]&&(v—||—c&&execlp(*c,*c,c[!!c]+!!c,!c)); **c=!c)write(!!*c,*c,!!**c);}

Here's another good one:

/* * Program to compute an approximation of pi * by Brian Westley, 1988 */

#define _ -F<00||—F-OO—; int F=00,OO=00; main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO() { --- -------- ----------- ------------- -------------- -------------- --------------- --------------- --------------- --------------- -------------- -------------- ------------- ----------- ------- ---_ } Note that this program works by computing its own area. For more digits, write a bigger program. See also {hello, world}.

The IOCC has an official home page at http://reality.sgi.com/csp/ioccc.

:obi-wan error: /oh'bee-won` er'*r/ /n./ [RPI, from `off-by-one' and the Obi-Wan Kenobi character in "Star Wars"] A loop of some sort in which the index is off by 1. Common when the index should have started from 0 but instead started from 1. A kind of {off-by-one error}. See also {zeroth}.

:Objectionable-C: /n./ Hackish take on "Objective-C", the name of an object-oriented dialect of C in competition with the better-known C++ (it is used to write native applications on the NeXT machine). Objectionable-C uses a Smalltalk-like syntax, but lacks the flexibility of Smalltalk method calls, and (like many such efforts) comes frustratingly close to attaining the {Right Thing} without actually doing so.

:obscure: /adj./ Used in an exaggeration of its normal meaning, to imply total incomprehensibility. "The reason for that last crash is obscure." "The `find(1)' command's syntax is obscure!" The phrase `moderately obscure' implies that something could be figured out but probably isn't worth the trouble. The construction `obscure in the extreme' is the preferred emphatic form.

:octal forty: /ok'tl for'tee/ /n./ Hackish way of saying "I'm drawing a blank." Octal 40 is the {{ASCII}} space character, 0100000; by an odd coincidence, {hex} 40 (01000000) is the {{EBCDIC}} space character. See {wall}.

:off the trolley: /adj./ Describes the behavior of a program that malfunctions and goes catatonic, but doesn't actually {crash} or abort. See {glitch}, {bug}, {deep space}.

:off-by-one error: /n./ Exceedingly common error induced in many ways, such as by starting at 0 when you should have started at 1 or vice-versa, or by writing `< N' instead of `<= N' or vice-versa. Also applied to giving something to the person next to the one who should have gotten it. Often confounded with {fencepost error}, which is properly a particular subtype of it.

:offline: /adv./ Not now or not here. "Let's take this discussion offline." Specifically used on {Usenet} to suggest that a discussion be moved off a public newsgroup to email.

:ogg: /og/ /v./ [CMU] 1. In the multi-player space combat game Netrek, to execute kamikaze attacks against enemy ships which are carrying armies or occupying strategic positions. Named during a game in which one of the players repeatedly used the tactic while playing Orion ship G, showing up in the player list as "Og". This trick has been roundly denounced by those who would return to the good old days when the tactic of dogfighting was dominant, but as Sun Tzu wrote, "What is of supreme importance in war is to attack the enemy's strategy." However, the traditional answer to the newbie question "What does ogg mean?" is just "Pick up some armies and I'll show you." 2. In other games, to forcefully attack an opponent with the expectation that the resources expended will be renewed faster than the opponent will be able to regain his previous advantage. Taken more seriously as a tactic since it has gained a simple name. 3. To do anything forcefully, possibly without consideration of the drain on future resources. "I guess I'd better go ogg the problem set that's due tomorrow." "Whoops! I looked down at the map for a sec and almost ogged that oncoming car."

:old fart: /n./ Tribal elder. A title self-assumed with remarkable frequency by (esp.) Usenetters who have been programming for more than about 25 years; often appears in {sig block}s attached to Jargon File contributions of great archeological significance. This is a term of insult in the second or third person but one of pride in first person.

:Old Testament: /n./ [C programmers] The first edition of {K&R}, the sacred text describing {Classic C}.

:one-banana problem: /n./ At mainframe shops, where the computers have operators for routine administrivia, the programmers and hardware people tend to look down on the operators and claim that a trained monkey could do their job. It is frequently observed that the incentives that would be offered said monkeys can be used as a scale to describe the difficulty of a task. A one-banana problem is simple; hence, "It's only a one-banana job at the most; what's taking them so long?"

At IBM, folklore divides the world into one-, two-, and three-banana problems. Other cultures have different hierarchies and may divide them more finely; at ICL, for example, five grapes (a bunch) equals a banana. Their upper limit for the in-house {sysape}s is said to be two bananas and three grapes (another source claims it's three bananas and one grape, but observes "However, this is subject to local variations, cosmic rays and ISO"). At a complication level any higher than that, one asks the manufacturers to send someone around to check things.

See also {Infinite-Monkey Theorem}.

:one-line fix: /n./ Used (often sarcastically) of a change to a program that is thought to be trivial or insignificant right up to the moment it crashes the system. Usually `cured' by another one-line fix. See also {I didn't change anything!}

:one-liner wars: /n./ A game popular among hackers who code in the language APL (see {write-only language} and {line noise}). The objective is to see who can code the most interesting and/or useful routine in one line of operators chosen from APL's exceedingly {hairy} primitive set. A similar amusement was practiced among {TECO} hackers and is now popular among {Perl} aficionados.

Ken Iverson, the inventor of APL, has been credited with a one-liner that, given a number N, produces a list of the prime numbers from 1 to N inclusive. It looks like this:

(2 = 0 +.= T o.| T) / T <- iN

where `o' is the APL null character, the assignment arrow is a single character, and `i' represents the APL iota.

:ooblick: /oo'blik/ /n./ [from the Dr. Seuss title "Bartholomew and the Oobleck"; the spelling `oobleck' is still current in the mainstream] A bizarre semi-liquid sludge made from cornstarch and water. Enjoyed among hackers who make batches during playtime at parties for its amusing and extremely non-Newtonian behavior; it pours and splatters, but resists rapid motion like a solid and will even crack when hit by a hammer. Often found near lasers.

Here is a field-tested ooblick recipe contributed by GLS:

1 cup cornstarch 1 cup baking soda 3/4 cup water N drops of food coloring

This recipe isn't quite as non-Newtonian as a pure cornstarch ooblick, but has an appropriately slimy feel.

Some, however, insist that the notion of an ooblick *recipe* is far too mechanical, and that it is best to add the water in small increments so that the various mixed states the cornstarch goes through as it *becomes* ooblick can be grokked in fullness by many hands. For optional ingredients of this experience, see the "{Ceremonial Chemicals}" section of Appendix B.

:op: /op/ /n./ 1. In England and Ireland, common verbal abbreviation for `operator', as in system operator. Less common in the U.S., where {sysop} seems to be preferred. 2. [IRC] Someone who is endowed with privileges on {IRC}, not limited to a particular channel. These are generally people who are in charge of the IRC server at their particular site. Sometimes used interchangeably with {CHOP}. Compare {sysop}.

:open: /n./ Abbreviation for `open (or left) parenthesis' —- used when necessary to eliminate oral ambiguity. To read aloud the LISP form (DEFUN FOO (X) (PLUS X 1)) one might say: "Open defun foo, open eks close, open, plus eks one, close close."

:Open DeathTrap: /n./ Abusive hackerism for the Santa Cruz Operation's `Open DeskTop' product, a Motif-based graphical interface over their Unix. The funniest part is that this was coined by SCO's own developers…. Compare {AIDX}, {Macintrash} {Nominal Semidestructor}, {ScumOS}, {sun-stools}, {HP-SUX}.

:open switch: /n./ [IBM: prob. from railroading] An unresolved question, issue, or problem.

:operating system:: /n./ [techspeak] (Often abbreviated `OS') The foundation software of a machine, of course; that which schedules tasks, allocates storage, and presents a default interface to the user between applications. The facilities an operating system provides and its general design philosophy exert an extremely strong influence on programming style and on the technical cultures that grow up around its host machines. Hacker folklore has been shaped primarily by the {{Unix}}, {{ITS}}, {{TOPS-10}}, {{TOPS-20}}/{{TWENEX}}, {{WAITS}}, {{CP/M}}, {{MS-DOS}}, and {{Multics}} operating systems (most importantly by ITS and Unix).

:optical diff: /n./ See {vdiff}.

:optical grep: /n./ See {vgrep}.

:optimism: /n./ What a programmer is full of after fixing the last bug and before discovering the *next* last bug. Fred Brooks's book "The Mythical Man-Month" (See "Brooks's Law") contains the following paragraph that describes this extremely well:

Explore with AITake your curiosity a little further.

Reading settings