home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-06-03 | 851.9 KB | 16,377 lines |
- = A =
-
- abbrev: /*-breev'/, /*-brev'/ n. Common abbreviation for
- `abbreviation'.
-
- ABEND: [ABnormal END] /ah'bend/, /*-bend'/ n. Abnormal
- termination (of software); {crash}; {lossage}. Derives from an
- error message on the IBM 360; used jokingly by hackers but
- seriously mainly by {code grinder}s. Usually capitalized, but may
- appear as `abend'. Hackers will try to persuade you that ABEND is
- called `abend' because it is what system operators do to the
- machine late on Friday when they want to call it a day, and hence
- is from the German `Abend' = `Evening'.
-
- accumulator: n. 1. Archaic term for a register. On-line use of it
- as a synonym for `register' is a fairly reliable indication that
- the user has been around for quite a while and/or that the
- architecture under discussion is quite old. The term in full is
- almost never used of microprocessor registers, for example, though
- symbolic names for arithmetic registers beginning in `A' derive
- from historical use of the term `accumulator' (and not, actually,
- from `arithmetic'). Confusingly, though, an `A' register name
- prefix may also stand for `address', as for example on the
- Motorola 680x0 family. 2. A register being used for arithmetic or
- logic (as opposed to addressing or a loop index), especially one
- being used to accumulate a sum or count of many items. This use is
- in context of a particular routine or stretch of code. "The
- FOOBAZ routine uses A3 as an accumulator." 3. One's in-basket
- (esp. among old-timers who might use sense 1). "You want this
- reviewed? Sure, just put it in the accumulator." (See {stack}.)
-
- ACK: /ak/ interj. 1. [from the ASCII mnemonic for 0000110]
- Acknowledge. Used to register one's presence (compare mainstream
- *Yo!*). An appropriate response to {ping} or {ENQ}.
- 2. [from the comic strip "Bloom County"] An exclamation of
- surprised disgust, esp. in "Ack pffft!" Semi-humorous.
- Generally this sense is not spelled in caps (ACK) and is
- distinguished by a following exclamation point. 3. Used to
- politely interrupt someone to tell them you understand their point
- (see {NAK}). Thus, for example, you might cut off an overly
- long explanation with "Ack. Ack. Ack. I get it now".
-
- There is also a usage "ACK?" (from sense 1) meaning "Are you
- there?", often used in email when earlier mail has produced no
- reply, or during a lull in {talk mode} to see if the person has
- gone away (the standard humorous response is of course {NAK}
- (sense 2), i.e., "I'm not here").
-
- ad-hockery: /ad-hok'*r-ee/ [Purdue] n. 1. Gratuitous assumptions
- made inside certain programs, esp. expert systems, which lead to
- the appearance of semi-intelligent behavior but are in fact
- entirely arbitrary. For example, fuzzy-matching input tokens that
- might be typing errors against a symbol table can make it look as
- though a program knows how to spell. 2. Special-case code to cope
- with some awkward input that would otherwise cause a program to
- {choke}, presuming normal inputs are dealt with in some cleaner
- and more regular way. Also called `ad-hackery', `ad-hocity'
- (/ad-hos'*-tee/). See also {ELIZA effect}.
-
- Ada:: n. A {{Pascal}}-descended language that has been made
- mandatory for Department of Defense software projects by the
- Pentagon. Hackers are nearly unanimous in observing that,
- technically, it is precisely what one might expect given that kind
- of endorsement by fiat; designed by committee, crockish, difficult
- to use, and overall a disastrous, multi-billion-dollar boondoggle
- (one common description is "The PL/I of the 1980s"). Hackers
- find Ada's exception-handling and inter-process communication
- features particularly hilarious. Ada Lovelace (the daughter of
- Lord Byron who became the world's first programmer while
- cooperating with Charles Babbage on the design of his mechanical
- computing engines in the mid-1800s) would almost certainly blanch
- at the use to which her name has latterly been put; the kindest
- thing that has been said about it is that there is probably a good
- small language screaming to get out from inside its vast,
- {elephantine} bulk.
-
- adger: /aj'r/ [UCLA] vt. To make a bonehead move with consequences
- that could have been foreseen with a slight amount of mental
- effort. E.g., "He started removing files and promptly adgered the
- whole project". Compare {dumbass attack}.
-
- admin: /ad-min'/ n. Short for `administrator'; very commonly
- used in speech or on-line to refer to the systems person in charge
- on a computer. Common constructions on this include `sysadmin'
- and `site admin' (emphasizing the administrator's role as a site
- contact for email and news) or `newsadmin' (focusing specifically
- on news). Compare {postmaster}, {sysop}, {system
- mangler}.
-
- ADVENT: /ad'vent/ n. The prototypical computer adventure game, first
- implemented on the {PDP-10} by Will Crowther as an attempt at
- computer-refereed fantasy gaming, and expanded into a
- puzzle-oriented game by Don Woods. Now better known as Adventure,
- but the {{TOPS-10}} operating system permitted only 6-letter
- filenames. See also {vadding}.
-
- This game defined the terse, dryly humorous style now expected in
- text adventure games, and popularized several tag lines that have
- become fixtures of hacker-speak: "A huge green fierce snake bars
- the way!" "I see no X here" (for some noun X). "You are in a
- maze of twisty little passages, all alike." "You are in a little
- maze of twisty passages, all different." The `magic words'
- {xyzzy} and {plugh} also derive from this game.
-
- Crowther, by the way, participated in the exploration of the
- Mammoth & Flint Ridge cave system; it actually *has* a
- `Colossal Cave' and a `Bedquilt' as in the game, and the `Y2' that
- also turns up is cavers' jargon for a map reference to a secondary
- entrance.
-
- AI-complete: /A-I k*m-pleet'/ [MIT, Stanford: by analogy with
- `NP-complete' (see {NP-})] adj. Used to describe problems or
- subproblems in AI, to indicate that the solution presupposes a
- solution to the `strong AI problem' (that is, the synthesis of a
- human-level intelligence). A problem that is AI-complete is, in
- other words, just too hard.
-
- Examples of AI-complete problems are `The Vision Problem'
- (building a system that can see as well as a human) and `The
- Natural Language Problem' (building a system that can understand
- and speak a natural language as well as a human). These may appear
- to be modular, but all attempts so far (1991) to solve them have
- foundered on the amount of context information and `intelligence'
- they seem to require. See also {gedanken}.
-
- AI koans: /A-I koh'anz/ pl.n. A series of pastiches of Zen
- teaching riddles created by Danny Hillis at the MIT AI Lab around
- various major figures of the Lab's culture (several are included in
- appendix A). See also {ha ha only serious}, {mu}, and
- {{Humor, Hacker}}.
-
- AIDS: /aydz/ n. Short for A* Infected Disk Syndrome (`A*' is a
- {glob} pattern that matches, but is not limited to, Apple),
- this condition is quite often the result of practicing unsafe
- {SEX}. See {virus}, {worm}, {Trojan horse},
- {virgin}.
-
- airplane rule: n. "Complexity increases the possibility of
- failure; a twin-engine airplane has twice as many engine problems
- as a single-engine airplane." By analogy, in both software and
- electronics, the rule that simplicity increases robustness (see
- also {KISS Principle}). It is correspondingly argued that the
- right way to build reliable systems is to put all your eggs in one
- basket, after making sure that you've built a really *good*
- basket.
-
- aliasing bug: n. A class of subtle programming errors that can
- arise in code that does dynamic allocation, esp. via
- `malloc(3)' or equivalent. If more than one pointer addresses
- (`aliases for') a given hunk of storage, it may happen that the
- storage is freed through one alias and then referenced through
- another, which may lead to subtle (and possibly intermittent) lossage
- depending on the state and the allocation history of the malloc
- {arena}. Avoidable by use of allocation strategies that never
- alias allocated core. Also avoidable by use of higher-level
- languages, such as {LISP}, which employ a garbage collector
- (see {GC}). Also called a {stale pointer bug}. See also
- {precedence lossage}, {smash the stack}, {fandango on core},
- {memory leak}, {overrun screw}, {spam}.
-
- Historical note: Though this term is nowadays associated with
- C programming, it was already in use in a very similar sense in the
- Algol-60 and FORTRAN communities in the 1960s.
-
- all-elbows: adj. Of a TSR (terminate-and-stay-resident) IBM PC
- program, such as the N pop-up calendar and calculator utilities
- that circulate on {BBS} systems: unsociable. Used to describe a
- program that rudely steals the resources that it needs without
- considering that other TSRs may also be resident. One particularly
- common form of rudeness is lock-up due to programs fighting over
- the keyboard interrupt. See also {mess-dos}.
-
- alpha particles: n. See {bit rot}.
-
- ALT: /awlt/ 1. n. The ALT shift key on an IBM PC or {clone}.
- 2. [possibly lowercased] n. The `clover' or `Command' key on a
- Macintosh; use of this term usually reveals that the speaker hacked
- PCs before coming to the Mac (see also {command key}). Some Mac
- hackers, confusingly, reserve `ALT' for the Option key. 3. n.obs.
- [PDP-10] Alternate name for the ASCII ESC character (ASCII
- 0011011), after the keycap labeling on some older terminals. Also
- `ALTMODE' (/awlt'mohd/). This character was almost never
- pronounced `escape' on an ITS system, in {TECO}, or under
- TOPS-10 --- always ALT, as in "Type ALT ALT to end a TECO
- command" or "ALT U onto the system" (for "log onto the [ITS]
- system"). This was probably because ALT is more convenient to say
- than `escape', especially when followed by another ALT or a
- character (or another ALT *and* a character, for that matter).
-
- alt bit: /awlt bit/ [from alternate] adj. See {meta bit}.
-
- Aluminum Book: [MIT] n. `Common LISP: The Language', by
- Guy L. Steele Jr. (Digital Press, first edition 1984, second
- edition 1990). Note that due to a technical screwup some printings
- of the second edition are actually of a color the author describes
- succinctly as "yucky green". See also {{book titles}}.
-
- amoeba: n. Humorous term for the Commodore Amiga personal computer.
-
- amp off: [Purdue] vt. To run in {background}. From the UNIX shell `&'
- operator.
-
- amper: n. Common abbreviation for the name of the ampersand (`&',
- ASCII 0100110) character. See {ASCII} for other synonyms.
-
- angle brackets: n. Either of the characters `<' (ASCII
- 0111100) and `>' (ASCII 0111110) (ASCII less-than or
- greater-than signs). The {Real World} angle brackets used by
- typographers are actually taller than a less-than or greater-than
- sign.
- See {broket}, {{ASCII}}.
-
- angry fruit salad: n. A bad visual-interface design that uses too
- many colors. This derives, of course, from the bizarre day-glo
- colors found in canned fruit salad. Too often one sees similar
- affects from interface designers using color window systems such as
- {X}; there is a tendency to create displays that are flashy and
- attention-getting but uncomfortable for long-term use.
-
- AOS: 1. /aws/ (East Coast), /ay-os/ (West Coast) [based on a
- PDP-10 increment instruction] vt.,obs. To increase the amount of
- something. "AOS the campfire." Usage: considered silly, and now
- obsolete. Now largely supplanted by {bump}. See {SOS}. 2. A
- {{Multics}}-derived OS supported at one time by Data General. This
- was pronounced /A-O-S/ or /A-os/. A spoof of the standard
- AOS system administrator's manual (`How to load and generate
- your AOS system') was created, issued a part number, and circulated
- as photocopy folklore. It was called `How to goad and
- levitate your chaos system'. 3. Algebraic Operating System, in
- reference to those calculators which use infix instead of postfix
- (reverse Polish) notation.
-
- Historical note: AOS in sense 1 was the name of a {PDP-10}
- instruction that took any memory location in the computer and added
- 1 to it; AOS meant `Add One and do not Skip'. Why, you may ask,
- does the `S' stand for `do not Skip' rather than for `Skip'? Ah,
- here was a beloved piece of PDP-10 folklore. There were eight such
- instructions: AOSE added 1 and then skipped the next instruction
- if the result was Equal to zero; AOSG added 1 and then skipped if
- the result was Greater than 0; AOSN added 1 and then skipped
- if the result was Not 0; AOSA added 1 and then skipped Always;
- and so on. Just plain AOS didn't say when to skip, so it never
- skipped.
-
- For similar reasons, AOJ meant `Add One and do not Jump'. Even
- more bizarre, SKIP meant `do not SKIP'! If you wanted to skip the
- next instruction, you had to say `SKIPA'. Likewise, JUMP meant
- `do not JUMP'; the unconditional form was JUMPA. However, hackers
- never did this. By some quirk of the 10's design, the {JRST}
- (Jump and ReSTore flag with no flag specified) was actually faster
- and so was invariably used. Such were the perverse mysteries of
- assembler programming.
-
- app: /ap/ n. Short for `application program', as opposed to a
- systems program. What systems vendors are forever chasing
- developers to create for their environments so they can sell more
- boxes. Hackers tend not to think of the things they themselves run
- as apps; thus, in hacker parlance the term excludes compilers,
- program editors, games, and messaging systems, though a user would
- consider all those to be apps. Oppose {tool}, {operating
- system}.
-
- arc: [primarily MSDOS] vt. To create a compressed {archive} from a
- group of files using SEA ARC, PKWare PKARC, or a compatible
- program. Rapidly becoming obsolete as the ARC compression method
- is falling into disuse, having been replaced by newer compression
- techniques. See {tar and feather}, {zip}.
-
- arc wars: [primarily MSDOS] n. {holy wars} over which archiving
- program one should use. The first arc war was sparked when System
- Enhancement Associates (SEA) sued PKWare for copyright and
- trademark infringement on its ARC program. PKWare's PKARC
- outperformed ARC on both compression and speed while largely
- retaining compatibility (it introduced a new compression type that
- could be disabled for backward-compatibility). PKWare settled out
- of court to avoid enormous legal costs (both SEA and PKWare are
- small companies); as part of the settlement, the name of PKARC was
- changed to PKPAK. The public backlash against SEA for bringing
- suit helped to hasten the demise of ARC as a standard when PKWare
- and others introduced new, incompatible archivers with better
- compression algorithms.
-
- archive: n. 1. A collection of several files bundled into one file
- by a program such as `ar(1)', `tar(1)', `cpio(1)',
- or {arc} for shipment or archiving (sense 2). See also {tar
- and feather}. 2. A collection of files or archives (sense 1) made
- available from an `archive site' via {FTP} or an email server.
-
- arena: [UNIX] n. The area of memory attached to a process by
- `brk(2)' and `sbrk(2)' and used by `malloc(3)' as
- dynamic storage. So named from a semi-mythical `malloc:
- corrupt arena' message supposedly emitted when some early versions
- became terminally confused. See {overrun screw}, {aliasing
- bug}, {memory leak}, {smash the stack}.
-
- arg: /arg/ n. Abbreviation for `argument' (to a function),
- used so often as to have become a new word (like `piano' from
- `pianoforte'). "The sine function takes 1 arg, but the
- arc-tangent function can take either 1 or 2 args." Compare
- {param}, {parm}, {var}.
-
- armor-plated: n. Syn. for {bulletproof}.
-
- asbestos: adj. Used as a modifier to anything intended to protect
- one from {flame}s. Important cases of this include {asbestos
- longjohns} and {asbestos cork award}, but it is used more
- generally.
-
- asbestos cork award: n. Once, long ago at MIT, there was a {flamer}
- so consistently obnoxious that another hacker designed, had made,
- and distributed posters announcing that said flamer had been
- nominated for the `asbestos cork award'. Persons in any doubt as
- to the intended application of the cork should consult the
- etymology under {flame}. Since then, it is agreed that only a
- select few have risen to the heights of bombast required to earn
- this dubious dignity --- but there is no agreement on *which*
- few.
-
- asbestos longjohns: n. Notional garments often donned by {USENET}
- posters just before emitting a remark they expect will elicit
- {flamage}. This is the most common of the {asbestos} coinages.
- Also `asbestos underwear', `asbestos overcoat', etc.
-
- ASCII:: [American Standard Code for Information Interchange]
- /as'kee/ n. The predominant character set encoding of present-day
- computers. Uses 7 bits for each character, whereas most earlier
- codes (including an early version of ASCII) used fewer. This
- change allowed the inclusion of lowercase letters --- a major
- {win} --- but it did not provide for accented letters or any
- other letterforms not used in English (such as the German sharp-S
- and the ae-ligature
- which is a letter in, for example, Norwegian). It could be worse,
- though. It could be much worse. See {{EBCDIC}} to understand how.
-
- Computers are much pickier and less flexible about spelling than
- humans; thus, hackers need to be very precise when talking about
- characters, and have developed a considerable amount of verbal
- shorthand for them. Every character has one or more names --- some
- formal, some concise, some silly. Common jargon names for ASCII
- characters are collected here. See also individual entries for
- {bang}, {excl}, {open}, {ques}, {semi}, {shriek},
- {splat}, {twiddle}, and {Yu-Shiang Whole Fish}.
-
- This list derives from revision 2.3 of the USENET ASCII
- pronunciation guide. Single characters are listed in ASCII order;
- character pairs are sorted in by first member. For each character,
- common names are given in rough order of popularity, followed by
- names that are reported but rarely seen; official ANSI/CCITT names
- are surrounded by brokets: <>. Square brackets mark the
- particularly silly names introduced by {INTERCAL}. Ordinary
- parentheticals provide some usage information.
-
- !
- Common: {bang}; pling; excl; shriek; <exclamation mark>.
- Rare: factorial; exclam; smash; cuss; boing; yell; wow; hey;
- wham; [spark-spot]; soldier.
-
- "
- Common: double quote; quote. Rare: literal mark;
- double-glitch; <quotation marks>; <dieresis>; dirk;
- [rabbit-ears]; double prime.
-
- #
- Common: <number sign>; pound; pound sign; hash; sharp;
- {crunch}; hex; [mesh]; octothorpe. Rare: flash; crosshatch;
- grid; pig-pen; tictactoe; scratchmark; thud; thump; {splat}.
-
- $
- Common: dollar; <dollar sign>. Rare: currency symbol; buck;
- cash; string (from BASIC); escape (when used as the echo of
- ASCII ESC); ding; cache; [big money].
-
- %
- Common: percent; <percent sign>; mod; grapes. Rare:
- [double-oh-seven].
-
- &
- Common: <ampersand>; amper; and. Rare: address (from C);
- reference (from C++); andpersand; bitand; background (from
- `sh(1)'); pretzel; amp. [INTERCAL called this `ampersand';
- what could be sillier?]
-
- '
- Common: single quote; quote; <apostrophe>. Rare: prime;
- glitch; tick; irk; pop; [spark]; <closing single quotation
- mark>; <acute accent>.
-
- ()
- Common: left/right paren; left/right parenthesis; left/right; paren/thesis;
- open/close paren; open/close; open/close parenthesis; left/right banana.
- Rare: so/al-ready; lparen/rparen; <opening/closing parenthesis>;
- open/close round bracket, parenthisey/unparenthisey; [wax/wane];
- left/right ear.
-
- *
- Common: star; [{splat}]; <asterisk>. Rare: wildcard; gear;
- dingle; mult; spider; aster; times; twinkle; glob (see
- {glob}); {Nathan Hale}.
-
- +
- Common: <plus>; add. Rare: cross; [intersection].
-
- ,
- Common: <comma>. Rare: <cedilla>; [tail].
-
- -
- Common: dash; <hyphen>; <minus>. Rare: [worm]; option; dak;
- bithorpe.
-
- .
- Common: dot; point; <period>; <decimal point>. Rare: radix
- point; full stop; [spot].
-
- /
- Common: slash; stroke; <slant>; forward slash. Rare:
- diagonal; solidus; over; slak; virgule; [slat].
-
- :
- Common: <colon>. Rare: dots; [two-spot].
-
- ;
- Common: <semicolon>; semi. Rare: weenie; [hybrid],
- pit-thwong.
-
- <>
- Common: <less/greater than>; left/right angle bracket;
- bra/ket; left/right broket. Rare: from/{into, towards}; read
- from/write to; suck/blow; comes-from/gozinta; in/out;
- crunch/zap (all from UNIX); [angle/right angle].
-
- =
- Common: <equals>; gets; takes. Rare: quadrathorpe;
- [half-mesh].
-
- ?
- Common: query; <question mark>; {ques}. Rare: whatmark;
- [what]; wildchar; huh; hook; buttonhook; hunchback.
-
- @
- Common: at sign; at; strudel. Rare: each; vortex; whorl;
- [whirlpool]; cyclone; snail; ape; cat; rose; cabbage;
- <commercial at>.
-
- V
- Rare: [book].
-
- []
- Common: left/right square bracket; <opening/closing bracket>;
- bracket/unbracket; left/right bracket. Rare: square/unsquare;
- [U turn/U turn back].
-
- \
- Common: backslash; escape (from C/UNIX); reverse slash; slosh;
- backslant; backwhack. Rare: bash; <reverse slant>; reversed
- virgule; [backslat].
-
- ^
- Common: hat; control; uparrow; caret; <circumflex>. Rare:
- chevron; [shark (or shark-fin)]; to the (`to the power of');
- fang; pointer (in Pascal).
-
- _
- Common: <underline>; underscore; underbar; under. Rare:
- score; backarrow; [flatworm].
-
- `
- Common: backquote; left quote; left single quote; open quote;
- <grave accent>; grave. Rare: backprime; [backspark];
- unapostrophe; birk; blugle; back tick; back glitch; push;
- <opening single quotation mark>; quasiquote.
-
- {}
- Common: open/close brace; left/right brace; left/right
- squiggly; left/right squiggly bracket/brace; left/right curly
- bracket/brace; <opening/closing brace>. Rare: brace/unbrace;
- curly/uncurly; leftit/rytit; left/right squirrelly;
- [embrace/bracelet].
-
- |
- Common: bar; or; or-bar; v-bar; pipe; vertical bar. Rare:
- <vertical line>; gozinta; thru; pipesinta (last three from
- UNIX); [spike].
-
- ~
- Common: <tilde>; squiggle; {twiddle}; not. Rare: approx;
- wiggle; swung dash; enyay; [sqiggle (sic)].
-
- The pronunciation of `#' as `pound' is common in the U.S. but
- a bad idea; {{Commonwealth Hackish}} has its own, rather more apposite
- use of `pound sign' (confusingly, on British keyboards the pound
- graphic
- happens to replace `#'; thus Britishers sometimes call `#'
- on a U.S.-ASCII keyboard `pound', compounding the American error).
- The U.S. usage derives from an old-fashioned commercial practice of
- using a `#' suffix to tag pound weights on bills of lading.
- The character is usually pronounced `hash' outside the U.S.
-
- The `uparrow' name for circumflex and `leftarrow' name for
- underline are historical relics from archaic ASCII (the 1963
- version), which had these graphics in those character positions
- rather than the modern punctuation characters.
-
- The `swung dash' or `approximation' sign is not quite the same
- as tilde in typeset material
- but the ASCII tilde serves for both (compare {angle
- brackets}).
-
- Some other common usages cause odd overlaps. The `#',
- `$', `>', and `&' characters, for example, are all
- pronounced "hex" in different communities because various
- assemblers use them as a prefix tag for hexadecimal constants (in
- particular, `#' in many assembler-programming cultures,
- `$' in the 6502 world, `>' at Texas Instruments, and
- `&' on the BBC Micro, Sinclair, and some Z80 machines). See
- also {splat}.
-
- The inability of ASCII text to correctly represent any of the
- world's other major languages makes the designers' choice of 7 bits
- look more and more like a serious {misfeature} as the use of
- international networks continues to increase (see {software
- rot}). Hardware and software from the U.S. still tends to embody
- the assumption that ASCII is the universal character set; this is a
- a major irritant to people who want to use a character set suited
- to their own languages. Perversely, though, efforts to solve this
- problem by proliferating `national' character sets produce an
- evolutionary pressure to use a *smaller* subset common to all
- those in use.
-
-
- ASCII art: n. The fine art of drawing diagrams using the ASCII
- character set (mainly `|', `-', `/', `\', and
- `+'). Also known as `character graphics' or `ASCII
- graphics'; see also {boxology}. Here is a serious example:
-
-
- o----)||(--+--|<----+ +---------o + D O
- L )||( | | | C U
- A I )||( +-->|-+ | +-\/\/-+--o - T
- C N )||( | | | | P
- E )||( +-->|-+--)---+--)|--+-o U
- )||( | | | GND T
- o----)||(--+--|<----+----------+
-
- A power supply consisting of a full
- wave rectifier circuit feeding a
- capacitor input filter circuit
-
- Figure 1.
-
- And here are some very silly examples:
-
-
- |\/\/\/| ____/| ___ |\_/| ___
- | | \ o.O| ACK! / \_ |` '| _/ \
- | | =(_)= THPHTH! / \/ \/ \
- | (o)(o) U / \
- C _) (__) \/\/\/\ _____ /\/\/\/
- | ,___| (oo) \/ \/
- | / \/-------\ U (__)
- /____\ || | \ /---V `v'- oo )
- / \ ||---W|| * * |--| || |`. |_/\
-
- Figure 2.
-
- There is an important subgenre of humorous ASCII art that takes
- advantage of the names of the various characters to tell a
- pun-based joke.
-
- +--------------------------------------------------------+
- | ^^^^^^^^^^^^ |
- | ^^^^^^^^^^^ ^^^^^^^^^ |
- | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^ |
- | ^^^^^^^ B ^^^^^^^^^ |
- | ^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^ |
- +--------------------------------------------------------+
- " A Bee in the Carrot Patch "
-
- Figure 3.
-
- Within humorous ASCII art, there is for some reason an entire
- flourishing subgenre of pictures of silly cows. Four of these are
- reproduced in Figure 2; here are three more:
-
-
- (__) (__) (__)
- (\/) ($$) (**)
- /-------\/ /-------\/ /-------\/
- / | 666 || / |=====|| / | ||
- * ||----|| * ||----|| * ||----||
- ~~ ~~ ~~ ~~ ~~ ~~
- Satanic cow This cow is a Yuppie Cow in love
-
- Figure 4.
-
- attoparsec: n. `atto-' is the standard SI prefix for
- multiplication by 10^{-18}. A parsec (parallax-second) is
- 3.26 light-years; an attoparsec is thus 3.26 * 10^{-18} light
- years, or about 3.1 cm (thus, 1 attoparsec/{microfortnight}
- equals about 1 inch/sec). This unit is reported to be in use
- (though probably not very seriously) among hackers in the U.K. See
- {micro-}.
-
- autobogotiphobia: /aw'to-boh-got`*-foh'bee-*/ n. See {bogotify}.
-
- automagically: /aw-toh-maj'i-klee/ or /aw-toh-maj'i-k*l-ee/ adv.
- Automatically, but in a way that, for some reason (typically
- because it is too complicated, or too ugly, or perhaps even too
- trivial), the speaker doesn't feel like explaining to you. See
- {magic}. "The C-INTERCAL compiler generates C, then automagically
- invokes `cc(1)' to produce an executable."
-
- avatar: [CMU, Tektronix] n. Syn. {root}, {superuser}. There
- are quite a few UNIX machines on which the name of the superuser
- account is `avatar' rather than `root'. This quirk was
- originated by a CMU hacker who disliked the term `superuser',
- and was propagated through an ex-CMU hacker at Tektronix.
-
- awk: 1. n. [UNIX techspeak] An interpreted language for massaging
- text data developed by Alfred Aho, Peter Weinberger, and Brian
- Kernighan (the name is from their initials). It is characterized
- by C-like syntax, a declaration-free approach to variable typing
- and declarations, associative arrays, and field-oriented text
- processing. See also {Perl}. 2. n. Editing term for an
- expression awkward to manipulate through normal {regexp}
- facilities (for example, one containing a {newline}). 3. vt. To
- process data using `awk(1)'.
-
- = B =
-
- back door: n. A hole in the security of a system deliberately left
- in place by designers or maintainers. The motivation for this is
- not always sinister; some operating systems, for example, come out
- of the box with privileged accounts intended for use by field
- service technicians or the vendor's maintenance programmers.
-
- Historically, back doors have often lurked in systems longer than
- anyone expected or planned, and a few have become widely known.
- The infamous {RTM} worm of late 1988, for example, used a back door
- in the {BSD} UNIX `sendmail(8)' utility.
-
- Ken Thompson's 1983 Turing Award lecture to the ACM revealed the
- existence of a back door in early UNIX versions that may have
- qualified as the most fiendishly clever security hack of all time.
- The C compiler contained code that would recognize when the
- `login' command was being recompiled and insert some code
- recognizing a password chosen by Thompson, giving him entry to the
- system whether or not an account had been created for him.
-
- Normally such a back door could be removed by removing it from the
- source code for the compiler and recompiling the compiler. But to
- recompile the compiler, you have to *use* the compiler --- so
- Thompson also arranged that the compiler would *recognize when
- it was compiling a version of itself*, and insert into the
- recompiled compiler the code to insert into the recompiled `login'
- the code to allow Thompson entry --- and, of course, the code to
- recognize itself and do the whole thing again the next time around!
- And having done this once, he was then able to recompile the
- compiler from the original sources, leaving his back door in place
- and active but with no trace in the sources.
-
- The talk that revealed this truly moby hack was published as
- "Reflections on Trusting Trust", `Communications of the
- ACM 27', 8 (August 1984), pp. 761--763.
-
- Syn. {trap door}; may also be called a `wormhole'. See also
- {iron box}, {cracker}, {worm}, {logic bomb}.
-
- backbone cabal: n. A group of large-site administrators who pushed
- through the {Great Renaming} and reined in the chaos of {USENET}
- during most of the 1980s. The cabal {mailing list} disbanded in
- late 1988 after a bitter internal catfight, but the net hardly
- noticed.
-
- backbone site: n. A key USENET and email site; one that processes
- a large amount of third-party traffic, especially if it is the home
- site of any of the regional coordinators for the USENET maps.
- Notable backbone sites as of early 1991 include uunet and the
- mail machines at Rutgers University, UC Berkeley, DEC's Western
- Research Laboratories, Ohio State University, and the University of
- Texas. Compare {rib site}, {leaf site}.
-
- backgammon:: See {bignum}, {moby}, and {pseudoprime}.
-
- background: n.,adj.,vt. To do a task `in background' is to do
- it whenever {foreground} matters are not claiming your undivided
- attention, and `to background' something means to relegate it to
- a lower priority. "For now, we'll just print a list of nodes and
- links; I'm working on the graph-printing problem in background."
- Note that this implies ongoing activity but at a reduced level or
- in spare time, in contrast to mainstream `back burner' (which
- connotes benign neglect until some future resumption of activity).
- Some people prefer to use the term for processing that they have
- queued up for their unconscious minds (a tack that one can often
- fruitfully take upon encountering an obstacle in creative work).
- Compare {amp off}, {slopsucker}.
-
- Technically, a task running in background is detached from the
- terminal where it was started (and often running at a lower
- priority); oppose {foreground}. Nowadays this term is primarily
- associated with {{UNIX}}, but it appears to have been first used
- in this sense on OS/360.
-
- backspace and overstrike: interj. Whoa! Back up. Used to suggest
- that someone just said or did something wrong. Common among
- APL programmers.
-
- backward combatability: /bak'w*rd k*m-bat'*-bil'*-tee/ [from
- `backward compatibility'] n. A property of hardware or software
- revisions in which previous protocols, formats, and layouts are
- discarded in favor of `new and improved' protocols, formats, and
- layouts. Occurs usually when making the transition between major
- releases. When the change is so drastic that the old formats are
- not retained in the new version, it is said to be `backward
- combatable'. See {flag day}.
-
- BAD: /B-A-D/ [IBM: acronym, `Broken As Designed'] adj. Said
- of a program that is {bogus} because of bad design and misfeatures
- rather than because of bugginess. See {working as designed}.
-
- Bad Thing: [from the 1930 Sellar & Yeatman parody `1066 And
- All That'] n. Something that can't possibly result in improvement
- of the subject. This term is always capitalized, as in "Replacing
- all of the 9600-baud modems with bicycle couriers would be a Bad
- Thing". Oppose {Good Thing}. British correspondents confirm
- that {Bad Thing} and {Good Thing} (and prob. therefore {Right
- Thing} and {Wrong Thing}) come from the book referenced in the
- etymology, which discusses rulers who were Good Kings but Bad
- Things. This has apparently created a mainstream idiom on the
- British side of the pond.
-
- bag on the side: n. An extension to an established hack that is
- supposed to add some functionality to the original. Usually
- derogatory, implying that the original was being overextended and
- should have been thrown away, and the new product is ugly,
- inelegant, or bloated. Also v. phrase, `to hang a bag on the side
- [of]'. "C++? That's just a bag on the side of C ...." "They
- want me to hang a bag on the side of the accounting system."
-
- bagbiter: /bag'bi:t-*r/ n. 1. Something, such as a program or a
- computer, that fails to work, or works in a remarkably clumsy
- manner. "This text editor won't let me make a file with a line
- longer than 80 characters! What a bagbiter!" 2. A person who has
- caused you some trouble, inadvertently or otherwise, typically by
- failing to program the computer properly. Synonyms: {loser},
- {cretin}, {chomper}. 3. adj. `bagbiting' Having the
- quality of a bagbiter. "This bagbiting system won't let me
- compute the factorial of a negative number." Compare {losing},
- {cretinous}, {bletcherous}, `barfucious' (under
- {barfulous}) and `chomping' (under {chomp}). 4. `bite
- the bag' vi. To fail in some manner. "The computer keeps crashing
- every 5 minutes." "Yes, the disk controller is really biting the
- bag." The original loading of these terms was almost undoubtedly
- obscene, possibly referring to the scrotum, but in their current
- usage they have become almost completely sanitized.
-
- A program called Lexiphage on the old MIT AI PDP-10 would draw on
- a selected victim's bitmapped terminal the words "THE BAG" in
- ornate letters, and then a pair of jaws biting pieces of it off.
- This is the first and to date only known example of a program
- *intended* to be a bagbiter.
-
- bamf: /bamf/ 1. [from old X-Men comics] interj. Notional sound made
- by a person or object teleporting in or out of the hearer's
- vicinity. Often used in {virtual reality} (esp. {MUD})
- electronic {fora} when a character wishes to make a dramatic entrance
- or exit. 2. The sound of magical transformation, used in virtual
- reality {fora} like sense 1. 3. [from `Don Washington's
- Survival Guide'] n. Acronym for `Bad-Ass Mother Fucker', used to
- refer to one of the handful of nastiest monsters on an LPMUD or
- other similar MUD.
-
- banana label: n. The labels often used on the sides of {macrotape}
- reels, so called because they are shaped roughly like blunt-ended
- bananas. This term, like macrotapes themselves, is still current
- but visibly headed for obsolescence.
-
- banana problem: n. [from the story of the little girl who said "I
- know how to spell `banana', but I don't know when to stop"]. Not
- knowing where or when to bring a production to a close (compare
- {fencepost error}). One may say `there is a banana problem' of an
- algorithm with poorly defined or incorrect termination conditions,
- or in discussing the evolution of a design that may be succumbing
- to featuritis (see also {creeping elegance}, {creeping
- featuritis}). See item 176 under {HAKMEM}, which describes a
- banana problem in a {Dissociated Press} implementation.
-
- bandwidth: n. 1. Used by hackers in a generalization of its
- technical meaning as the volume of information per unit time that a
- computer, person, or transmission medium can handle. "Those are
- amazing graphics, but I missed some of the detail --- not enough
- bandwidth, I guess." Compare {low-bandwidth}. 2. Attention
- span. 3. On {USENET}, a measure of network capacity that is
- often wasted by people complaining about how items posted by others
- are a waste of bandwidth.
-
- bang: 1. n. Common spoken name for `!' (ASCII 0100001),
- especially when used in pronouncing a {bang path} in spoken
- hackish. In {elder days} this was considered a CMUish usage,
- with MIT and Stanford hackers preferring {excl} or {shriek};
- but the spread of UNIX has carried `bang' with it (esp. via the
- term {bang path}) and it is now certainly the most common spoken
- name for `!'. Note that it is used exclusively for
- non-emphatic written `!'; one would not say "Congratulations
- bang" (except possibly for humorous purposes), but if one wanted
- to specify the exact characters `foo!' one would speak "Eff oh oh
- bang". See {shriek}, {{ASCII}}. 2. interj. An exclamation
- signifying roughly "I have achieved enlightenment!", or "The
- dynamite has cleared out my brain!" Often used to acknowledge
- that one has perpetrated a {thinko} immediately after one has
- been called on it.
-
- bang on: vt. To stress-test a piece of hardware or software: "I
- banged on the new version of the simulator all day yesterday and it
- didn't crash once. I guess it is ready to release." The term
- {pound on} is synonymous.
-
- bang path: n. An old-style UUCP electronic-mail address specifying
- hops to get from some assumed-reachable location to the addressee,
- so called because each {hop} is signified by a {bang} sign.
- Thus, for example, the path ...!bigsite!foovax!barbox!me
- directs people to route their mail to machine bigsite (presumably
- a well-known location accessible to everybody) and from there
- through the machine foovax to the account of user me on
- barbox.
-
- In the bad old days of not so long ago, before autorouting mailers
- became commonplace, people often published compound bang addresses
- using the { } convention (see {glob}) to give paths from
- *several* big machines, in the hopes that one's correspondent
- might be able to get mail to one of them reliably (example:
- ...!{seismo, ut-sally, ihnp4}!rice!beta!gamma!me). Bang paths
- of 8 to 10 hops were not uncommon in 1981. Late-night dial-up
- UUCP links would cause week-long transmission times. Bang paths
- were often selected by both transmission time and reliability, as
- messages would often get lost. See {{Internet address}},
- {network, the}, and {sitename}.
-
- banner: n. 1. The title page added to printouts by most print
- spoolers (see {spool}). Typically includes user or account ID
- information in very large character-graphics capitals. Also called
- a `burst page', because it indicates where to burst (tear apart)
- fanfold paper to separate one user's printout from the next. 2. A
- similar printout generated (typically on multiple pages of fan-fold
- paper) from user-specified text, e.g., by a program such as UNIX's
- `banner({1,6})'. 3. On interactive software, a first screen
- containing a logo and/or author credits and/or a copyright notice.
-
- bar: /bar/ n. 1. The second metasyntactic variable, after {foo}
- and before {baz}. "Suppose we have two functions: FOO and BAR.
- FOO calls BAR...." 2. Often appended to {foo} to produce
- {foobar}.
-
- bare metal: n. 1. New computer hardware, unadorned with such
- snares and delusions as an {operating system}, an {HLL}, or
- even assembler. Commonly used in the phrase `programming on the
- bare metal', which refers to the arduous work of {bit bashing}
- needed to create these basic tools for a new machine. Real
- bare-metal programming involves things like building boot proms and
- BIOS chips, implementing basic monitors used to test device
- drivers, and writing the assemblers that will be used to write the
- compiler back ends that will give the new machine a real
- development environment. 2. `Programming on the bare metal' is
- also used to describe a style of {hand-hacking} that relies on
- bit-level peculiarities of a particular hardware design, esp.
- tricks for speed and space optimization that rely on crocks such as
- overlapping instructions (or, as in the famous case described in
- appendix A, interleaving of opcodes on a magnetic drum to minimize
- fetch delays due to the device's rotational latency). This sort of
- thing has become less common as the relative costs of programming
- time and machine resources have changed, but is still found in
- heavily constrained environments such as industrial embedded systems.
- See {real programmer}.
-
- In the world of personal computing, bare metal programming (especially
- in sense 1 but sometimes also in sense 2) is often considered a
- {Good Thing}, or at least a necessary thing (because these
- machines have often been sufficiently slow and poorly designed
- to make it necessary; see {ill-behaved}). There, the term
- usually refers to bypassing the BIOS or OS interface and writing
- the application to directly access device registers and machine
- addresses. "To get 19.2 kilobaud on the serial port, you need to
- get down to the bare metal." People who can do this sort of thing
- are held in high regard.
-
- barf: /barf/ [from mainstream slang meaning `vomit']
- 1. interj. Term of disgust. This is the closest hackish
- equivalent of the Val\-speak "gag me with a spoon". (Like, euwww!)
- See {bletch}. 2. vi. To say "Barf!" or emit some similar
- expression of disgust. "I showed him my latest hack and he
- barfed" means only that he complained about it, not that he
- literally vomited. 3. vi. To fail to work because of unacceptable
- input. May mean to give an error message. Examples: "The
- division operation barfs if you try to divide by 0." (That is,
- the division operation checks for an attempt to divide by zero, and
- if one is encountered it causes the operation to fail in some
- unspecified, but generally obvious, manner.) "The text editor
- barfs if you try to read in a new file before writing out the old
- one." See {choke}, {gag}. In Commonwealth hackish,
- `barf' is generally replaced by `puke' or `vom'. {barf}
- is sometimes also used as a metasyntactic variable, like {foo} or
- {bar}.
-
- barfulation: /bar`fyoo-lay'sh*n/ interj. Variation of {barf}
- used around the Stanford area. An exclamation, expressing disgust.
- On seeing some particularly bad code one might exclaim,
- "Barfulation! Who wrote this, Quux?"
-
- barfulous: /bar'fyoo-l*s/ adj. (alt. `barfucious',
- /bar-fyoo-sh*s/) Said of something that would make anyone barf,
- if only for esthetic reasons.
-
- baroque: adj. Feature-encrusted; complex; gaudy; verging on
- excessive. Said of hardware or (esp.) software designs, this has
- many of the connotations of {elephantine} or {monstrosity} but is
- less extreme and not pejorative in itself. "Metafont even has
- features to introduce random variations to its letterform output.
- Now *that* is baroque!" See also {rococo}.
-
- BartleMUD: /bar'tl-muhd/ n. Any of the MUDs derived from the
- original MUD game by Richard Bartle (see {MUD}). BartleMUDs are
- noted for their (usually slightly offbeat) humor, dry but friendly
- syntax, and lack of adjectives in object descriptions, so a player
- is likely to come across `brand172', for instance (see {brand
- brand brand}). Some MUDders intensely dislike Bartle and this
- term, and prefer to speak of `MUD-1'.
-
- BASIC: n. A programming language, originally designed for
- Dartmouth's experimental timesharing system in the
- early 1960s, which has since become the leading cause of
- brain-damage in proto-hackers. This is another case (like
- {Pascal}) of the bad things that happen when a language
- deliberately designed as an educational toy gets taken too
- seriously. A novice can write short BASIC programs (on the order of
- 10--20 lines) very easily; writing anything longer is (a) very
- painful, and (b) encourages bad habits that will bite him/her later
- if he/she tries to hack in a real language. This wouldn't be so
- bad if historical accidents hadn't made BASIC so common on low-end
- micros. As it is, it ruins thousands of potential wizards a year.
-
- batch: adj. 1. Non-interactive. Hackers use this somewhat more
- loosely than the traditional technical definitions justify; in
- particular, switches on a normally interactive program that prepare
- it to receive non-interactive command input are often referred to
- as `batch mode' switches. A `batch file' is a series of
- instructions written to be handed to an interactive program running
- in batch mode. 2. Performance of dreary tasks all at one sitting.
- "I finally sat down in batch mode and wrote out checks for all
- those bills; I guess they'll turn the electricity back on next
- week..." 3. Accumulation of a number of small tasks that can be
- lumped together for greater efficiency. "I'm batching up those
- letters to send sometime" "I'm batching up bottles to take to the
- recycling center."
-
- bathtub curve: n. Common term for the curve (resembling an
- end-to-end section of one of those claw-footed antique bathtubs)
- that describes the expected failure rate of electronics with time:
- initially high, dropping to near 0 for most of the system's
- lifetime, then rising again as it `tires out'. See also {burn-in
- period}, {infant mortality}.
-
- baud: /bawd/ [simplified from its technical meaning] n. Bits per
- second. Hence kilobaud or Kbaud, thousands of bits per second.
- The technical meaning is `level transitions per second'; this
- coincides with bps only for two-level modulation with no framing or
- stop bits. Most hackers are aware of these nuances but blithely
- ignore them.
-
- baud barf: /bawd barf/ n. The garbage one gets on the monitor
- when using a modem connection with some protocol setting (esp.
- line speed) incorrect, or when someone picks up a voice extension
- on the same line, or when really bad line noise disrupts the
- connection. Baud barf is not completely {random}, by the way;
- hackers with a lot of serial-line experience can usually tell
- whether the device at the other end is expecting a higher or lower
- speed than the terminal is set to. *Really* experienced ones
- can identify particular speeds.
-
- baz: /baz/ [Stanford: corruption of {bar}] n. 1. The third
- metasyntactic variable, after {foo} and {bar} and before
- {quux} (or, occasionally, `qux'; or local idiosyncracies like
- `rag', `zowie', etc.). "Suppose we have three functions: FOO,
- BAR, and BAZ. FOO calls BAR, which calls BAZ...."
- 2. interj. A term of mild annoyance. In this usage the term is
- often drawn out for 2 or 3 seconds, producing an effect not unlike
- the bleating of a sheep; /baaaaaaz/. 3. Occasionally appended to
- {foo} to produce `foobaz'.
-
- bboard: /bee'bord/ [contraction of `bulletin board'] n.
- 1. Any electronic bulletin board; esp. used of {BBS} systems
- running on personal micros, less frequently of a USENET
- {newsgroup} (in fact, use of the term for a newsgroup generally
- marks one either as a {newbie} fresh in from the BBS world or as
- a real old-timer predating USENET). 2. At CMU and other colleges
- with similar facilities, refers to campus-wide electronic bulletin
- boards. 3. The term `physical bboard' is sometimes used to
- refer to a old-fashioned, non-electronic cork memo board. At CMU,
- it refers to a particular one outside the CS Lounge.
-
- In either of senses 1 or 2, the term is usually prefixed by the
- name of the intended board (`the Moonlight Casino bboard' or
- `market bboard'); however, if the context is clear, the better-read
- bboards may be referred to by name alone, as in (at CMU) "Don't
- post for-sale ads on general".
-
- BBS: /B-B-S/ [acronym, `Bulletin Board System'] n. An electronic
- bulletin board system; that is, a message database where people can
- log in and leave broadcast messages for others grouped (typically)
- into {topic group}s. Thousands of local BBS systems are in
- operation throughout the U.S., typically run by amateurs for fun
- out of their homes on MS-DOS boxes with a single modem line each.
- Fans of USENET and Internet or the big commercial timesharing
- bboards such as CompuServe and GEnie tend to consider local BBSes
- the low-rent district of the hacker culture, but they serve a
- valuable function by knitting together lots of hackers and users in
- the personal-micro world who would otherwise be unable to exchange
- code at all.
-
- beam: [from Star Trek Classic's "Beam me up, Scotty!"] vt. To
- transfer {softcopy} of a file electronically; most often in
- combining forms such as `beam me a copy' or `beam that over to
- his site'. Compare {blast}, {snarf}, {BLT}.
-
- beanie key: [Mac users] n. See {command key}.
-
- beep: n.,v. Syn. {feep}. This term seems to be preferred among micro
- hobbyists.
-
- beige toaster: n. A Macintosh. See {toaster}; compare
- {Macintrash}, {maggotbox}.
-
- bells and whistles: [by analogy with the toyboxes on theater
- organs] n. Features added to a program or system to make it more
- {flavorful} from a hacker's point of view, without necessarily
- adding to its utility for its primary function. Distinguished from
- {chrome}, which is intended to attract users. "Now that we've
- got the basic program working, let's go back and add some bells and
- whistles." No one seems to know what distinguishes a bell from a
- whistle.
-
- bells, whistles, and gongs: n. A standard elaborated form of
- {bells and whistles}; typically said with a pronounced and ironic
- accent on the `gongs'.
-
- benchmark: [techspeak] n. An inaccurate measure of computer
- performance. "In the computer industry, there are three kinds of
- lies: lies, damn lies, and benchmarks." Well-known ones include
- Whetstone, Dhrystone, Rhealstone (see {h}), the Gabriel LISP
- benchmarks (see {gabriel}), the SPECmark suite, and LINPACK. See
- also {machoflops}, {MIPS}.
-
- Berkeley Quality Software: adj. (often abbreviated `BQS') Term used
- in a pejorative sense to refer to software that was apparently
- created by rather spaced-out hackers late at night to solve some
- unique problem. It usually has nonexistent, incomplete, or
- incorrect documentation, has been tested on at least two examples,
- and core dumps when anyone else attempts to use it. This term was
- frequently applied to early versions of the `dbx(1)' debugger.
- See also {Berzerkeley}.
-
- berklix: /berk'liks/ n.,adj. [contraction of `Berkeley UNIX'] See
- {BSD}. Not used at Berkeley itself. May be more common among
- {suit}s attempting to sound like cognoscenti than among hackers,
- who usually just say `BSD'.
-
- berserking: vi. A {MUD} term meaning to gain points *only*
- by killing other players and mobiles (non-player characters).
- Hence, a Berserker-Wizard is a player character that has achieved
- enough points to become a wizard, but only by killing other
- characters. Berserking is sometimes frowned upon because of its
- inherently antisocial nature, but some MUDs have a `berserker
- mode' in which a player becomes *permanently* berserk, can
- never flee from a fight, cannot use magic, gets no score for
- treasure, but does get double kill points. "Berserker
- wizards can seriously damage your elf!"
-
- Berzerkeley: /b*r-zer'klee/ [from `berserk', via the name of a
- now-deceased record label] n. Humorous distortion of `Berkeley'
- used esp. to refer to the practices or products of the
- {BSD} UNIX hackers. See {software bloat}, {Missed'em-five},
- {Berkeley Quality Software}.
-
- Mainstream use of this term in reference to the cultural and
- political peculiarities of UC Berkeley as a whole has been reported
- from as far back as the 1960s.
-
- beta: /bay't*/, /be't*/ or (Commonwealth) /bee't*/ n. 1. In
- the {Real World}, software often goes through two stages of
- testing: Alpha (in-house) and Beta (out-house?). Software is said
- to be `in beta'. 2. Anything that is new and experimental is in
- beta. "His girlfriend is in beta" means that he is still testing
- for compatibility and reserving judgment. 3. Beta software is
- notoriously buggy, so `in beta' connotes flakiness.
-
- Historical note: More formally, to beta-test is to test a
- pre-release (potentially unreliable) version of a piece of software
- by making it available to selected customers and users. This term
- derives from early 1960s terminology for product cycle checkpoints,
- first used at IBM but later standard throughout the industry.
- `Alpha Test' was the unit, module, or component test phase; `Beta
- Test' was initial system test. These themselves came from earlier
- A- and B-tests for hardware. The A-test was a feasibility and
- manufacturability evaluation done before any commitment to design
- and development. The B-test was a demonstration that the
- engineering model functioned as specified. The C-test
- (corresponding to today's beta) was the B-test performed on early
- samples of the production design.
-
- BFI: /B-F-I/ n. See {brute force and ignorance}. Also
- encountered in the variant `BFMI', `brute force and
- *massive* ignorance'.
-
- bible: n. 1. One of a small number of fundamental source books
- such as {Knuth} and {K&R}. 2. The most detailed and
- authoritative reference for a particular language, operating
- system, or other complex software system.
-
- BiCapitalization: n. The act said to have been performed on
- trademarks (such as NeXT, {NeWS}, VisiCalc, FrameMaker,
- TK!solver, EasyWriter) that have been raised above the ruck of
- common coinage by nonstandard capitalization. Too many
- {marketroid} types think this sort of thing is really cute, even
- the 2,317th time they do it. Compare {studlycaps}.
-
- BIFF: /bif/ [USENET] n. The most famous {pseudo}, and the
- prototypical {newbie}. Articles from BIFF are characterized by
- all uppercase letters sprinkled liberally with bangs, typos,
- `cute' misspellings (EVRY BUDY LUVS GOOD OLD BIFF CUZ HE"S A K00L
- DOOD AN HE RITES REEL AWESUM THINGZ IN CAPITULL LETTRS LIKE
- THIS!!!), use (and often misuse) of fragments of {talk mode}
- abbreviations, a long {sig block} (sometimes even a {doubled
- sig}), and unbounded na"ivet'e. BIFF posts articles using his elder
- brother's VIC-20. BIFF's location is a mystery, as his articles
- appear to come from a variety of sites. However, {BITNET} seems to
- be the most frequent origin. The theory that BIFF is a denizen of
- BITNET is supported by BIFF's (unfortunately invalid) electronic
- mail address: BIFF@BIT.NET.
-
- biff: /bif/ vt. To notify someone of incoming mail. From the
- BSD utility `biff(1)', which was in turn named after the
- implementor's dog (it barked whenever the mailman came). No
- relation to {BIFF}.
-
- Big Gray Wall: n. What faces a {VMS} user searching for
- documentation. A full VMS kit comes on a pallet, the documentation
- taking up around 15 feet of shelf space before the addition of layered
- products such as compilers, databases, multivendor networking,
- and programming tools. Recent (since VMS version 5) DEC
- documentation comes with gray binders; under VMS version 4 the
- binders were orange (`big orange wall'), and under version 3
- they were blue. See {VMS}.
-
- big iron: n. Large, expensive, ultra-fast computers. Used generally
- of {number-crunching} supercomputers such as Crays, but can include
- more conventional big commercial IBMish mainframes. Term of
- approval; compare {heavy metal}, oppose {dinosaur}.
-
- Big Red Switch: [IBM] n. The power switch on a computer, esp. the
- `Emergency Pull' switch on an IBM {mainframe} or the power switch
- on an IBM PC where it really is large and red. "This !@%$%
- {bitty box} is hung again; time to hit the Big Red Switch."
- Sources at IBM report that, in tune with the company's passion for
- {TLA}s, this is often acronymized as `BRS' (this has also
- become established on FidoNet and in the PC {clone} world). It
- is alleged that the emergency pull switch on an IBM 360/91 actually
- fired a non-conducting bolt into the main power feed; the BRSes on
- more recent machines physically drop a block into place so that
- they can't be pushed back in. People get fired for pulling them,
- especially inappropriately (see also {molly-guard}). Compare
- {power cycle}, {three-finger salute}, {120 reset}.
-
- Big Room, the: n. The extremely large room with the blue ceiling
- and intensely bright light (during the day) or black ceiling with
- lots of tiny night-lights (during the night) found outside all
- computer installations. "He can't come to the phone right now,
- he's somewhere out in the Big Room."
-
- big win: n. Serendipity. "Yes, those two physicists discovered
- high-temperature superconductivity in a batch of ceramic that had
- been prepared incorrectly according to their experimental schedule.
- Small mistake; big win!" See {win big}.
-
- big-endian: [From Swift's `Gulliver's Travels' via the famous
- paper `On Holy Wars and a Plea for Peace' by Danny Cohen,
- USC/ISI IEN 137, dated April 1, 1980] adj. 1. Describes a computer
- architecture in which, within a given multi-byte numeric
- representation, the most significant byte has the lowest address
- (the word is stored `big-end-first'). Most processors, including
- the IBM 370 family, the {PDP-10}, the Motorola microprocessor
- families, and most of the various RISC designs current in mid-1991,
- are big-endian. See {little-endian}, {middle-endian}, {NUXI
- problem}. 2. An {{Internet address}} the wrong way round. Most
- of the world follows the Internet standard and writes email
- addresses starting with the name of the computer and ending up with
- the name of the country. In the U.K. the Joint Networking Team had
- decided to do it the other way round before the Internet domain
- standard was established; e.g., me@uk.ac.wigan.cs. Most gateway
- sites have {ad-hockery} in their mailers to handle this, but can
- still be confused. In particular, the address above could be in the
- U.K. (domain uk) or Czechoslovakia (domain cs).
-
- bignum: /big'nuhm/ [orig. from MIT MacLISP] n. 1. [techspeak] A
- multiple-precision computer representation for very large integers.
- More generally, any very large number. "Have you ever looked at
- the United States Budget? There's bignums for you!"
- 2. [Stanford] In backgammon, large numbers on the dice are called
- `bignums', especially a roll of double fives or double sixes
- (compare {moby}, sense 4). See also {El Camino Bignum}.
-
- Sense 1 may require some explanation. Most computer languages
- provide a kind of data called `integer', but such computer
- integers are usually very limited in size; usually they must be
- smaller than than 2^{31} (2,147,483,648) or (on a losing
- {bitty box}) 2^{15} (32,768). If you want to work with
- numbers larger than that, you have to use floating-point numbers,
- which are usually accurate to only six or seven decimal places.
- Computer languages that provide bignums can perform exact
- calculations on very large numbers, such as 1000! (the factorial
- of 1000, which is 1000 times 999 times 998 times ... times 2
- times 1). For example, this value for 1000! was computed by the
- MacLISP system using bignums:
-
- 40238726007709377354370243392300398571937486421071
- 46325437999104299385123986290205920442084869694048
- 00479988610197196058631666872994808558901323829669
- 94459099742450408707375991882362772718873251977950
- 59509952761208749754624970436014182780946464962910
- 56393887437886487337119181045825783647849977012476
- 63288983595573543251318532395846307555740911426241
- 74743493475534286465766116677973966688202912073791
- 43853719588249808126867838374559731746136085379534
- 52422158659320192809087829730843139284440328123155
- 86110369768013573042161687476096758713483120254785
- 89320767169132448426236131412508780208000261683151
- 02734182797770478463586817016436502415369139828126
- 48102130927612448963599287051149649754199093422215
- 66832572080821333186116811553615836546984046708975
- 60290095053761647584772842188967964624494516076535
- 34081989013854424879849599533191017233555566021394
- 50399736280750137837615307127761926849034352625200
- 01588853514733161170210396817592151090778801939317
- 81141945452572238655414610628921879602238389714760
- 88506276862967146674697562911234082439208160153780
- 88989396451826324367161676217916890977991190375403
- 12746222899880051954444142820121873617459926429565
- 81746628302955570299024324153181617210465832036786
- 90611726015878352075151628422554026517048330422614
- 39742869330616908979684825901254583271682264580665
- 26769958652682272807075781391858178889652208164348
- 34482599326604336766017699961283186078838615027946
- 59551311565520360939881806121385586003014356945272
- 24206344631797460594682573103790084024432438465657
- 24501440282188525247093519062092902313649327349756
- 55139587205596542287497740114133469627154228458623
- 77387538230483865688976461927383814900140767310446
- 64025989949022222176590433990188601856652648506179
- 97023561938970178600408118897299183110211712298459
- 01641921068884387121855646124960798722908519296819
- 37238864261483965738229112312502418664935314397013
- 74285319266498753372189406942814341185201580141233
- 44828015051399694290153483077644569099073152433278
- 28826986460278986432113908350621709500259738986355
- 42771967428222487575867657523442202075736305694988
- 25087968928162753848863396909959826280956121450994
- 87170124451646126037902930912088908694202851064018
- 21543994571568059418727489980942547421735824010636
- 77404595741785160829230135358081840096996372524230
- 56085590370062427124341690900415369010593398383577
- 79394109700277534720000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 000000000000000000.
-
- bigot: n. A person who is religiously attached to a particular
- computer, language, operating system, editor, or other tool (see
- {religious issues}). Usually found with a specifier; thus,
- `cray bigot', {ITS bigot}, `APL bigot', `VMS bigot',
- {Berkeley bigot}. True bigots can be distinguished from mere
- partisans or zealots by the fact that they refuse to learn
- alternatives even when the march of time and/or technology is
- threatening to obsolete the favored tool. It is said "You can
- tell a bigot, but you can't tell him much." Compare
- {weenie}.
-
- bit: [from the mainstream meaning and `Binary digIT'] n.
- 1. [techspeak] The unit of information; the amount of information
- obtained by asking a yes-or-no question for which the two outcomes
- are equally probable. 2. [techspeak] A computational quantity that
- can take on one of two values, such as true and false or 0 and 1.
- 3. A mental flag: a reminder that something should be done
- eventually. "I have a bit set for you." (I haven't seen you for
- a while, and I'm supposed to tell or ask you something.) 4. More
- generally, a (possibly incorrect) mental state of belief. "I have
- a bit set that says that you were the last guy to hack on EMACS."
- (Meaning "I think you were the last guy to hack on EMACS, and what
- I am about to say is predicated on this, so please stop me if this
- isn't true.")
-
- "I just need one bit from you" is a polite way of indicating that
- you intend only a short interruption for a question that can
- presumably be answered yes or no.
-
- A bit is said to be `set' if its value is true or 1, and
- `reset' or `clear' if its value is false or 0. One
- speaks of setting and clearing bits. To {toggle} or
- `invert' a bit is to change it, either from 0 to 1 or from
- 1 to 0. See also {flag}, {trit}, {mode bit}.
-
- bit bang: n. Transmission of data on a serial line, when
- accomplished by rapidly tweaking a single output bit at the
- appropriate times. The technique is a simple
- loop with eight OUT and SHIFT instruction pairs for each byte.
- Input is more interesting. And full duplex (doing input and output
- at the same time) is one way to separate the real hackers from the
- {wannabee}s.
-
- Bit bang was used on certain early models of Prime computers,
- presumably when UARTs were too expensive, and on archaic Z80 micros
- with a Zilog PIO but no SIO. In an interesting instance of the
- {cycle of reincarnation}, this technique is now (1991) coming
- back into use on some RISC architectures because it consumes such
- an infinitesimal part of the processor that it actually makes sense
- not to have a UART.
-
- bit bashing: n. (alt. `bit diddling' or {bit twiddling}) Term
- used to describe any of several kinds of low-level programming
- characterized by manipulation of {bit}, {flag}, {nybble},
- and other smaller-than-character-sized pieces of data; these
- include low-level device control, encryption algorithms, checksum
- and error-correcting codes, hash functions, some flavors of
- graphics programming (see {bitblt}), and assembler/compiler code
- generation. May connote either tedium or a real technical
- challenge (more usually the former). "The command decoding for
- the new tape driver looks pretty solid but the bit-bashing for the
- control registers still has bugs." See also {bit bang},
- {mode bit}.
-
- bit bucket: n. 1. The universal data sink (originally, the
- mythical receptacle used to catch bits when they fall off the end
- of a register during a shift instruction). Discarded, lost, or
- destroyed data is said to have `gone to the bit bucket'. On {{UNIX}},
- often used for {/dev/null}. Sometimes amplified as `the Great
- Bit Bucket in the Sky'. 2. The place where all lost mail and news
- messages eventually go. The selection is performed according to
- {Finagle's Law}; important mail is much more likely to end up in
- the bit bucket than junk mail, which has an almost 100% probability
- of getting delivered. Routing to the bit bucket is automatically
- performed by mail-transfer agents, news systems, and the lower
- layers of the network. 3. The ideal location for all unwanted mail
- responses: "Flames about this article to the bit bucket."
- Such a request is guaranteed to overflow one's mailbox with flames.
- 4. Excuse for all mail that has not been sent. "I mailed you
- those figures last week; they must have ended in the bit bucket."
- Compare {black hole}.
-
- This term is used purely in jest. It is based on the fanciful
- notion that bits are objects that are not destroyed but only
- misplaced. This appears to have been a mutation of an earlier term
- `bit box', about which the same legend was current; old-time
- hackers also report that trainees used to be told that when the CPU
- stored bits into memory it was actually pulling them `out of the
- bit box'. See also {chad box}.
-
- Another variant of this legend has it that, as a consequence of the
- `parity preservation law', the number of 1 bits that go to the bit
- bucket must equal the number of 0 bits. Any imbalance results in
- bits filling up the bit bucket. A qualified computer technician
- can empty a full bit bucket as part of scheduled maintenance.
-
- bit decay: n. See {bit rot}. People with a physics background
- tend to prefer this one for the analogy with particle decay. See
- also {computron}, {quantum bogodynamics}.
-
- bit rot: n. Also {bit decay}. Hypothetical disease the existence
- of which has been deduced from the observation that unused programs
- or features will often stop working after sufficient time has
- passed, even if `nothing has changed'. The theory explains that
- bits decay as if they were radioactive. As time passes, the
- contents of a file or the code in a program will become
- increasingly garbled.
-
- There actually are physical processes that produce such effects
- (alpha particles generated by trace radionuclides in ceramic chip
- packages, for example, can change the contents of a computer memory
- unpredictably, and various kinds of subtle media failures can
- corrupt files in mass storage), but they are quite rare (and
- computers are built with error-detecting circuitry to compensate
- for them). The notion long favored among hackers that cosmic
- rays are among the causes of such events turns out to be a myth;
- see the {cosmic rays} entry for details.
-
- The term {software rot} is almost synonymous. Software rot is
- the effect, bit rot the notional cause.
-
- bit twiddling: n. 1. (pejorative) An exercise in {tuning} in
- which incredible amounts of time and effort go to produce little
- noticeable improvement, often with the result that the code has
- become incomprehensible. 2. Aimless small modification to a
- program, esp. for some pointless goal. 3. Approx. syn. for {bit
- bashing}; esp. used for the act of frobbing the device control
- register of a peripheral in an attempt to get it back to a known
- state.
-
- bit-paired keyboard: n. obs. (alt. `bit-shift keyboard') A
- non-standard keyboard layout that seems to have originated with
- the Teletype ASR-33 and remained common for several years on early
- computer equipment. The ASR-33 was a mechanical device (see
- {EOU}), so the only way to generate the character codes from
- keystrokes was by some physical linkage. The design of the ASR-33
- assigned each character key a basic pattern that could be modified
- by flipping bits if the SHIFT or the CTRL key was pressed. In order
- to avoid making the thing more of a Rube Goldberg kluge than it
- already was, the design had to group characters that shared the
- same basic bit pattern on one key.
-
- Looking at the ASCII chart, we find:
-
- high low bits
- bits 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
- 010 ! " # $ % & ' ( )
- 011 0 1 2 3 4 5 6 7 8 9
-
- This is why the characters !"#$%&'() appear where they do on a
- Teletype (thankfully, they didn't use shift-0 for space). This was
- *not* the weirdest variant of the {QWERTY} layout widely
- seen, by the way; that prize should probably go to one of several
- (differing) arrangements on IBM's even clunkier 026 and 029 card
- punches.
-
- When electronic terminals became popular, in the early 1970s, there
- was no agreement in the industry over how the keyboards should be
- laid out. Some vendors opted to emulate the Teletype keyboard,
- while others used the flexibility of electronic circuitry to make
- their product look like an office typewriter. These alternatives
- became known as `bit-paired' and `typewriter-paired' keyboards. To
- a hacker, the bit-paired keyboard seemed far more logical --- and
- because most hackers in those days had never learned to touch-type,
- there was little pressure from the pioneering users to adapt
- keyboards to the typewriter standard.
-
- The doom of the bit-paired keyboard was the large-scale
- introduction of the computer terminal into the normal office
- environment, where out-and-out technophobes were expected to use
- the equipment. The `typewriter-paired' standard became universal,
- `bit-paired' hardware was quickly junked or relegated to dusty
- corners, and both terms passed into disuse.
-
- bitblt: /bit'blit/ n. [from {BLT}, q.v.] 1. Any of a family
- of closely related algorithms for moving and copying rectangles of
- bits between main and display memory on a bit-mapped device, or
- between two areas of either main or display memory (the requirement
- to do the {Right Thing} in the case of overlapping source and
- destination rectangles is what makes BitBlt tricky). 2. Synonym
- for {blit} or {BLT}. Both uses are borderline techspeak.
-
- BITNET: /bit'net/ [acronym: Because It's Time NETwork] n.
- Everybody's least favorite piece of the network (see {network,
- the}). The BITNET hosts are a collection of IBM dinosaurs and
- VAXen (the latter with lobotomized comm hardware) that communicate
- using 80-character {{EBCDIC}} card images (see {eighty-column
- mind}); thus, they tend to mangle the headers and text of
- third-party traffic from the rest of the ASCII/RFC-822 world with
- annoying regularity. BITNET is also notorious as the apparent home
- of {BIFF}.
-
- bits: n.pl. 1. Information. Examples: "I need some bits about file
- formats." ("I need to know about file formats.") Compare {core
- dump}, sense 4. 2. Machine-readable representation of a document,
- specifically as contrasted with paper: "I have only a photocopy
- of the Jargon File; does anyone know where I can get the bits?".
- See {softcopy}, {source of all good bits} See also {bit}.
-
- bitty box: /bit'ee boks/ n. 1. A computer sufficiently small,
- primitive, or incapable as to cause a hacker acute claustrophobia
- at the thought of developing software for it. Especially used of
- small, obsolescent, single-tasking-only personal machines such as
- the Atari 800, Osborne, Sinclair, VIC-20, TRS-80, or IBM PC.
- 2. [Pejorative] More generally, the opposite of `real computer'
- (see {Get a real computer!}). See also {mess-dos},
- {toaster}, and {toy}.
-
- bixie: /bik'see/ n. Variant {emoticon}s used on BIX (the Byte
- Information eXchange). The {smiley} bixie is <@_@>, apparently
- intending to represent two cartoon eyes and a mouth. A few others
- have been reported.
-
- black art: n. A collection of arcane, unpublished, and (by
- implication) mostly ad-hoc techniques developed for a particular
- application or systems area (compare {black magic}). VLSI design
- and compiler code optimization were (in their beginnings)
- considered classic examples of black art; as theory developed they
- became {deep magic}, and once standard textbooks had been written,
- became merely {heavy wizardry}. The huge proliferation of formal
- and informal channels for spreading around new computer-related
- technologies during the last twenty years has made both the term
- `black art' and what it describes less common than formerly. See
- also {voodoo programming}.
-
- black hole: n. When a piece of email or netnews disappears
- mysteriously between its origin and destination sites (that is,
- without returning a {bounce message}) it is commonly said to have
- `fallen into a black hole'. "I think there's a black hole at
- foovax!" conveys suspicion that site foovax has been dropping
- a lot of stuff on the floor lately (see {drop on the floor}).
- The implied metaphor of email as interstellar travel is interesting
- in itself. Compare {bit bucket}.
-
- black magic: n. A technique that works, though nobody really
- understands why. More obscure than {voodoo programming}, which
- may be done by cookbook. Compare also {black art}, {deep
- magic}, and {magic number} (sense 2).
-
- blast: 1. vt.,n. Synonym for {BLT}, used esp. for large data
- sends over a network or comm line. Opposite of {snarf}. Usage:
- uncommon. The variant `blat' has been reported. 2. vt.
- [HP/Apollo] Synonymous with {nuke} (sense 3). Sometimes the
- message `Unable to kill all processes. Blast them (y/n)?' would
- appear in the command window upon logout.
-
- blat: n. 1. Syn. {blast}, sense 1. 2. See {thud}.
-
- bletch: /blech/ [from Yiddish/German `brechen', to vomit, poss.
- via comic-strip exclamation `blech'] interj. Term of disgust.
- Often used in "Ugh, bletch". Compare {barf}.
-
- bletcherous: /blech'*-r*s/ adj. Disgusting in design or function;
- esthetically unappealing. This word is seldom used of people.
- "This keyboard is bletcherous!" (Perhaps the keys don't work very
- well, or are misplaced.) See {losing}, {cretinous},
- {bagbiter}, {bogus}, and {random}. The term {bletcherous}
- applies to the esthetics of the thing so described; similarly for
- {cretinous}. By contrast, something that is `losing' or
- `bagbiting' may be failing to meet objective criteria. See also
- {bogus} and {random}, which have richer and wider shades of
- meaning than any of the above.
-
- blinkenlights: /blink'*n-li:tz/ n. Front-panel diagnostic lights
- on a computer, esp. a {dinosaur}. Derives from the last word of
- the famous
- blackletter-Gothic
- sign in mangled pseudo-German that once graced about half the
- computer rooms in the English-speaking world. One version ran in
- its entirety as follows:
-
- ACHTUNG! ALLES LOOKENSPEEPERS!
- Das computermachine ist nicht fuer gefingerpoken und mittengrabben.
- Ist easy schnappen der springenwerk, blowenfusen und poppencorken
- mit spitzensparken. Ist nicht fuer gewerken bei das dumpkopfen.
- Das rubbernecken sichtseeren keepen das cotten-pickenen hans in das
- pockets muss; relaxen und watchen das blinkenlichten.
-
-
- This silliness dates back at least as far as 1959 at Stanford
- University and had already gone international by the early 1960s,
- when it was reported at London University's ATLAS computing site.
- There are several variants of it in circulation, some of which
- actually do end with the word `blinkenlights'.
-
- In an amusing example of turnabout-is-fair-play, German hackers
- have developed their own versions of the blinkenlights poster in
- fractured English, one of which is reproduced here:
-
- ATTENTION
- This room is fullfilled mit special electronische equippment.
- Fingergrabbing and pressing the cnoeppkes from the computers is
- allowed for die experts only! So all the "lefthanders" stay away
- and do not disturben the brainstorming von here working
- intelligencies. Otherwise you will be out thrown and kicked
- anderswhere! Also: please keep still and only watchen astaunished
- the blinkenlights.
-
- See also {geef}.
-
- blit: /blit/ vt. 1. To copy a large array of bits from one part
- of a computer's memory to another part, particularly when the
- memory is being used to determine what is shown on a display
- screen. "The storage allocator picks through the table and copies
- the good parts up into high memory, and then blits it all back
- down again." See {bitblt}, {BLT}, {dd}, {cat},
- {blast}, {snarf}. More generally, to perform some operation
- (such as toggling) on a large array of bits while moving them.
- 2. All-capitalized as `BLIT': an early experimental bit-mapped
- terminal designed by Rob Pike at Bell Labs, later commercialized as
- the AT&T 5620. (The folk etymology from `Bell Labs Intelligent
- Terminal' is incorrect.)
-
- blitter: /blit'r/ n. A special-purpose chip or hardware system
- built to perform {blit} operations, esp. used for fast
- implementation of bit-mapped graphics. The Commodore Amiga and a
- few other micros have these, but in 1991 the trend is away from
- them (however, see {cycle of reincarnation}). Syn. {raster
- blaster}.
-
- blivet: /bliv'*t/ [allegedly from a World War II military term
- meaning "ten pounds of manure in a five-pound bag"] n. 1. An
- intractable problem. 2. A crucial piece of hardware that can't be
- fixed or replaced if it breaks. 3. A tool that has been hacked
- over by so many incompetent programmers that it has become an
- unmaintainable tissue of hacks. 4. An out-of-control but
- unkillable development effort. 5. An embarrassing bug that pops up
- during a customer demo.
-
- This term has other meanings in other technical cultures; among
- experimental physicists and hardware engineers of various kinds it
- seems to mean any random object of unknown purpose (similar to
- hackish use of {frob}). It has also been used to describe an
- amusing trick-the-eye drawing resembling a three-pronged fork that
- appears to depict a three-dimensional object until one realizes that
- the parts fit together in an impossible way.
-
- block: [from process scheduling terminology in OS theory] 1. vi.
- To delay or sit idle while waiting for something. "We're blocking
- until everyone gets here." Compare {busy-wait}. 2. `block
- on' vt. To block, waiting for (something). "Lunch is blocked on
- Phil's arrival."
-
- block transfer computations: n. From the television series
- "Dr. Who", in which it referred to computations so fiendishly
- subtle and complex that they could not be performed by machines.
- Used to refer to any task that should be expressible as an
- algorithm in theory, but isn't.
-
- blow an EPROM: /bloh *n ee'prom/ v. (alt. `blast an EPROM',
- `burn an EPROM') To program a read-only memory, e.g. for use
- with an embedded system. This term arises because the programming
- process for the Programmable Read-Only Memories (PROMs) that
- preceded present-day Erasable Programmable Read-Only Memories
- (EPROMs) involved intentionally blowing tiny electrical fuses on
- the chip. Thus, one was said to `blow' (or `blast') a PROM, and
- the terminology carried over even though the write process on
- EPROMs is nondestructive.
-
- blow away: vt. To remove (files and directories) from permanent
- storage, generally by accident. "He reformatted the wrong
- partition and blew away last night's netnews." Oppose {nuke}.
-
- blow out: vi. Of software, to fail spectacularly; almost as serious
- as {crash and burn}. See {blow past}, {blow up}.
-
- blow past: vt. To {blow out} despite a safeguard. "The server blew
- past the 5K reserve buffer."
-
- blow up: vi. 1. [scientific computation] To become unstable. Suggests
- that the computation is diverging so rapidly that it will soon
- overflow or at least go {nonlinear}. 2. Syn. {blow out}.
-
- BLT: /B-L-T/, /bl*t/ or (rarely) /belt/ n.,vt. Synonym for
- {blit}. This is the original form of {blit} and the ancestor
- of {bitblt}. It referred to any large bit-field copy or move
- operation (one resource-intensive memory-shuffling operation done
- on pre-paged versions of ITS, WAITS, and TOPS-10 was sardonically
- referred to as `The Big BLT'). The jargon usage has outlasted the
- {PDP-10} BLock Transfer instruction from which {BLT} derives;
- nowadays, the assembler mnemonic {BLT} almost always means
- `Branch if Less Than zero'.
-
- Blue Book: n. 1. Informal name for one of the three standard
- references on the page-layout and graphics-control language
- PostScript (`PostScript Language Tutorial and Cookbook', Adobe
- Systems, Addison-Wesley 1985, QA76.73.P67P68, ISBN 0-201-10179-3);
- the other two official guides are known as the {Green Book} and
- {Red Book}. 2. Informal name for one of the three standard
- references on Smalltalk: `Smalltalk-80: The Language and its
- Implementation', David Robson, Addison-Wesley 1983, QA76.8.S635G64,
- ISBN 0-201-11371-63 (this is also associated with green and red
- books). 3. Any of the 1988 standards issued by the CCITT's
- ninth plenary assembly. Until now, they have changed color each review
- cycle (1984 was {Red Book}, 1992 would be {Green Book}); however,
- it is rumored that this convention is going to be dropped before 1992.
- These include, among other things, the X.400 email spec and
- the Group 1 through 4 fax standards. See also {{book titles}}.
-
- Blue Glue: [IBM] n. IBM's SNA (Systems Network Architecture), an
- incredibly {losing} and {bletcherous} communications protocol
- widely favored at commercial shops that don't know any better. The
- official IBM definition is "that which binds blue boxes
- together." See {fear and loathing}. It may not be irrelevant
- that {Blue Glue} is the trade name of a 3M product that is
- commonly used to hold down the carpet squares to the removable
- panel floors common in {dinosaur pens}. A correspondent at
- U. Minn. reports that the CS department there has about 80 bottles
- of the stuff hanging about, so they often refer to any messy work
- to be done as `using the blue glue'.
-
- blue goo: n. Term for `police' {nanobot}s intended to prevent
- {gray goo}, denature hazardous waste, destroy pollution, put
- ozone back into the stratosphere, prevent halitosis, and promote
- truth, justice, and the American way, etc. See
- {{nanotechnology}}.
-
- BNF: /B-N-F/ n. 1. [techspeak] Acronym for `Backus-Naur Form', a
- metasyntactic notation used to specify the syntax of programming
- languages, command sets, and the like. Widely used for language
- descriptions but seldom documented anywhere, so that it must
- usually be learned by osmosis from other hackers. Consider this
- BNF for a U.S. postal address:
-
- <postal-address> ::= <name-part> <street-address> <zip-part>
-
- <personal-part> ::= <name> | <initial> "."
-
- <name-part> ::= <personal-part> <last-name> [<jr-part>] <EOL>
- | <personal-part> <name-part>
-
- <street-address> ::= [<apt>] <house-num> <street-name> <EOL>
-
- <zip-part> ::= <town-name> "," <state-code> <ZIP-code> <EOL>
-
- This translates into English as: "A postal-address consists of a
- name-part, followed by a street-address part, followed by a
- zip-code part. A personal-part consists of either a first name or
- an initial followed by a dot. A name-part consists of either: a
- personal-part followed by a last name followed by an optional
- `jr-part' (Jr., Sr., or dynastic number) and end-of-line, or a
- personal part followed by a name part (this rule illustrates the
- use of recursion in BNFs, covering the case of people who use
- multiple first and middle names and/or initials). A street address
- consists of an optional apartment specifier, followed by a street
- number, followed by a street name. A zip-part consists of a
- town-name, followed by a comma, followed by a state code, followed
- by a ZIP-code followed by an end-of-line." Note that many things
- (such as the format of a personal-part, apartment specifier, or
- ZIP-code) are left unspecified. These are presumed to be obvious
- from context or detailed somewhere nearby. See also {parse}.
- 2. The term is also used loosely for any number of variants and
- extensions, possibly containing some or all of the {regexp}
- wildcards such as `*' or `+'. In fact the example above
- isn't the pure form invented for the Algol-60 report; it uses
- `[]', which was introduced a few years later in IBM's PL/I
- definition but is now universally recognized. 3. In
- {{science-fiction fandom}}, BNF means `Big-Name Fan'
- (someone famous or notorious). Years ago a fan started handing out
- black-on-green BNF buttons at SF conventions; this confused the
- hacker contingent terribly.
-
- boa: [IBM] n. Any one of the fat cables that lurk under the floor
- in a {dinosaur pen}. Possibly so called because they display a
- ferocious life of their own when you try to lay them straight and
- flat after they have been coiled for some time. It is rumored
- within IBM that channel cables for the 370 are limited to 200 feet
- because beyond that length the boas get dangerous --- and it is
- worth noting that one of the major cable makers uses the trademark
- `Anaconda'.
-
- board: n. 1. In-context synonym for {bboard}; sometimes used
- even for USENET newsgroups. 2. An electronic circuit board
- (compare {card}).
-
- boat anchor: n. 1. Like {doorstop} but more severe; implies that
- the offending hardware is irreversibly dead or useless. "That was
- a working motherboard once. One lightning strike later, instant
- boat anchor!" 2. A person who just takes up space.
-
- bogo-sort: /boh`goh-sort'/ n. (var. `stupid-sort') The
- archetypical perversely awful algorithm (as opposed to {bubble
- sort}, which is merely the generic *bad* algorithm).
- Bogo-sort is equivalent to repeatedly throwing a deck of cards in
- the air, picking them up at random, and then testing whether they
- are in order. It serves as a sort of canonical example of
- awfulness. Looking at a program and seeing a dumb algorithm, one
- might say "Oh, I see, this program uses bogo-sort." Compare
- {bogus}, {brute force}.
-
- bogometer: /boh-gom'-*t-er/ n. See {bogosity}. Compare the
- `wankometer' described in the {wank} entry; see also
- {bogus}.
-
- bogon: /boh'gon/ [by analogy with proton/electron/neutron, but
- doubtless reinforced after 1980 by the similarity to Douglas
- Adams's `Vogons'; see the Bibliography] n. 1. The elementary particle of
- bogosity (see {quantum bogodynamics}). For instance, "the
- Ethernet is emitting bogons again" means that it is broken or
- acting in an erratic or bogus fashion. 2. A query packet sent from
- a TCP/IP domain resolver to a root server, having the reply bit set
- instead of the query bit. 3. Any bogus or incorrectly formed
- packet sent on a network. 4. By synecdoche, used to refer to any
- bogus thing, as in "I'd like to go to lunch with you but I've got
- to go to the weekly staff bogon". 5. A person who is bogus or who
- says bogus things. This was historically the original usage, but
- has been overtaken by its derivative senses 1--4. See
- also {bogosity}, {bogus}; compare {psyton}.
-
- bogon filter: /boh'gon fil'tr/ n. Any device, software or hardware,
- that limits or suppresses the flow and/or emission of bogons.
- "Engineering hacked a bogon filter between the Cray and
- the VAXen, and now we're getting fewer dropped packets." See
- also {bogosity}, {bogus}.
-
- bogon flux: /boh'gon fluhks/ n. A measure of a supposed field of
- {bogosity} emitted by a speaker, measured by a {bogometer};
- as a speaker starts to wander into increasing bogosity a listener
- might say "Warning, warning, bogon flux is rising". See
- {quantum bogodynamics}.
-
- bogosity: /boh-go's*-tee/ n. 1. The degree to which something is
- {bogus}. At CMU, bogosity is measured with a {bogometer}; in
- a seminar, when a speaker says something bogus, a listener might
- raise his hand and say "My bogometer just triggered". More
- extremely, "You just pinned my bogometer" means you just said
- or did something so outrageously bogus that it is off the scale,
- pinning the bogometer needle at the highest possible reading (one
- might also say "You just redlined my bogometer"). The
- agreed-upon unit of bogosity is the microLenat /mi:k`roh-len'*t/
- (uL).
- The consensus is that this is the largest unit practical
- for everyday use. 2. The potential field generated by a {bogon
- flux}; see {quantum bogodynamics}. See also {bogon flux},
- {bogon filter}, {bogus}.
-
- Historical note: The microLenat was invented as a attack against
- noted computer scientist Doug Lenat by a {tenured graduate
- student}. 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.
-
- bogotify: /boh-go't*-fi:/ vt. To make or become bogus. A
- program that has been changed so many times as to become completely
- disorganized has become bogotified. If you tighten a nut too hard
- and strip the threads on the bolt, the bolt has become bogotified
- and you had better not use it any more. This coinage led to the
- notional `autobogotiphobia' defined as `the fear of becoming
- bogotified'; but is not clear that the latter has ever been
- `live' jargon rather than a self-conscious joke in jargon about
- jargon. See also {bogosity}, {bogus}.
-
- bogue out: /bohg owt/ vi. To become bogus, suddenly and
- unexpectedly. "His talk was relatively sane until somebody asked
- him a trick question; then he bogued out and did nothing but
- {flame} afterwards." See also {bogosity}, {bogus}.
-
- bogus: adj. 1. Non-functional. "Your patches are bogus."
- 2. Useless. "OPCON is a bogus program." 3. False. "Your
- arguments are bogus." 4. Incorrect. "That algorithm is bogus."
- 5. Unbelievable. "You claim to have solved the halting problem
- for Turing Machines? That's totally bogus." 6. Silly. "Stop
- writing those bogus sagas."
-
- Astrology is bogus. So is a bolt that is obviously about to break.
- So is someone who makes blatantly false claims to have solved a
- scientific problem. (This word seems to have some, but not all, of
- the connotations of {random} --- mostly the negative ones.)
-
- It is claimed that `bogus' was originally used in the hackish sense
- at Princeton in the late 1960s. It was spread to CMU and Yale by
- Michael Shamos, a migratory Princeton alumnus. A glossary of bogus
- words was compiled at Yale when the word was first popularized (see
- {autobogotiphobia} under {bogotify}). The word spread into
- hackerdom from CMU and MIT. By the early 1980s it was also
- current in something like the hackish sense in West Coast teen
- slang, and it had gone mainstream by 1985. A correspondent from
- Cambridge reports, by contrast, that these uses of `bogus' grate on
- British nerves; in Britain the word means, rather specifically,
- `counterfeit', as in "a bogus 10-pound note".
-
- Bohr bug: /bohr buhg/ [from quantum physics] n. A repeatable
- {bug}; one that manifests reliably under a possibly unknown but
- well-defined set of conditions. Antonym of {heisenbug}; see also
- {mandelbug}.
-
- boink: /boynk/ [USENET: ascribed there to the TV series
- "Cheers" and "Moonlighting"] 1. To have sex with;
- compare {bounce}, sense 3. (This is mainstream slang.) In
- Commonwealth hackish the variant `bonk' is more common. 2. After
- the original Peter Korn `Boinkon' {USENET} parties, used for
- almost any net social gathering, e.g., Miniboink, a small boink
- held by Nancy Gillett in 1988; Minniboink, a Boinkcon in Minnesota
- in 1989; Humpdayboinks, Wednesday get-togethers held in the San
- Francisco Bay Area. Compare {@-party}. 3. Var of `bonk';
- see {bonk/oif}.
-
- bomb: 1. v. General synonym for {crash} (sense 1) except that it
- is not used as a noun; esp. used of software or OS failures.
- "Don't run Empire with less than 32K stack, it'll bomb."
- 2. n.,v. Atari ST and Macintosh equivalents of a UNIX `panic' or
- Amiga {guru} (sense 2), where icons of little black-powder bombs
- or mushroom clouds are displayed, indicating that the system has died.
- On the Mac, this may be accompanied by a decimal (or occasionally
- hexadecimal) number indicating what went wrong, similar to the
- Amiga GURU MEDITATION number (see {guru}). {{MS-DOS}} machines
- tend to get {locked up} in this situation.
-
- bondage-and-discipline language: A language (such as Pascal, Ada,
- APL, or Prolog) that, though ostensibly general-purpose, is designed
- so as to enforce an author's theory of `right programming' even
- though said theory is demonstrably inadequate for systems hacking
- or even vanilla general-purpose programming. Often abbreviated
- `B&D'; thus, one may speak of things "having the B&D nature".
- See {{Pascal}}; oppose {languages of choice}.
-
- bonk/oif: /bonk/, /oyf/ interj. In the {MUD} community, it has
- become traditional to express pique or censure by `bonking' the
- offending person. There is a convention that one should
- acknowledge a bonk by saying `oif!' and a myth to the effect that
- failing to do so upsets the cosmic bonk/oif balance, causing much
- trouble in the universe. Some MUDs have implemented special
- commands for bonking and oifing. See also {talk mode},
- {posing}.
-
- book titles:: There is a tradition in hackerdom of informally
- tagging important textbooks and standards documents with the
- dominant color of their covers or with some other conspicuous
- feature of the cover. Many of these are described in this lexicon
- under their own entries. See {Aluminum Book}, {Blue Book},
- {Cinderella Book}, {Devil Book}, {Dragon Book}, {Green
- Book}, {Orange Book}, {Pink-Shirt Book}, {Purple Book},
- {Red Book}, {Silver Book}, {White Book}, {Wizard Book},
- {Yellow Book}, and {bible}.
-
- boot: [techspeak; from `by one's bootstraps'] v.,n. To load and
- initialize the operating system on a machine. This usage is no
- longer jargon (having passed into techspeak) but has given rise to
- some derivatives that are still jargon.
-
- The derivative `reboot' implies that the machine hasn't been
- down for long, or that the boot is a {bounce} intended to clear
- some state of {wedgitude}. This is sometimes used of human
- thought processes, as in the following exchange: "You've lost
- me." "OK, reboot. Here's the theory...."
-
- This term is also found in the variants `cold boot' (from
- power-off condition) and `warm boot' (with the CPU and all
- devices already powered up, as after a hardware reset or software
- crash).
-
- Another variant: `soft boot', reinitialization of only part of a
- system, under control of other software still running: "If
- you're running the {mess-dos} emulator, control-alt-insert will
- cause a soft-boot of the emulator, while leaving the rest of the
- system running."
-
- Opposed to this there is `hard boot', which connotes hostility
- towards or frustration with the machine being booted: "I'll have
- to hard-boot this losing Sun." "I recommend booting it hard."
-
- Historical note: this term derives from `bootstrap loader', a short
- program that was read in from cards or paper tape, or toggled in
- from the front panel switches. This program was always very short
- (great efforts were expended on making it short in order to
- minimize the labor and chance of error involved in toggling it in),
- but was just smart enough to read in a slightly more complex
- program (usually from a card or paper tape reader), to which it
- handed control; this program in turn was smart enough to read the
- application or operating system from a magnetic tape drive or disk
- drive. Thus, in successive steps, the computer `pulled itself up
- by its bootstraps' to a useful operating state. Nowadays the
- bootstrap is usually found in ROM or EPROM, and reads the first
- stage in from a fixed location on the disk, called the `boot
- block'. When this program gains control, it is powerful enough to
- load the actual OS and hand control over to it.
-
- bottom-up implementation: n. Hackish opposite of the techspeak term
- `top-down design'. It is now received wisdom in most
- programming cultures that it is best to design from higher levels
- of abstraction down to lower, specifying sequences of action in
- increasing detail until you get to actual code. Hackers often find
- (especially in exploratory designs that cannot be closely
- specified in advance) that it works best to *build* things in
- the opposite order, by writing and testing a clean set of primitive
- operations and then knitting them together.
-
- bounce: v. 1. [perhaps from the image of a thrown ball bouncing
- off a wall] An electronic mail message that is undeliverable and
- returns an error notification to the sender is said to `bounce'.
- See also {bounce message}. 2. [Stanford] To play volleyball.
- At the now-demolished {D. C. Power Lab} building used by the
- Stanford AI Lab in the 1970s, there was a volleyball court on the
- front lawn. From 5 P.M. to 7 P.M. was the scheduled
- maintenance time for the computer, so every afternoon at 5 the
- computer would become unavailable, and over the intercom a voice
- would cry, "Now hear this: bounce, bounce!" followed by Brian
- McCune loudly bouncing a volleyball on the floor outside the
- offices of known volleyballers. 3. To engage in sexual
- intercourse; prob. from the expression `bouncing the mattress',
- but influenced by Piglet's psychosexually loaded "Bounce on me
- too, Tigger!" from the "Winnie-the-Pooh" books. Compare
- {boink}. 4. To casually reboot a system in order to clear up a
- transient problem. Reported primarily among {VMS} users.
- 5. [IBM] To {power cycle} a peripheral in order to reset it.
-
- bounce message: [UNIX] n. Notification message returned to sender by
- a site unable to relay {email} to the intended {{Internet address}}
- recipient or the next link in a {bang path} (see {bounce}).
- Reasons might include a nonexistent or misspelled username or a
- {down} relay site. Bounce messages can themselves fail, with
- occasionally ugly results; see {sorcerer's apprentice mode}.
- The term `bounce mail' is also common.
-
- box: n. 1. A computer; esp. in the construction `foo box'
- where foo is some functional qualifier, like `graphics', or
- the name of an OS (thus, `UNIX box', `MS-DOS box', etc.) "We
- preprocess the data on UNIX boxes before handing it up to the
- mainframe." 2. [within IBM] Without qualification but within an
- SNA-using site, this refers specifically to an IBM front-end
- processor or FEP /F-E-P/. An FEP is a small computer necessary
- to enable an IBM {mainframe} to communicate beyond the limits of
- the {dinosaur pen}. Typically used in expressions like the cry
- that goes up when an SNA network goes down: "Looks like the
- {box} has fallen over." (See {fall over}.) See also
- {IBM}, {fear and loathing}, {fepped out}, {Blue
- Glue}.
-
- boxed comments: n. Comments (explanatory notes attached to program
- instructions) that occupy several lines by themselves; so called
- because in assembler and C code they are often surrounded by a box
- in a style something like this:
-
- /*************************************************
- *
- * This is a boxed comment in C style
- *
- *************************************************/
-
- Common variants of this style omit the asterisks in column 2 or add
- a matching row of asterisks closing the right side of the box. The
- sparest variant omits all but the comment delimiters themselves;
- the `box' is implied. Oppose {winged comments}.
-
- boxen: /bok'sn/ [by analogy with {VAXen}] pl.n. Fanciful
- plural of {box} often encountered in the phrase `UNIX boxen',
- used to describe commodity {{UNIX}} hardware. The connotation is
- that any two UNIX boxen are interchangeable.
-
- boxology: /bok-sol'*-jee/ n. Syn. {ASCII art}. This term
- implies a more restricted domain, that of box-and-arrow drawings.
- "His report has a lot of boxology in it." Compare
- {macrology}.
-
- bozotic: /boh-zoh'tik/ or /boh-zo'tik/ [from the name of a TV
- clown even more losing than Ronald McDonald] adj. Resembling or
- having the quality of a bozo; that is, clownish, ludicrously wrong,
- unintentionally humorous. Compare {wonky}, {demented}. Note
- that the noun `bozo' occurs in slang, but the mainstream
- adjectival form would be `bozo-like' or (in New England)
- `bozoish'.
-
- BQS: /B-Q-S/ adj. Syn. {Berkeley Quality Software}.
-
- brain dump: n. The act of telling someone everything one knows
- about a particular topic or project. Typically used when someone
- is going to let a new party maintain a piece of code. Conceptually
- analogous to an operating system {core dump} in that it saves a
- lot of useful {state} before an exit. "You'll have to
- give me a brain dump on FOOBAR before you start your new job at
- HackerCorp." See {core dump} (sense 4). At Sun, this is also
- known as `TOI' (transfer of information).
-
- brain-damaged: 1. [generalization of `Honeywell Brain Damage'
- (HBD), a theoretical disease invented to explain certain utter
- cretinisms in Honeywell {{Multics}}] adj. Obviously wrong;
- {cretinous}; {demented}. There is an implication that the
- person responsible must have suffered brain damage, because he
- should have known better. Calling something brain-damaged is
- really bad; it also implies it is unusable, and that its failure to
- work is due to poor design rather than some accident. "Only six
- monocase characters per file name? Now *that's*
- brain-damaged!" 2. [esp. in the Mac world] May refer to free
- demonstration software that has been deliberately crippled in some
- way so as not to compete with the commercial product it is
- intended to sell. Syn. {crippleware}.
-
- brain-dead: adj. Brain-damaged in the extreme. It tends to imply
- terminal design failure rather than malfunction or simple
- stupidity. "This comm program doesn't know how to send a break
- --- how brain-dead!"
-
- braino: /bray'no/ n. Syn. for {thinko}.
-
- branch to Fishkill: [IBM: from the location of one of the
- corporation's facilities] n. Any unexpected jump in a program that
- produces catastrophic or just plain weird results. See {jump
- off into never-never land}, {hyperspace}.
-
- brand brand brand: n. Humorous catch-phrase from {BartleMUD}s, in
- which players were described carrying a list of objects, the most
- common of which would usually be a brand. Often used as a joke in
- {talk mode} as in "Fred the wizard is here, carrying brand ruby
- brand brand brand kettle broadsword flamethrower". A brand is a
- torch, of course; one burns up a lot of those exploring dungeons.
- Prob. influenced by the famous Monty Python "Spam" skit.
-
- break: 1. vt. To cause to be broken (in any sense). "Your latest
- patch to the editor broke the paragraph commands." 2. v. (of a
- program) To stop temporarily, so that it may debugged. The place
- where it stops is a `breakpoint'. 3. [techspeak] vi. To send an
- RS-232 break (125 msec of line high) over a serial comm line.
- 4. [UNIX] vi. To strike whatever key currently causes the tty
- driver to send SIGINT to the current process. Normally, break
- (sense 3) or delete does this. 5. `break break' may be said to
- interrupt a conversation (this is an example of verb doubling).
-
- breath-of-life packet: [XEROX PARC] n. An Ethernet packet that
- contained bootstrap (see {boot}) code, periodically sent out
- from a working computer to infuse the `breath of life' into any
- computer on the network that had happened to crash. The machines
- had hardware or firmware that would wait for such a packet after a
- catastrophic error.
-
- breedle: n. See {feep}.
-
- bring X to its knees: v. To present a machine, operating system,
- piece of software, or algorithm with a load so extreme or
- {pathological} that it grinds to a halt. "To bring a MicroVAX
- to its knees, try twenty users running {vi} --- or four running
- {EMACS}." Compare {hog}.
-
- brittle: adj. Said of software that is functional but easily broken
- by changes in operating environment or configuration, or by any
- minor tweak to the software itself. Also, any system that
- responds inappropriately and disastrously to expected external
- stimuli; e.g., a file system that is usually totally scrambled by a
- power failure is said to be brittle. This term is often used to
- describe the results of a research effort that were never intended
- to be robust, but it can be applied to commercially developed
- software, which displays the quality far more often than it ought
- to. Oppose {robust}.
-
- broadcast storm: n. An incorrect packet broadcast on a network that
- causes most hosts to respond all at once, typically with wrong
- answers that start the process over again. See {network
- meltdown}.
-
- broken: adj. 1. Not working properly (of programs). 2. Behaving
- strangely; especially (when used of people) exhibiting extreme
- depression.
-
- broken arrow: [IBM] n. The error code displayed on line 25 of a
- 3270 terminal (or a PC emulating a 3270) for various kinds of
- protocol violations and "unexpected" error conditions (including
- connection to a {down} computer). On a PC, simulated with
- `->/_', with the two center characters overstruck. In true
- {luser} fashion, the original documentation of these codes
- (visible on every 3270 terminal, and necessary for debugging
- network problems) was confined to an IBM customer engineering
- manual.
-
- Note: to appreciate this term fully, it helps to know that `broken
- arrow' is also military jargon for an accident involving nuclear
- weapons....
-
- broket: /broh'k*t/ or /broh'ket`/ [by analogy with `bracket': a
- `broken bracket'] n. Either of the characters `<' and `>',
- when used as paired enclosing delimiters. This word
- originated as a contraction of the phrase `broken bracket', that
- is, a bracket that is bent in the middle. (At MIT, and apparently
- in the {Real World} as well, these are usually called {angle
- brackets}.)
-
- Brooks's Law: prov. "Adding manpower to a late software project
- makes it later" --- a result of the fact that the advantage from
- splitting work among N programmers is O(N) (that is,
- proportional to N), but the complexity and communications
- cost associated with coordinating and then merging their work
- is O(N^2) (that is, proportional to the square of N).
- The quote is from Fred Brooks, a manager of IBM's OS/360 project
- and author of `The Mythical Man-Month' (Addison-Wesley, 1975,
- ISBN 0-201-00650-2), an excellent early book on software
- engineering. The myth in question has been most tersely expressed
- as "Programmer time is fungible" and Brooks established
- conclusively that it is not. Hackers have never forgotten his
- advice; too often, {management} does. See also
- {creationism}, {second-system effect}.
-
- BRS: /B-R-S/ n. Syn. {Big Red Switch}. This abbreviation is
- fairly common on-line.
-
- brute force: adj. Describes a primitive programming style, one in
- which the programmer relies on the computer's processing power
- instead of using his or her own intelligence to simplify the problem,
- often ignoring problems of scale and applying na"ive methods suited
- to small problems directly to large ones.
-
- The {canonical} example of a brute-force algorithm is associated
- with the `traveling salesman problem' (TSP), a classical NP-hard
- problem: Suppose a person is in, say, Boston, and wishes to drive
- to N other cities. In what order should he or she visit
- them in order to minimize the distance travelled? The brute-force
- method is to simply generate all possible routes and compare the
- distances; while guaranteed to work and simple to implement, this
- algorithm is clearly very stupid in that it considers even
- obviously absurd routes (like going from Boston to Houston via San
- Francisco and New York, in that order). For very small N it
- works well, but it rapidly becomes absurdly inefficient when
- N increases (for N = 15, there are already
- 1,307,674,368,000 possible routes to consider, and for
- N = 1000 --- well, see {bignum}). See
- also {NP-}.
-
- A more simple-minded example of brute-force programming is finding
- the smallest number in a large list by first using an existing
- program to sort the list in ascending order, and then picking the
- first number off the front.
-
- Whether brute-force programming should be considered stupid or not
- depends on the context; if the problem isn't too big, the extra CPU
- time spent on a brute-force solution may cost less than the
- programmer time it would take to develop a more `intelligent'
- algorithm. Alternatively, a more intelligent algorithm may imply
- more long-term complexity cost and bug-chasing than are justified
- by the speed improvement.
-
- Ken Thompson, co-inventor of UNIX, is reported to have uttered the
- epigram "When in doubt, use brute force". He probably intended
- this as a {ha ha only serious}, but the original UNIX kernel's
- preference for simple, robust, and portable algorithms over
- {brittle} `smart' ones does seem to have been a significant
- factor in the success of that OS. Like so many other tradeoffs in
- software design, the choice between brute force and complex,
- finely-tuned cleverness is often a difficult one that requires both
- engineering savvy and delicate esthetic judgment.
-
- brute force and ignorance: n. A popular design technique at many
- software houses --- {brute force} coding unrelieved by any
- knowledge of how problems have been previously solved in elegant
- ways. Dogmatic adherence to design methodologies tends to
- encourage it. Characteristic of early {larval stage}
- programming; unfortunately, many never outgrow it. Often
- abbreviated BFI: "Gak, they used a bubble sort! That's strictly
- from BFI." Compare {bogosity}.
-
- BSD: /B-S-D/ n. [acronym for `Berkeley System Distribution'] a
- family of {{UNIX}} versions for the DEC {VAX} and PDP-11
- developed by Bill Joy and others at {Berzerkeley} starting around
- 1980, incorporating paged virtual memory, TCP/IP networking
- enhancements, and many other features. The BSD versions (4.1, 4.2,
- and 4.3) and the commercial versions derived from them (SunOS, ULTRIX,
- and Mt. Xinu) held the technical lead in the UNIX world until
- AT&T's successful standardization efforts after about 1986, and are
- still widely popular. See {{UNIX}}, {USG UNIX}.
-
- bubble sort: n. Techspeak for a particular sorting technique in
- which pairs of adjacent values in the list to be sorted are
- compared and interchanged if they are out of order; thus, list
- entries `bubble upward' in the list until they bump into one with a
- lower sort value. Because it is not very good relative to other
- methods and is the one typically stumbled on by {na"ive} and
- untutored programmers, hackers consider it the {canonical}
- example of a na"ive algorithm. The canonical example of a really
- *bad* algorithm is {bogo-sort}. A bubble sort might be used
- out of ignorance, but any use of bogo-sort could issue only from
- brain damage or willful perversity.
-
- bucky bits: /buh'kee bits/ n. 1. obs. The bits produced by the
- CONTROL and META shift keys on a SAIL keyboard, resulting in a
- 9-bit keyboard character set. The MIT AI TV (Knight) keyboards
- extended this with TOP and separate left and right CONTROL and META
- keys, resulting in a 12-bit character set; later, LISP Machines
- added such keys as SUPER, HYPER, and GREEK (see {space-cadet
- keyboard}). 2. By extension, bits associated with `extra' shift
- keys on any keyboard, e.g., the ALT on an IBM PC or command and
- option keys on a Macintosh.
-
- It is rumored that `bucky bits' were named for Buckminster Fuller
- during a period when he was consulting at Stanford. Actually,
- `Bucky' was Niklaus Wirth's nickname when *he* was at
- Stanford; he first suggested the idea of an EDIT key to set the
- 8th bit of an otherwise 7-bit ASCII character. This was used in a
- number of editors written at Stanford or in its environs (TV-EDIT
- and NLS being the best-known). The term spread to MIT and CMU
- early and is now in general use. See {double bucky},
- {quadruple bucky}.
-
- buffer overflow: n. What happens when you try to stuff more data
- into a buffer (holding area) than it can handle. This may be due
- to a mismatch in the processing rates of the producing and
- consuming processes (see {overrun}), or because the buffer is
- simply too small to hold all the data that must accumulate before a
- piece of it can be processed. For example, in a text-processing
- tool that {crunch}es a line at a time, a short line buffer can
- result in {lossage} as input from a long line overflows the
- buffer and trashes data beyond it. Good defensive programming
- would check for overflow on each character and stop accepting data
- when the buffer is full up. The term is used of and by humans in a
- metaphorical sense. "What time did I agree to meet you? My buffer
- must have overflowed." Or "If I answer that phone my buffer is
- going to overflow." See also {spam}, {overrun screw}.
-
- bug: n. An unwanted and unintended property of a program or hardware,
- esp. one that causes it to malfunction. Antonym of {feature}.
- Examples: "There's a bug in the editor: it writes things out
- backwards." "The system crashed because of a hardware bug."
- "Fred is a winner, but he has a few bugs" (i.e., Fred is a good
- guy, but he has a few personality problems).
-
- Historical note: Some have said this term came from telephone
- company usage, in which "bugs in a telephone cable" were blamed
- for noisy lines, but this appears to be an incorrect folk
- etymology. Admiral Grace Hopper (an early computing pioneer better
- known for inventing {COBOL}) liked to tell a story in which a
- technician solved a persistent {glitch} in the Harvard Mark II
- machine by pulling an actual insect out from between the
- contacts of one of its relays, and she subsequently promulgated
- {bug} in its hackish sense as a joke about the incident (though,
- as she was careful to admit, she was not there when it happened).
- For many years the logbook associated with the incident and the
- actual bug in question (a moth) sat in a display case at the Naval
- Surface Warfare Center. The entire story, with a picture of the
- logbook and the moth taped into it, is recorded in the `Annals of
- the History of Computing', Vol. 3, No. 3 (July 1981), pp. 285--286.
-
- The text of the log entry (from September 9, 1945), reads "1545
- Relay #70 Panel F (moth) in relay. First actual case of bug being
- found". This wording seems to establish that the term was already in use
- at the time in its current specific sense. Indeed, the use of
- `bug' to mean an industrial defect was already established in
- Thomas Edison's time, and `bug' in the sense of an disruptive event
- goes back to Shakespeare! In the first edition of Samuel Johnson's
- dictionary one meaning of `bug' is "A frightful object; a walking
- spectre"; this is traced to `bugbear', a Welsh term for a variety
- of mythological monster which (to complete the circle) has recently
- been reintroduced into the popular lexicon through fantasy
- role-playing games.
-
- In any case, in jargon the word almost never refers to insects.
- Here is a plausible conversation that never actually happened:
-
- "There is a bug in this ant farm!"
-
- "What do you mean? I don't see any ants in it."
-
- "That's the bug."
-
- [There has been a widespread myth that the original bug was moved
- to the Smithsonian, and an earlier version of this entry so
- asserted. A correspondent who thought to check discovered that the
- bug was not there. While investigating this, your editor
- discovered that the NSWC still had the bug, but had unsuccessfully
- tried to get the Smithsonian to accept it --- and that the present
- curator of the History of American Technology Museum didn't
- know this and agreed that it would make a worthwhile exhibit.
- Thus, the process of investigating the original-computer-bug bug
- may have fixed it in an entirely unexpected way, by making the myth
- true! --- ESR]
-
- bug-compatible: adj. Said of a design or revision that has been
- badly compromised by a requirement to be compatible with
- {fossil}s or {misfeature}s in other programs or (esp.)
- previous releases of itself. "MS-DOS 2.0 used \ as a path
- separator to be bug-compatible with some cretin's choice of / as an
- option character in 1.0."
-
- bug-for-bug compatible: n. Same as {bug-compatible}, with the
- additional implication that much tedious effort went into ensuring
- that each (known) bug was replicated.
-
- buglix: /buhg'liks/ n. Pejorative term referring to DEC's ULTRIX
- operating system in its earlier *severely* buggy versions.
- Still used to describe ULTRIX, but without venom. Compare
- {HP-SUX}.
-
- bulletproof: adj. Used of an algorithm or implementation considered
- extremely {robust}; lossage-resistant; capable of correctly
- recovering from any imaginable exception condition. This is a rare
- and valued quality. Syn. {armor-plated}.
-
- bum: 1. vt. To make highly efficient, either in time or space,
- often at the expense of clarity. "I managed to bum three more
- instructions out of that code." "I spent half the night bumming
- the interrupt code." 2. To squeeze out excess; to remove
- something in order to improve whatever it was removed from (without
- changing function; this distinguishes the process from a
- {featurectomy}). 3. n. A small change to an algorithm, program,
- or hardware device to make it more efficient. "This hardware bum
- makes the jump instruction faster." Usage: now uncommon, largely
- superseded by v. {tune} (and n. {tweak}, {hack}), though
- none of these exactly capture sense 2. All these uses are rare in
- Commonwealth hackish, because in the parent dialects of English
- `bum' is a rude synonym for `buttocks'.
-
- bump: vt. Synonym for increment. Has the same meaning as
- C's ++ operator. Used esp. of counter variables, pointers, and index
- dummies in `for', `while', and `do-while' loops.
-
- burble: [from Lewis Carroll's "Jabberwocky"] v. Like {flame},
- but connotes that the source is truly clueless and ineffectual
- (mere flamers can be competent). A term of deep contempt.
- "There's some guy on the phone burbling about how he got a DISK
- FULL error and it's all our comm software's fault."
-
- buried treasure: n. A surprising piece of code found in some
- program. While usually not wrong, it tends to vary from {crufty}
- to {bletcherous}, and has lain undiscovered only because it was
- functionally correct, however horrible it is. Used sarcastically,
- because what is found is anything *but* treasure. Buried
- treasure almost always needs to be dug up and removed. "I just
- found that the scheduler sorts its queue using {bubble sort}!
- Buried treasure!"
-
- burn-in period: n. 1. A factory test designed to catch systems
- with {marginal} components before they get out the door; the
- theory is that burn-in will protect customers by outwaiting the
- steepest part of the {bathtub curve} (see {infant
- mortality}). 2. A period of indeterminate length in which a person
- using a computer is so intensely involved in his project that he
- forgets basic needs such as food, drink, sleep, etc. Warning:
- Excessive burn-in can lead to burn-out. See {hack mode},
- {larval stage}.
-
- burst page: n. Syn. {banner}, sense 1.
-
- busy-wait: vi. Used of human behavior, conveys that the subject is
- busy waiting for someone or something, intends to move instantly as
- soon as it shows up, and thus cannot do anything else at the
- moment. "Can't talk now, I'm busy-waiting till Bill gets off the
- phone."
-
- Technically, `busy-wait' means to wait on an event by
- {spin}ning through a tight or timed-delay loop that polls for
- the event on each pass, as opposed to setting up an interrupt
- handler and continuing execution on another part of the task. This
- is a wasteful technique, best avoided on time-sharing systems where
- a busy-waiting program may {hog} the processor.
-
- buzz: vi. 1. Of a program, to run with no indication of progress
- and perhaps without guarantee of ever finishing; esp. said of
- programs thought to be executing tight loops of code. A program
- that is buzzing appears to be {catatonic}, but you never get out
- of catatonia, while a buzzing loop may eventually end of its own
- accord. "The program buzzes for about 10 seconds trying to sort
- all the names into order." See {spin}; see also {grovel}.
- 2. [ETA Systems] To test a wire or printed circuit trace for
- continuity by applying an AC rather than DC signal. Some wire
- faults will pass DC tests but fail a buzz test. 3. To process an
- array or list in sequence, doing the same thing to each element.
- "This loop buzzes through the tz array looking for a terminator
- type."
-
- BWQ: /B-W-Q/ [IBM: acronym, `Buzz Word Quotient'] The
- percentage of buzzwords in a speech or documents. Usually roughly
- proportional to {bogosity}. See {TLA}.
-
- by hand: adv. Said of an operation (especially a repetitive,
- trivial, and/or tedious one) that ought to be performed
- automatically by the computer, but which a hacker instead has to
- step tediously through. "My mailer doesn't have a command to
- include the text of the message I'm replying to, so I have to do it
- by hand." This does not necessarily mean the speaker has to
- retype a copy of the message; it might refer to, say, dropping into
- a {subshell} from the mailer, making a copy of one's mailbox file,
- reading that into an editor, locating the top and bottom of the
- message in question, deleting the rest of the file, inserting `>'
- characters on each line, writing the file, leaving the editor,
- returning to the mailer, reading the file in, and later remembering
- to delete the file. Compare {eyeball search}.
-
- byte:: /bi:t/ [techspeak] n. A unit of memory or data equal to
- the amount used to represent one character; on modern architectures
- this is usually 8 bits, but may be 9 on 36-bit machines. Some
- older architectures used `byte' for quantities of 6 or 7 bits, and
- the PDP-10 supported `bytes' that were actually bitfields of
- 1 to 36 bits! These usages are now obsolete, and even 9-bit bytes
- have become rare in the general trend toward power-of-2 word sizes.
-
- Historical note: The term originated in 1956 during the early
- design phase for the IBM Stretch computer; originally it was
- described as 1 to 6 bits (typical I/O equipment of the period
- used 6-bit chunks of information). The move to an 8-bit byte
- happened in late 1956, and this size was later adopted and
- promulgated as a standard by the System/360. The term `byte' was
- coined by mutating the word `bite' so it would not be accidentally
- misspelled as {bit}. See also {nybble}.
-
- bytesexual: /bi:t`sek'shu-*l/ adj. Said of hardware, denotes
- willingness to compute or pass data in either {big-endian} or
- {little-endian} format (depending, presumably, on a {mode bit}
- somewhere). See also {NUXI problem}.
-
- = C =
-
- C: n. 1. The third letter of the English alphabet. 2. ASCII
- 1000011. 3. The name of a programming language designed by
- Dennis Ritchie during the early 1970s and immediately used to
- reimplement {{UNIX}}. So called because many features derived
- from an earlier compiler named `B' in commemoration of
- *its* parent, BCPL; before Bjarne Stroustrup settled the
- question by designing C++, there was a humorous debate over whether
- C's successor should be named `D' or `P'. C became immensely
- popular outside Bell Labs after about 1980 and is now the dominant
- language in systems and microcomputer applications programming.
- See also {languages of choice}, {indent style}.
-
- C is often described, with a mixture of fondness and disdain
- varying according to the speaker, as "a language that combines
- all the elegance and power of assembly language with all the
- readability and maintainability of assembly language".
-
- calculator: [Cambridge] n. Syn. for {bitty box}.
-
- can: vt. To abort a job on a time-sharing system. Used esp. when the
- person doing the deed is an operator, as in "canned from the
- {{console}}". Frequently used in an imperative sense, as in "Can
- that print job, the LPT just popped a sprocket!" Synonymous with
- {gun}. It is said that the ASCII character with mnemonic CAN
- (0011000) was used as a kill-job character on some early OSes.
-
- canonical: [historically, `according to religious law'] adj. The
- usual or standard state or manner of something. This word has a
- somewhat more technical meaning in mathematics. Two formulas such
- as 9 + x and x + 9 are said to be equivalent because
- they mean the same thing, but the second one is in `canonical
- form' because it is written in the usual way, with the highest
- power of x first. Usually there are fixed rules you can use
- to decide whether something is in canonical form. The jargon
- meaning, a relaxation of the technical meaning, acquired its
- present loading in computer-science culture largely through its
- prominence in Alonzo Church's work in computation theory and
- mathematical logic (see {Knights of the Lambda Calculus}).
- Compare {vanilla}.
-
- This word has an interesting history. Non-technical academics do
- not use the adjective `canonical' in any of the senses defined
- above with any regularity; they do however use the nouns `canon' and
- `canonicity' (not *canonicalness or *canonicality). The `canon' of
- a given author is the complete body of authentic works by that
- author (this usage is familiar to Sherlock Holmes fans as well as
- to literary scholars). `*The* canon' is the body of works in
- a given field (e.g., works of literature, or of art, or of music)
- deemed worthwhile for students to study and for scholars to
- investigate.
-
- These non-techspeak academic usages derive ultimately from the
- historical meaning, specifically the classification of the books of
- the Bible into two groups by Christian theologians. The
- `canonical' books were the ones widely accepted as Holy
- Scripture and held to be of primary authority. The
- `deuterocanonical' books (literally `secondarily canonical';
- also known as the `Apochrypha') were held to be of lesser
- authority --- indeed they have been held in such low esteem that to
- this day they are omitted from most Protestant bibles.
-
- Hackers invest this term with a playfulness that makes an ironic
- contrast with its historical meaning. A true story: One Bob
- Sjoberg, new at the MIT AI Lab, expressed some annoyance at the use
- of jargon. Over his loud objections, GLS and RMS made a point of
- using it as much as possible in his presence, and eventually it
- began to sink in. Finally, in one conversation, he used the word
- `canonical' in jargon-like fashion without thinking. Steele:
- "Aha! We've finally got you talking jargon too!" Stallman:
- "What did he say?" Steele: "Bob just used `canonical' in the
- canonical way."
-
- Of course, canonicality depends on context, but it is implicitly
- defined as the way *hackers* normally expect things to be.
- Thus, a hacker may claim with a straight face that `according to
- religious law' is *not* the canonical meaning of `canonical'.
-
- card: n. 1. An electronic printed-circuit board (see also {tall
- card}, {short card}. 2. obs. Syn. {{punched card}}.
-
- card walloper: n. An EDP programmer who grinds out batch programs
- that do stupid things like print people's paychecks. Compare
- {code grinder}. See also {{punched card}}, {eighty-column
- mind}.
-
- careware: /keir'weir/ n. {Shareware} for which either the
- author suggests that some payment be made to a nominated charity
- or a levy directed to charity is included on top of the
- distribution charge. Syn. {charityware}; compare
- {crippleware}, sense 2.
-
- cargo cult programming: n. A style of (incompetent) programming
- dominated by ritual inclusion of code or program structures that
- serve no real purpose. A cargo cult programmer will usually
- explain the extra code as a way of working around some bug
- encountered in the past, but usually neither the bug nor the reason
- the code apparently avoided the bug was ever fully understood
- (compare {shotgun debugging}, {voodoo programming}).
-
- The term `cargo cult' is a reference to aboriginal religions that
- grew up in the South Pacific after World War II. The practices of
- these cults center on building elaborate mockups of airplanes and
- military style landing strips in the hope of bringing the return of
- the god-like airplanes that brought such marvelous cargo during the
- war. Hackish usage probably derives from Richard Feynman's
- characterization of certain practices as "cargo cult science" in
- his book `Surely You're Joking, Mr. Feynman' (W. W. Norton
- & Co, New York 1985, ISBN 0-393-01921-7).
-
- case and paste: [from `cut and paste'] n. 1. The addition of a new
- {feature} to an existing system by selecting the code from an
- existing feature and pasting it in with minor changes. Common in
- telephony circles because most operations in a telephone switch are
- selected using `case' statements. Leads to {software bloat}.
-
- In some circles of EMACS users this is called `programming by
- Meta-W', because Meta-W is the EMACS command for copying a block of
- text to a kill buffer in preparation to pasting it in elsewhere.
- The term is condescending, implying that the programmer is acting
- mindlessly rather than thinking carefully about what is required to
- integrate the code for two similar cases.
-
- casters-up mode: [IBM] n. Yet another synonym for `broken' or
- `down'.
-
- casting the runes: n. What a {guru} does when you ask him or her
- to run a particular program and type at it because it never works
- for anyone else; esp. used when nobody can ever see what the guru
- is doing different from what J. Random Luser does. Compare
- {incantation}, {runes}, {examining the entrails}; also see
- the AI koan about Tom Knight in appendix A.
-
- cat: [from `catenate' via {{UNIX}} `cat(1)'] vt.
- 1. [techspeak] To spew an entire file to the screen or some other
- output sink without pause. 2. By extension, to dump large amounts
- of data at an unprepared target or with no intention of browsing it
- carefully. Usage: considered silly. Rare outside UNIX sites. See
- also {dd}, {BLT}.
-
- Among UNIX fans, `cat(1)' is considered an excellent example
- of user-interface design, because it outputs the file contents
- without such verbosity as spacing or headers between the files, and
- because it does not require the files to consist of lines of text,
- but works with any sort of data.
-
- Among UNIX-haters, `cat(1)' is considered the {canonical}
- example of *bad* user-interface design. This because it is more
- often used to {blast} a file to standard output than to
- concatenate two files. The name `cat' for the former
- operation is just as unintuitive as, say, LISP's {cdr}.
-
- Of such oppositions are {holy wars} made....
-
- catatonic: adj. Describes a condition of suspended animation in
- which something is so {wedged} or {hung} that it makes no
- response. If you are typing on a terminal and suddenly the
- computer doesn't even echo the letters back to the screen as you
- type, let alone do what you're asking it to do, then the computer
- is suffering from catatonia (possibly because it has crashed).
- "There I was in the middle of a winning game of {nethack} and it
- went catatonic on me! Aaargh!" Compare {buzz}.
-
- cdr: /ku'dr/ or /kuh'dr/ [from LISP] vt. To skip past the
- first item from a list of things (generalized from the LISP
- operation on binary tree structures, which returns a list
- consisting of all but the first element of its argument). In the
- form `cdr down', to trace down a list of elements: "Shall we
- cdr down the agenda?" Usage: silly. See also {loop through}.
-
- Historical note: The instruction format of the IBM 7090 that hosted
- the original LISP implementation featured two 15-bit fields called
- the `address' and `decrement' parts. The term `cdr' was originally
- `Contents of Decrement part of Register'. Similarly, `car' stood
- for `Contents of Address part of Register'.
-
- The cdr and car operations have since become bases for
- formation of compound metaphors in non-LISP contexts. GLS recalls,
- for example, a programming project in which strings were
- represented as linked lists; the get-character and skip-character
- operations were of course called CHAR and CHDR.
-
- chad: /chad/ n. 1. The perforated edge strips on printer paper, after
- they have been separated from the printed portion. Also called
- {selvage} and {perf}. 2. obs. The confetti-like paper bits punched
- out of cards or paper tape; this was also called `chaff', `computer
- confetti', and `keypunch droppings'.
-
- Historical note: One correspondent believes `chad' (sense 2)
- derives from the Chadless keypunch (named for its inventor), which
- cut little u-shaped tabs in the card to make a hole when the tab
- folded back, rather than punching out a circle/rectangle; it was
- clear that if the Chadless keypunch didn't make them, then the
- stuff that other keypunches made had to be `chad'.
-
- chad box: n. {Iron Age} card punches contained boxes inside them,
- about the size of a lunchbox (or in some models a large
- wastebasket), that held the {chad} (sense 2). You had to open
- the covers of the card punch periodically and empty the chad box.
- The {bit bucket} was notionally the equivalent device in the CPU
- enclosure, which was typically across the room in another great
- gray-and-blue box.
-
- chain: [orig. from BASIC's `CHAIN' statement] vi. To hand off
- execution to a child or successor without going through the
- {OS} command interpreter that invoked it. The state of the
- parent program is lost and there is no returning to it. Though
- this facility used to be common on memory-limited micros and is
- still widely supported for backward compatibility, the jargon usage
- is semi-obsolescent; in particular, most UNIX programmers will
- think of this as an {exec}. Oppose the more modern {subshell}.
-
- char: /keir/ or /char/; rarely, /kar/ n. Shorthand for
- `character'. Esp. used by C programmers, as `char' is
- C's typename for character data.
-
- charityware: /char'it-ee-weir`/ n. Syn. {careware}.
-
- chase pointers: 1. vi. To go through multiple levels of
- indirection, as in traversing a linked list or graph structure.
- Used esp. by programmers in C, where explicit pointers are a very
- common data type. This is techspeak, but it remains jargon when
- used of human networks. "I'm chasing pointers. Bob said you
- could tell me who to talk to about...." See {dangling
- pointer} and {snap}. 2. [Cambridge] `pointer chase' or
- `pointer hunt': The process of going through a dump
- (interactively or on a large piece of paper printed with hex
- {runes}) following dynamic data-structures. Used only in a
- debugging context.
-
- chemist: [Cambridge] n. Someone who wastes computer time on
- {number-crunching} when you'd far rather the machine were doing
- something more productive, such as working out anagrams of your
- name or printing Snoopy calendars or running {life} patterns.
- May or may not refer to someone who actually studies chemistry.
-
- Chernobyl chicken: n. See {laser chicken}.
-
- Chernobyl packet: /cher-noh'b*l pak'*t/ n. A network packet that
- induces {network meltdown} (the result of a {broadcast storm}),
- in memory of the 1987 nuclear accident at Chernobyl in the Ukraine.
- The typical case of this is an IP Ethernet datagram that passes
- through a gateway with both source and destination Ether and IP
- address set as the respective broadcast addresses for the
- subnetworks being gated between. Compare {Christmas tree
- packet}.
-
- chicken head: [Commodore] n. The Commodore Business Machines logo,
- which strongly resembles a poultry part. Rendered in ASCII as
- `C='. With the arguable exception of the Amiga (see {amoeba}),
- Commodore's machines are notoriously crocky little {bitty box}es
- (see also {PETSCII}). Thus, this usage may owe something to
- Philip K. Dick's novel `Do Androids Dream of Electric Sheep?'
- (the basis for the movie `Blade Runner'), in which a
- `chickenhead' is a mutant with below-average intelligence.
-
- chiclet keyboard: n. A keyboard with small rectangular or
- lozenge-shaped rubber or plastic keys that look like pieces of
- chewing gum. (Chiclets is the brand name of a variety of chewing
- gum that does in fact resemble the keys of chiclet keyboards.)
- Used esp. to describe the original IBM PCjr keyboard. Vendors
- unanimously liked these because they were cheap, and a lot of early
- portable and laptop products got launched using them. Customers
- rejected the idea with almost equal unanimity, and chiclets are not
- often seen on anything larger than a digital watch any more.
-
- chine nual: /sheen'yu-*l/ [MIT] n.,obs. The Lisp Machine Manual, so
- called because the title was wrapped around the cover so only those
- letters showed on the front.
-
- Chinese Army technique: n. Syn. {Mongolian Hordes technique}.
-
- choke: v. To reject input, often ungracefully. "Nuls make System
- V's `lpr(1)' choke." "I tried building an {EMACS} binary to
- use {X}, but `cpp(1)' choked on all those `#define's."
- See {barf}, {gag}, {vi}.
-
- chomp: vi. To {lose}; specifically, to chew on something of
- which more was bitten off than one can. Probably related to
- gnashing of teeth. See {bagbiter}. A hand gesture commonly
- accompanies this. To perform it, hold the four fingers
- together and place the thumb against their tips. Now open and
- close your hand rapidly to suggest a biting action (much like what
- Pac-Man does in the classic video game, though this pantomime seems
- to predate that). The gesture alone means `chomp chomp' (see
- Verb Doubling in the "Jargon Construction" section of the
- Prependices). The hand may be pointed at the object of complaint,
- and for real emphasis you can use both hands at once. Doing this
- to a person is equivalent to saying "You chomper!" If you point
- the gesture at yourself, it is a humble but humorous admission of
- some failure. You might do this if someone told you that a program
- you had written had failed in some surprising way and you felt dumb
- for not having anticipated it.
-
- chomper: n. Someone or something that is chomping; a loser. See
- {loser}, {bagbiter}, {chomp}.
-
- Christmas tree: n. A kind of RS-232 line tester or breakout box
- featuring rows of blinking red and green LEDs suggestive of
- Christmas lights.
-
- Christmas tree packet: n. A packet with every single option set for
- whatever protocol is in use. See {kamikaze packet}, {Chernobyl
- packet}. (The term doubtless derives from a fanciful image of each
- little option bit being represented by a different-colored light
- bulb, all turned on.)
-
- chrome: [from automotive slang via wargaming] n. Showy features
- added to attract users but contributing little or nothing to
- the power of a system. "The 3D icons in Motif are just chrome,
- but they certainly are *pretty* chrome!" Distinguished from
- {bells and whistles} by the fact that the latter are usually
- added to gratify developers' own desires for featurefulness.
- Often used as a term of contempt.
-
- chug: vi. To run slowly; to {grind} or {grovel}. "The disk is
- chugging like crazy."
-
- Church of the SubGenius: n. A mutant offshoot of
- {Discordianism} launched in 1981 as a spoof of fundamentalist
- Christianity by the `Reverend' Ivan Stang, a brilliant satirist
- with a gift for promotion. Popular among hackers as a rich source
- of bizarre imagery and references such as "Bob" the divine
- drilling-equipment salesman, the Benevolent Space Xists, and the
- Stark Fist of Removal. Much SubGenius theory is concerned with the
- acquisition of the mystical substance or quality of
- `slack'.
-
- Cinderella Book: [CMU] n. `Introduction to Automata Theory,
- Languages, and Computation', by John Hopcroft and Jeffrey Ullman,
- (Addison-Wesley, 1979). So called because the cover depicts a girl
- (putatively Cinderella) sitting in front of a Rube Goldberg device
- and holding a rope coming out of it. The back cover depicts the
- girl with the device in shambles after she has pulled on the rope.
- See also {{book titles}}.
-
- CI$: // n. Hackerism for `CIS', CompuServe Information Service.
- The dollar sign refers to CompuServe's rather steep line charges. Often
- used in {sig block}s just before a CompuServe address. Syn.
- {Compu$erve}.
-
- Classic C: /klas'ik C/ [a play on `Coke Classic'] n. The
- C programming language as defined in the first edition of {K&R},
- with some small additions. It is also known as `K&R C'. The name
- came into use while C was being standardized by the ANSI X3J11
- committee. Also `C Classic'. This is sometimes applied
- elsewhere: thus, `X Classic', where X = Star Trek (referring to the
- original TV series) or X = PC (referring to IBM's ISA-bus machines
- as opposed to the PS/2 series). This construction is especially
- used of product series in which the newer versions are considered
- serious losers relative to the older ones.
-
- clean: 1. adj. Used of hardware or software designs, implies
- `elegance in the small', that is, a design or implementation that
- may not hold any surprises but does things in a way that is
- reasonably intuitive and relatively easy to comprehend from the
- outside. The antonym is `grungy' or {crufty}. 2. v. To remove
- unneeded or undesired files in a effort to reduce clutter: "I'm
- cleaning up my account." "I cleaned up the garbage and now have
- 100 Meg free on that partition."
-
- CLM: /C-L-M/ [Sun: `Career Limiting Move'] 1. n. An action
- endangering one's future prospects of getting plum projects and
- raises, and possibly one's job: "His Halloween costume was a
- parody of his manager. He won the prize for `best CLM'."
- 2. adj. Denotes extreme severity of a bug, discovered by a
- customer and obviously missed earlier because of poor testing:
- "That's a CLM bug!"
-
- clobber: vt. To overwrite, usually unintentionally: "I walked off
- the end of the array and clobbered the stack." Compare {mung},
- {scribble}, {trash}, and {smash the stack}.
-
- clocks: n. Processor logic cycles, so called because each
- generally corresponds to one clock pulse in the processor's timing.
- The relative execution times of instructions on a machine are
- usually discussed in clocks rather than absolute fractions of a
- second; one good reason for this is that clock speeds for various
- models of the machine may increase as technology improves, and it
- is usually the relative times one is interested in when discussing
- the instruction set. Compare {cycle}.
-
- clone: n. 1. An exact duplicate: "Our product is a clone of
- their product." Implies a legal reimplementation from
- documentation or by reverse-engineering. Also connotes lower
- price. 2. A shoddy, spurious copy: "Their product is a
- clone of our product." 3. A blatant ripoff, most likely violating
- copyright, patent, or trade secret protections: "Your
- product is a clone of my product." This use implies legal
- action is pending. 4. A `PC clone'; a PC-BUS/ISA or
- EISA-compatible 80x86-based microcomputer (this use is sometimes
- spelled `klone' or `PClone'). These invariably have much
- more bang for the buck than the IBM archetypes they resemble.
- 5. In the construction `UNIX clone': An OS designed to deliver
- a UNIX-lookalike environment without UNIX license fees, or with
- additional `mission-critical' features such as support for
- real-time programming. 6. v. To make an exact copy of something.
- "Let me clone that" might mean "I want to borrow that paper so I
- can make a photocopy" or "Let me get a copy of that file before
- you {mung} it".
-
- clover key: [Mac users] n. See {command key}.
-
- clustergeeking: /kluh'st*r-gee`king/ [CMU] n. Spending more time
- at a computer cluster doing CS homework than most people spend
- breathing.
-
- COBOL: /koh'bol/ [COmmon Business-Oriented Language] n.
- (Synonymous with {evil}.) A weak, verbose, and flabby language
- used by {card walloper}s to do boring mindless things on
- {dinosaur} mainframes. Hackers believe all COBOL programmers
- are {suit}s or {code grinder}s, and no self-respecting hacker
- will ever admit to having learned the language. Its very name is
- seldom uttered without ritual expressions of disgust or horror.
- See also {fear and loathing}, {software rot}.
-
- COBOL fingers: /koh'bol fing'grz/ n. Reported from Sweden, a
- (hypothetical) disease one might get from coding in COBOL. The
- language requires code verbose beyond all reason; thus it is
- alleged that programming too much in COBOL causes one's fingers to
- wear down to stubs by the endless typing. "I refuse to type in
- all that source code again; it would give me COBOL fingers!"
-
- code grinder: n. 1. A {suit}-wearing minion of the sort hired in
- legion strength by banks and insurance companies to implement
- payroll packages in RPG and other such unspeakable horrors. In his
- native habitat, the code grinder often removes the suit jacket to
- reveal an underplumage consisting of button-down shirt (starch
- optional) and a tie. In times of dire stress, the sleeves (if
- long) may be rolled up and the tie loosened about half an inch. It
- seldom helps. The {code grinder}'s milieu is about as far from
- hackerdom as you can get and still touch a computer; the term
- connotes pity. See {Real World}, {suit}. 2. Used of or to a
- hacker, a really serious slur on the person's creative ability;
- connotes a design style characterized by primitive technique,
- rule-boundedness, {brute force}, and utter lack of imagination.
- Compare {card walloper}; contrast {hacker}, {real
- programmer}.
-
- code police: [by analogy with George Orwell's `thought police'] n.
- A mythical team of Gestapo-like storm troopers that might burst
- into one's office and arrest one for violating programming style
- rules. May be used either seriously, to underline a claim that a
- particular style violation is dangerous, or ironically, to suggest
- that the practice under discussion is condemned mainly by
- anal-retentive {weenie}s. "Dike out that goto or the code
- police will get you!" The ironic usage is perhaps more common.
-
- codewalker: n. A program component that traverses other programs for
- a living. Compilers have codewalkers in their front ends; so do
- cross-reference generators and some database front ends. Other
- utility programs that try to do too much with source code may turn
- into codewalkers. As in "This new `vgrind' feature would require a
- codewalker to implement."
-
- coefficient of X: n. Hackish speech makes rather heavy use of
- pseudo-mathematical metaphors. Four particularly important ones
- involve the terms `coefficient', `factor', `index', and
- `quotient'. They are often loosely applied to things you
- cannot really be quantitative about, but there are subtle
- distinctions among them that convey information about the way the
- speaker mentally models whatever he or she is describing.
-
- `Foo factor' and `foo quotient' tend to describe something for
- which the issue is one of presence or absence. The canonical
- example is {fudge factor}. It's not important how much you're
- fudging; the term simply acknowledges that some fudging is needed.
- You might talk of liking a movie for its silliness factor.
- Quotient tends to imply that the property is a ratio of two opposing
- factors: "I would have won except for my luck quotient." This
- could also be "I would have won except for the luck factor", but
- using *quotient* emphasizes that it was bad luck overpowering
- good luck (or someone else's good luck overpowering your own).
-
- `Foo index' and `coefficient of foo' both tend to imply
- that foo is, if not strictly measurable, at least something that
- can be larger or smaller. Thus, you might refer to a paper or
- person as having a `high bogosity index', whereas you would be less
- likely to speak of a `high bogosity factor'. `Foo index' suggests
- that foo is a condensation of many quantities, as in the mundane
- cost-of-living index; `coefficient of foo' suggests that foo is a
- fundamental quantity, as in a coefficient of friction. The choice
- between these terms is often one of personal preference; e.g., some
- people might feel that bogosity is a fundamental attribute and thus
- say `coefficient of bogosity', whereas others might feel it is a
- combination of factors and thus say `bogosity index'.
-
- cokebottle: /kohk'bot-l/ n. Any very unusual character,
- particularly one you can't type because it it isn't on your
- keyboard. MIT people used to complain about the
- `control-meta-cokebottle' commands at SAIL, and SAIL people
- complained right back about the `altmode-altmode-cokebottle'
- commands at MIT. After the demise of the {space-cadet
- keyboard}, `cokebottle' faded away as serious usage, but was
- often invoked humorously to describe an (unspecified) weird or
- non-intuitive keystroke command. It may be due for a second
- inning, however. The OSF/Motif window manager, `mwm(1)', has
- a reserved keystroke for switching to the default set of
- keybindings and behavior. This keystroke is (believe it or not)
- `control-meta-bang' (see {bang}). Since the exclamation point
- looks a lot like an upside down Coke bottle, Motif hackers have
- begun referring to this keystroke as `cokebottle'. See also
- {quadruple bucky}.
-
- cold boot: n. See {boot}.
-
- COME FROM: n. A semi-mythical language construct dual to the `go
- to'; `COME FROM' <label> would cause the referenced label to act as a
- sort of trapdoor, so that if the program ever reached it control
- would quietly and {automagically} be transferred to the statement
- following the `COME FROM'. `COME FROM' was first proposed in a
- {Datamation} article of December 1973 (reprinted in the April 1984
- issue of `Communications of the ACM') that parodied the
- then-raging `structured programming' {holy wars} (see
- {considered harmful}). Mythically, some variants are the
- `assigned COME FROM' and the `computed COME FROM'
- (parodying some nasty control constructs in FORTRAN and some
- extended BASICs). Of course, multi-tasking (or non-determinism)
- could be implemented by having more than one `COME FROM' statement
- coming from the same label.
-
- In some ways the FORTRAN `DO' looks like a `COME FROM'
- statement. After the terminating statement number/`CONTINUE'
- is reached, control continues at the statement following the DO.
- Some generous FORTRANs would allow arbitrary statements (other than
- `CONTINUE') for the statement, leading to examples like:
-
- DO 10 I=1,LIMIT
- C imagine many lines of code here, leaving the
- C original DO statement lost in the spaghetti...
- WRITE(6,10) I,FROB(I)
- 10 FORMAT(1X,I5,G10.4)
-
- in which the trapdoor is just after the statement labeled 10.
- (This is particularly surprising because the label doesn't appear
- to have anything to do with the flow of control at all!)
-
- While sufficiently astonishing to the unsuspecting reader, this
- form of `COME FROM' statement isn't completely general. After all,
- control will eventually pass to the following statement. The
- implementation of the general form was left to Univac FORTRAN,
- ca. 1975. The statement `AT 100' would perform a `COME
- FROM 100'. It was intended strictly as a debugging aid, with dire
- consequences promised to anyone so deranged as to use it in
- production code. More horrible things had already been perpetrated
- in production languages, however; doubters need only contemplate
- the `ALTER' verb in {COBOL}.
-
- `COME FROM' was supported under its own name for the first
- time 15 years later, in C-INTERCAL (see {INTERCAL},
- {retrocomputing}); knowledgeable observers are still reeling
- from the shock.
-
- comm mode: /kom mohd/ [ITS: from the feature supporting on-line
- chat; the term may spelled with one or two m's] Syn. for {talk
- mode}.
-
- command key: [Mac users] n. The Macintosh key with the cloverleaf
- graphic on its keytop; sometimes referred to as `flower',
- `pretzel', `clover', `propeller', `beanie' (an apparent
- reference to the major feature of a propeller beanie), or
- {splat}. The Mac's equivalent of an {ALT} key. The
- proliferation of terms for this creature may illustrate one subtle
- peril of iconic interfaces.
-
- comment out: vt. To surround a section of code with comment
- delimiters or to prefix every line in the section with a comment
- marker; this prevents it from being compiled or interpreted. Often
- done when the code is redundant or obsolete, but you want to leave
- it in the source to make the intent of the active code clearer;
- also when the code in that section is broken and you want to bypass
- it in order to debug some other part of the code. Compare
- {condition out}, usually the preferred technique in languages
- (such as {C}) that make it possible.
-
- Commonwealth Hackish:: n. Hacker jargon as spoken outside
- the U.S., esp. in the British Commonwealth. It is reported that
- Commonwealth speakers are more likely to pronounce truncations like
- `char' and `soc', etc., as spelled (/char/, /sok/), as
- opposed to American /keir/ and /sohsh/. Dots in {newsgroup}
- names tend to be pronounced more often (so soc.wibble is /sok dot
- wib'l/ rather than /sohsh wib'l/). The prefix {meta} may be
- pronounced /mee't*/; similarly, Greek letter beta is often
- /bee't*/, zeta is often /zee't*/, and so forth. Preferred
- metasyntactic variables include `eek', `ook',
- `frodo', and `bilbo'; `wibble', `wobble', and
- in emergencies `wubble'; `banana', `wombat',
- `frog', {fish}, and so on and on (see {foo}, sense 4).
-
- Alternatives to verb doubling include suffixes `-o-rama',
- `frenzy' (as in feeding frenzy), and `city' (examples: "barf
- city!" "hack-o-rama!" "core dump frenzy!"). Finally, note
- that the American terms `parens', `brackets', and `braces' for (),
- [], and {} are uncommon; Commonwealth hackish prefers
- `brackets', `square brackets', and `curly brackets'. Also, the
- use of `pling' for {bang} is common outside the United States.
-
- See also {attoparsec}, {calculator}, {chemist}, {console
- jockey}, {fish}, {go-faster stripes}, {grunge}, {hakspek},
- {heavy metal}, {leaky heap}, {lord high fixer}, {noddy},
- {psychedelicware}, {plingnet}, {raster blaster}, {seggie},
- {terminal junkie}, {tick-list features}, {weeble},
- {weasel}, {YABA}, and notes or definitions under {Bad Thing},
- {barf}, {bogus}, {bum}, {chase pointers}, {cosmic rays},
- {crippleware}, {crunch}, {dodgy}, {gonk}, {hamster},
- {hardwarily}, {mess-dos}, {nybble}, {proglet}, {root},
- {SEX}, {tweak}, and {xyzzy}.
-
- compact: adj. Of a design, describes the valuable property that it
- can all be apprehended at once in one's head. This generally means
- the thing created from the design can be used with greater facility
- and fewer errors than an equivalent tool that is not compact.
- Compactness does not imply triviality or lack of power; for
- example, C is compact and FORTRAN is not, but C is more powerful
- than FORTRAN. Designs become non-compact through accreting
- {feature}s and {cruft} that don't merge cleanly into the
- overall design scheme (thus, some fans of {Classic C} maintain
- that ANSI C is no longer compact).
-
- compiler jock: n. See {jock} (sense 2).
-
- compress: [UNIX] vt. When used without a qualifier, generally
- refers to {crunch}ing of a file using a particular
- C implementation of Lempel-Ziv compression by James A. Woods et al. and
- widely circulated via {USENET}. Use of {crunch} itself in this
- sense is rare among UNIX hackers.
-
- Compu$erve: n. See {CI$}.
-
- computer confetti: n. Syn. {chad}. Though this term is common,
- this use of the punched-card chad is not a good idea, as the pieces
- are stiff and have sharp corners that could injure the eyes. GLS
- reports that he once attended a wedding at MIT during which he and
- a few other guests enthusiastically threw chad instead of rice. The
- groom later grumbled that he and his bride had spent most of the
- evening trying to get the stuff out of their hair.
-
- computer geek: n. One who eats (computer) bugs for a living. One
- who fulfills all the dreariest negative stereotypes about hackers:
- an asocial, malodorous, pasty-faced monomaniac with all the
- personality of a cheese grater. Cannot be used by outsiders
- without implied insult to all hackers; compare black-on-black usage
- of `nigger'. A computer geek may be either a fundamentally
- clueless individual or a proto-hacker in {larval stage}. Also
- called `turbo nerd', `turbo geek'. See also
- {clustergeeking}, {geek out}, {wannabee}, {terminal
- junkie}.
-
- computron: /kom'pyoo-tron`/ n. 1. A notional unit of computing
- power combining instruction speed and storage capacity, dimensioned
- roughly in instructions-per-second times megabytes-of-main-store
- times megabytes-of-mass-storage. "That machine can't run GNU
- EMACS, it doesn't have enough computrons!" This usage is usually
- found in metaphors that treat computing power as a fungible
- commodity good, like a crop yield or diesel horsepower. See
- {bitty box}, {Get a real computer!}, {toy}, {crank}.
- 2. A mythical subatomic particle that bears the unit quantity of
- computation or information, in much the same way that an electron
- bears one unit of electric charge (see also {bogon}). An
- elaborate pseudo-scientific theory of computrons has been developed
- based on the physical fact that the molecules in a solid object
- move more rapidly as it is heated. It is argued that an object
- melts because the molecules have lost their information about where
- they are supposed to be (that is, they have emitted computrons).
- This explains why computers get so hot and require air
- conditioning; they use up computrons. Conversely, it should be
- possible to cool down an object by placing it in the path of a
- computron beam. It is believed that this may also explain why
- machines that work at the factory fail in the computer room: the
- computrons there have been all used up by the other hardware.
- (This theory probably owes something to the "Warlock" stories
- by Larry Niven, the best known being "What Good is a Glass
- Dagger?", in which magic is fueled by an exhaustible natural
- resource called `mana'.)
-
- condition out: vt. To prevent a section of code from being compiled
- by surrounding it with a conditional-compilation directive whose
- condition is always false. The {canonical} examples are `#if
- 0' (or `#ifdef notdef', though some find this {bletcherous})
- and `#endif' in C. Compare {comment out}.
-
- condom: n. 1. The protective plastic bag that accompanies 3.5-inch
- microfloppy diskettes. Rarely, also used of (paper) disk envelopes.
- Unlike the write protect tab, the condom (when left on) not only
- impedes the practice of {SEX} but has also been shown to have a high
- failure rate as drive mechanisms attempt to access the disk --- and
- can even fatally frustrate insertion. 2. The protective cladding
- on a {light pipe}.
-
- connector conspiracy: [probably came into prominence with the
- appearance of the KL-10 (one model of the {PDP-10}), none of
- whose connectors matched anything else] n. The tendency of
- manufacturers (or, by extension, programmers or purveyors of
- anything) to come up with new products that don't fit together
- with the old stuff, thereby making you buy either all new stuff or
- expensive interface devices. The KL-10 Massbus connector was
- actually *patented* by DEC, which reputedly refused to license
- the design and thus effectively locked third parties out of
- competition for the lucrative Massbus peripherals market. This is
- a source of never-ending frustration for the diehards who maintain
- older PDP-10 or VAX systems. Their CPUs work fine, but they are
- stuck with dying, obsolescent disk and tape drives with low
- capacity and high power requirements.
-
- In these latter days of open-systems computing this term has fallen
- somewhat into disuse, to be replaced by the observation that
- "Standards are great! There are so *many* of them to choose
- from!" Compare {backward combatability}.
-
- cons: /konz/ or /kons/ [from LISP] 1. vt. To add a new element
- to a specified list, esp. at the top. "OK, cons picking a
- replacement for the console TTY onto the agenda." 2. `cons up':
- vt. To synthesize from smaller pieces: "to cons up an example".
-
- In LISP itself, `cons' is the most fundamental operation for
- building structures. It takes any two objects and returns a
- `dot-pair' or two-branched tree with one object hanging from each
- branch. Because the result of a cons is an object, it can be used
- to build binary trees of any shape and complexity. Hackers think
- of it as a sort of universal constructor, and that is where the
- jargon meanings spring from.
-
- considered harmful: adj. Edsger W. Dijkstra's note in the
- March 1968 `Communications of the ACM', "Goto Statement
- Considered Harmful", fired the first salvo in the structured
- programming wars. Amusingly, the ACM considered the resulting
- acrimony sufficiently harmful that it will (by policy) no longer
- print an article taking so assertive a position against a coding
- practice. In the ensuing decades, a large number of both serious
- papers and parodies have borne titles of the form "X
- considered Y". The structured-programming wars eventually blew
- over with the realization that both sides were wrong, but use of
- such titles has remained as a persistent minor in-joke (the
- `considered silly' found at various places in this lexicon is
- related).
-
- console:: n. 1. The operator's station of a {mainframe}. In
- times past, this was a privileged location that conveyed godlike
- powers to anyone with fingers on its keys. Under UNIX and other
- modern timesharing OSes, such privileges are guarded by passwords
- instead, and the console is just the {tty} the system was booted
- from. Some of the mystique remains, however, and it is traditional
- for sysadmins to post urgent messages to all users from the console
- (on UNIX, /dev/console). 2. On microcomputer UNIX boxes, the main
- screen and keyboard (as opposed to character-only terminals talking
- to a serial port). Typically only the console can do real graphics
- or run {X}. See also {CTY}.
-
- console jockey: n. See {terminal junkie}.
-
- content-free: [by analogy with techspeak `context-free'] adj.
- Used of a message that adds nothing to the recipient's knowledge.
- Though this adjective is sometimes applied to {flamage}, it more
- usually connotes derision for communication styles that exalt form
- over substance or are centered on concerns irrelevant to the
- subject ostensibly at hand. Perhaps most used with reference to
- speeches by company presidents and other professional manipulators.
- "Content-free? Uh...that's anything printed on glossy
- paper." See also {four-color glossies}. "He gave a talk on
- the implications of electronic networks for postmodernism and the
- fin-de-siecle aesthetic. It was content-free."
-
- control-C: vi. 1. "Stop whatever you are doing." From the
- interrupt character used on many operating systems to abort a
- running program. Considered silly. 2. interj. Among BSD UNIX
- hackers, the canonical humorous response to "Give me a break!"
-
- control-O: vi. "Stop talking." From the character used on some
- operating systems to abort output but allow the program to keep on
- running. Generally means that you are not interested in hearing
- anything more from that person, at least on that topic; a standard
- response to someone who is flaming. Considered silly.
-
- control-Q: vi. "Resume." From the ASCII XON character used to
- undo a previous control-S (in fact it is also pronounced
- XON /X-on/).
-
- control-S: vi. "Stop talking for a second." From the ASCII XOFF
- character (this is also pronounced XOFF /X-of/). Control-S
- differs from {control-O} in that the person is asked to stop
- talking (perhaps because you are on the phone) but will be allowed
- to continue when you're ready to listen to him --- as opposed to
- control-O, which has more of the meaning of "Shut up." Considered
- silly.
-
- Conway's Law: prov. The rule that the organization of the software and
- the organization of the software team will be congruent; originally
- stated as "If you have four groups working on a compiler, you'll
- get a 4-pass compiler".
-
- This was originally promulgated by Melvin Conway, an early
- proto-hacker who wrote an assembler for the Burroughs 220 called
- SAVE. The name `SAVE' didn't stand for anything; it was just that
- you lost fewer card decks and listings because they all had SAVE
- written on them.
-
- cookbook: [from amateur electronics and radio] n. A book of small
- code segments that the reader can use to do various {magic}
- things in programs. One current example is the `PostScript
- Language Tutorial and Cookbook' by Adobe Systems, Inc
- (Addison-Wesley, ISBN 0-201-10179-3) which has recipes for things
- like wrapping text around arbitrary curves and making 3D fonts.
- Cookbooks, slavishly followed, can lead one into {voodoo
- programming}, but are useful for hackers trying to {monkey up}
- small programs in unknown languages. This is analogous to the role
- of phrasebooks in human languages.
-
- cookie: n. A handle, transaction ID, or other token of agreement
- between cooperating programs. "I give him a packet, he gives me
- back a cookie." The claim check you get from a dry-cleaning shop
- is a perfect mundane example of a cookie; the only thing it's
- useful for is to relate a later transaction to this one (so you get
- the same clothes back). Compare {magic cookie}; see also
- {fortune cookie}.
-
- cookie bear: n. Syn. {cookie monster}.
-
- cookie file: n. A collection of {fortune cookie}s in a format
- that facilitates retrieval by a fortune program. There are several
- different ones in public distribution, and site admins often
- assemble their own from various sources including this lexicon.
-
- cookie monster: [from "Sesame Street"] n. Any of a family of
- early (1970s) hacks reported on {{TOPS-10}}, {{ITS}}, {{Multics}},
- and elsewhere that would lock up either the victim's terminal (on a
- time-sharing machine) or the {{console}} (on a batch
- {mainframe}), repeatedly demanding "I WANT A COOKIE". The
- required responses ranged in complexity from "COOKIE" through
- "HAVE A COOKIE" and upward. See also {wabbit}.
-
- copper: n. Conventional electron-carrying network cable with a
- core conductor of copper --- or aluminum! Opposed to {light
- pipe} or, say, a short-range microwave link.
-
- copy protection: n. A class of clever methods for preventing
- incompetent pirates from stealing software and legitimate customers
- from using it. Considered silly.
-
- copybroke: /ko'pee-brohk/ adj. [play on `copyright'] Used to
- describe an instance of a copy-protected program that has been
- `broken'; that is, a copy with the copy-protection scheme disabled.
- Syn. {copywronged}.
-
- copyleft: /kop'ee-left/ [play on `copyright'] n. 1. The
- copyright notice (`General Public License') carried by {GNU}
- {EMACS} and other Free Software Foundation software, granting reuse
- and reproduction rights to all comers (but see also {General
- Public Virus}). 2. By extension, any copyright notice intended to
- achieve similar aims.
-
- copywronged: /ko'pee-rongd/ [play on `copyright'] adj. Syn. for
- {copybroke}.
-
- core: n. Main storage or RAM. Dates from the days of ferrite-core
- memory; now archaic as techspeak most places outside IBM, but also
- still used in the UNIX community and by old-time hackers or those
- who would sound like them. Some derived idioms are quite current;
- `in core', for example, means `in memory' (as opposed to `on
- disk'), and both {core dump} and the `core image' or `core
- file' produced by one are terms in favor. Commonwealth hackish
- prefers {store}.
-
- core dump: n. [common {Iron Age} jargon, preserved by UNIX]
- 1. [techspeak] A copy of the contents of {core}, produced when a
- process is aborted by certain kinds of internal error. 2. By
- extension, used for humans passing out, vomiting, or registering
- extreme shock. "He dumped core. All over the floor. What a
- mess." "He heard about X and dumped core." 3. Occasionally
- used for a human rambling on pointlessly at great length; esp. in
- apology: "Sorry, I dumped core on you". 4. A recapitulation of
- knowledge (compare {bits}, sense 1). Hence, spewing all one
- knows about a topic, esp. in a lecture or answer to an exam
- question. "Short, concise answers are better than core dumps"
- (from the instructions to an exam at Columbia; syn. {brain
- dump}). See {core}.
-
- core leak: n. Syn. {memory leak}.
-
- Core Wars: n. A game between `assembler' programs in a
- simulated machine, where the objective is to kill your opponent's
- program by overwriting it. Popularized by A. K. Dewdney's column
- in `Scientific American' magazine, this was actually
- devised by Victor Vyssotsky, Robert Morris, and Dennis Ritchie in
- the early 1960s (their original game was called `Darwin' and ran on
- a PDP-1 at Bell Labs). See {core}.
-
- corge: /korj/ [originally, the name of a cat] n. Yet another
- meta-syntactic variable, invented by Mike Gallaher and propagated
- by the {GOSMACS} documentation. See {grault}.
-
- cosmic rays: n. Notionally, the cause of {bit rot}. However, this is
- a semi-independent usage that may be invoked as a humorous way to
- {handwave} away any minor {randomness} that doesn't seem worth the
- bother of investigating. "Hey, Eric --- I just got a burst of
- garbage on my {tube}, where did that come from?" "Cosmic rays, I
- guess." Compare {sunspots}, {phase of the moon}. The British seem
- to prefer the usage `cosmic showers'; `alpha particles' is also
- heard, because stray alpha particles passing through a memory chip
- can cause single-bit errors (this becomes increasingly more likely
- as memory sizes and densities increase).
-
- Factual note: Alpha particles cause bit rot, cosmic rays do not
- (except occasionally in spaceborne computers). Intel could not
- explain random bit drops in their early chips, and one hypothesis
- was cosmic rays. So they created the World's Largest Lead Safe,
- using 25 tons of the stuff, and used two identical boards for
- testing. One was placed in the safe, one outside. The hypothesis
- was that if cosmic rays were causing the bit drops, they should see
- a statistically significant difference between the error rates on
- the two boards. They did not observe such a difference. Further
- investigation demonstrated conclusively that the bit drops were due
- to alpha particle emissions from thorium (and to a much lesser
- degree uranium) in the encapsulation material. Since it is
- impossible to eliminate these radioactives (they are uniformly
- distributed through the earth's crust, with the statistically
- insignificant exception of uranium lodes) it became obvious that
- you have to design memories to withstand these hits.
-
- cough and die: v. Syn. {barf}. Connotes that the program is
- throwing its hands up by design rather than because of a bug or
- oversight. "The parser saw a control-A in its input where it was
- looking for a printable, so it coughed and died."
-
- cowboy: [Sun, from William Gibson's {cyberpunk} SF] n. Synonym
- for {hacker}. It is reported that at Sun this word is often
- said with reverence.
-
- CP/M:: /C-P-M/ n. [Control Program for Microcomputers] An
- early microcomputer {OS} written by hacker Gary Kildall for
- 8080- and Z80-based machines, very popular in the late 1970s but
- virtually wiped out by MS-DOS after the release of the IBM PC
- in 1981. Legend has it that Kildall's company blew its chance to
- write the OS for the IBM PC because Kildall decided to spend a day
- IBM's reps wanted to meet with him enjoying the perfect flying
- weather in his private plane. Many of CP/M's features and conventions
- strongly resemble those of early DEC operating systems such as
- {{TOPS-10}}, OS/8, RSTS, and RSX-11. See {{MS-DOS}},
- {operating system}.
-
- CPU Wars: /C-P-U worz/ n. A 1979 large-format comic by Chas
- Andres chronicling the attempts of the brainwashed androids of IPM
- (Impossible to Program Machines) to conquer and destroy the
- peaceful denizens of HEC (Human Engineered Computers). This rather
- transparent allegory featured many references to {ADVENT} and
- the immortal line "Eat flaming death, minicomputer mongrels!"
- (uttered, of course, by an IPM stormtrooper). It is alleged that
- the author subsequently received a letter of appreciation on IBM
- company stationery from the head of IBM's Thomas J. Watson Research
- Laboratories (then, as now, one of the few islands of true
- hackerdom in the IBM archipelago). The lower loop of the B in the
- IBM logo, it is said, had been carefully whited out. See {eat
- flaming death}.
-
- cracker: n. One who breaks security on a system. Coined ca. 1985
- by hackers in defense against journalistic misuse of {hacker}
- (q.v., sense 8). An earlier attempt to establish `worm' in this
- sense around 1981--82 on USENET was largely a failure.
-
- crank: [from automotive slang] vt. Verb used to describe the
- performance of a machine, especially sustained performance. "This
- box cranks (or, cranks at) about 6 {megaflops}, with a burst mode
- of twice that on vectorized operations."
-
- crash: 1. n. A sudden, usually drastic failure. Most often said
- of the {system} (q.v., sense 1), sometimes of magnetic disk
- drives. "Three {luser}s lost their files in last night's disk
- crash." A disk crash that involves the read/write heads dropping
- onto the surface of the disks and scraping off the oxide may also
- be referred to as a `head crash', whereas the term `system
- crash' usually, though not always, implies that the operating
- system or other software was at fault. 2. v. To fail suddenly.
- "Has the system just crashed?" "Something crashed the OS!" See
- {down}. Also used transitively to indicate the cause of the
- crash (usually a person or a program, or both). "Those idiots
- playing {SPACEWAR} crashed the system." 3. vi. Sometimes said
- of people hitting the sack after a long {hacking run}; see
- {gronk out}.
-
- crash and burn: vi.,n. A spectacular crash, in the mode of the
- conclusion of the car-chase scene in the movie "Bullitt" and
- many subsequent imitators. Sun-3 monitors losing the flyback
- transformer and lightning strikes on VAX-11/780 backplanes are
- notable crash and burn generators. The construction
- `crash-and-burn machine' is reported for a computer used
- exclusively for alpha or {beta} testing, or reproducing bugs
- (i.e., not for development). The implication is that it wouldn't
- be such a disaster if that machine crashed, since only the testers
- would be inconvenienced.
-
- crawling horror: n. Ancient crufty hardware or software that is
- kept obstinately alive by forces beyond the control of the hackers
- at a site. Like {dusty deck} or {gonkulator}, but connotes
- that the thing described is not just an irritation but an active
- menace to health and sanity. "Mostly we code new stuff in C, but
- they pay us to maintain one big FORTRAN II application from
- nineteen-sixty-X that's a real crawling horror...." Compare
- {WOMBAT}.
-
- cray: /kray/ n. 1. (properly, capitalized) One of the line of
- supercomputers designed by Cray Research. 2. Any supercomputer at
- all. 3. The {canonical} {number-crunching} machine.
-
- The term is actually the lowercased last name of Seymour Cray, a
- noted computer architect and co-founder of the company. Numerous
- vivid legends surround him, some true and some admittedly invented
- by Cray Research brass to shape their corporate culture and image.
-
- cray instability: n. A shortcoming of a program or algorithm that
- manifests itself only when a large problem is being run on a powerful
- machine (see {cray}). Generally more subtle than bugs that can
- be detected in smaller problems running on a workstation or mini.
-
- crayola: /kray-oh'l*/ n. A super-mini or -micro computer that
- provides some reasonable percentage of supercomputer performance
- for an unreasonably low price. Might also be a {killer micro}.
-
- crayon: n. 1. Someone who works on Cray supercomputers. More
- specifically, it implies a programmer, probably of the CDC ilk,
- probably male, and almost certainly wearing a tie (irrespective of
- gender). Systems types who have a UNIX background tend not to be
- described as crayons. 2. A {computron} (sense 2) that
- participates only in {number-crunching}. 3. A unit of
- computational power equal to that of a single Cray-1. There is a
- standard joke about this that derives from an old Crayola crayon
- promotional gimmick: When you buy 64 crayons you get a free
- sharpener.
-
- creationism: n. The (false) belief that large, innovative designs
- can be completely specified in advance and then painlessly magicked
- out of the void by the normal efforts of a team of normally
- talented programmers. In fact, experience has shown repeatedly
- that good designs arise only from evolutionary, exploratory
- interaction between one (or at most a small handful of)
- exceptionally able designer(s) and an active user population ---
- and that the first try at a big new idea is always wrong.
- Unfortunately, because these truths don't fit the planning models
- beloved of {management}, they are generally ignored.
-
- creeping elegance: n. Describes a tendency for parts of a design to
- become {elegant} past the point of diminishing return. This
- often happens at the expense of the less interesting parts of the
- design, the schedule, and other things deemed important in the
- {Real World}. See also {creeping featurism}, {second-system
- effect}, {tense}.
-
- creeping featurism: /kree'ping fee'chr-izm/ n. 1. Describes a
- systematic tendency to load more {chrome} and {feature}s onto
- systems at the expense of whatever elegance they may have possessed
- when originally designed. See also {feeping creaturism}. "You
- know, the main problem with {BSD} UNIX has always been creeping
- featurism." 2. More generally, the tendency for anything
- complicated to become even more complicated because people keep
- saying "Gee, it would be even better if it had this feature
- too". (See {feature}.) The result is usually a patchwork
- because it grew one ad-hoc step at a time, rather than being
- planned. Planning is a lot of work, but it's easy to add just one
- extra little feature to help someone ... and then another ...
- and another.... When creeping featurism gets out of hand, it's
- like a cancer. Usually this term is used to describe computer
- programs, but it could also be said of the federal government, the
- IRS 1040 form, and new cars. A similar phenomenon sometimes
- afflicts conscious redesigns; see {second-system effect}. See
- also {creeping elegance}.
-
- creeping featuritis: /kree'ping fee'-chr-i:`t*s/ n. Variant of
- {creeping featurism}, with its own spoonerization: `feeping
- creaturitis'. Some people like to reserve this form for the
- disease as it actually manifests in software or hardware, as
- opposed to the lurking general tendency in designers' minds. (After
- all, -ism means `condition' or `pursuit of', whereas -itis usually
- means `inflammation of'.)
-
- cretin: /kret'n/ or /kree'tn/ n. Congenital {loser}; an obnoxious
- person; someone who can't do anything right. It has been observed
- that many American hackers tend to favor the British pronunciation
- /kre'tn/ over standard American /kree'tn/; it is thought this may
- be due to the insidious phonetic influence of Monty Python's Flying
- Circus.
-
- cretinous: /kret'n-*s/ or /kreet'n-*s/ adj. Wrong; stupid;
- non-functional; very poorly designed. Also used pejoratively of
- people. See {dread high-bit disease} for an example.
- Approximate synonyms: {bletcherous}, `bagbiting' (see
- {bagbiter}), {losing}, {brain-damaged}.
-
- crippleware: n. 1. Software that has some important functionality
- deliberately removed, so as to entice potential users to pay for a
- working version. 2. [Cambridge] {Guiltware} that exhorts you to
- donate to some charity (compare {careware}). 3. Hardware
- deliberately crippled, which can be upgraded to a more expensive
- model by a trivial change (e.g., cutting a jumper).
-
- critical mass: n. In physics, the minimum amount of fissionable
- material required to sustain a chain reaction. Of a software
- product, describes a condition of the software such that fixing one
- bug introduces one plus {epsilon} bugs. When software achieves
- critical mass, it can only be discarded and rewritten.
-
- crlf: /ker'l*f/, sometimes /kru'l*f/ or /C-R-L-F/ n. (often
- capitalized as `CRLF') A carriage return (CR) followed by a line
- feed (LF). More loosely, whatever it takes to get you from the
- end of one line of text to the beginning of the next line. See
- {newline}, {terpri}. Under {{UNIX}} influence this usage
- has become less common (UNIX uses a bare line feed as its `CRLF').
-
- crock: [from the obvious mainstream scatologism] n. 1. An awkward
- feature or programming technique that ought to be made cleaner.
- Using small integers to represent error codes without the
- program interpreting them to the user (as in, for example, UNIX
- `make(1)', which returns code 139 for a process that dies due
- to {segfault}). 2. A technique that works acceptably, but which
- is quite prone to failure if disturbed in the least, for example
- depending on the machine opcodes having particular bit patterns so
- that you can use instructions as data words too; a tightly woven,
- almost completely unmodifiable structure. See {kluge},
- {brittle}. Also in the adjectives `crockish' and
- `crocky', and the nouns `crockishness' and `crockitude'.
-
- cross-post: [USENET] vi. To post a single article simultaneously to
- several newsgroups. Distinguished from posting the article
- repeatedly, once to each newsgroup, which causes people to see it
- multiple times (this is very bad form). Gratuitous cross-posting
- without a Followup-To line directing responses to a single followup
- group is frowned upon, as it tends to cause {followup} articles
- to go to inappropriate newsgroups when people respond to only one
- part of the original posting.
-
- crudware: /kruhd'weir/ n. Pejorative term for the hundreds of
- megabytes of low-quality {freeware} circulated by user's groups
- and BBS systems in the micro-hobbyist world. "Yet *another*
- set of disk catalog utilities for {{MS-DOS}}? What crudware!"
-
- cruft: /kruhft/ [back-formation from {crufty}] 1. n. An
- unpleasant substance. The dust that gathers under your bed is
- cruft; the TMRC Dictionary correctly noted that attacking it with a
- broom only produces more. 2. n. The results of shoddy
- construction. 3. vt. [from `hand cruft', pun on `hand craft'] To
- write assembler code for something normally (and better) done by a
- compiler (see {hand-hacking}). 4. n. Excess; superfluous junk.
- Esp. used of redundant or superseded code.
-
- cruft together: vt. (also `cruft up') To throw together
- something ugly but temporarily workable. Like vt. {kluge up},
- but more pejorative. "There isn't any program now to reverse all
- the lines of a file, but I can probably cruft one together in about
- 10 minutes." See {hack together}, {hack up}, {kluge up},
- {crufty}.
-
- cruftsmanship: /kruhfts'm*n-ship / n. [from {cruft}] The
- antithesis of craftsmanship.
-
- crufty: /kruhf'tee/ [origin unknown; poss. from `crusty' or
- `cruddy'] adj. 1. Poorly built, possibly over-complex. The
- {canonical} example is "This is standard old crufty DEC
- software". In fact, one fanciful theory of the origin of `crufty'
- holds that was originally a mutation of `crusty' applied to DEC
- software so old that the `s' characters were tall and skinny, looking
- more like `f' characters. 2. Unpleasant, especially to the touch,
- often with encrusted junk. Like spilled coffee smeared with peanut
- butter and catsup. 3. Generally unpleasant. 4. (sometimes spelled
- `cruftie') n. A small crufty object (see {frob}); often one
- that doesn't fit well into the scheme of things. "A LISP property
- list is a good place to store crufties (or, collectively,
- {random} cruft)."
-
- crumb: n. Two binary digits; a {quad}. Larger than a {bit},
- smaller than a {nybble}. Considered silly. Syn. {tayste}.
-
- crunch: 1. vi. To process, usually in a time-consuming or
- complicated way. Connotes an essentially trivial operation that is
- nonetheless painful to perform. The pain may be due to the
- triviality's being embedded in a loop from 1 to 1,000,000,000.
- "FORTRAN programs do mostly {number-crunching}." 2. vt. To
- reduce the size of a file by a complicated scheme that produces bit
- configurations completely unrelated to the original data, such as
- by a Huffman code. (The file ends up looking like a paper document
- would if somebody crunched the paper into a wad.) Since such
- compression usually takes more computations than simpler methods
- such as run-length encoding, the term is doubly appropriate. (This
- meaning is usually used in the construction `file crunch(ing)' to
- distinguish it from {number-crunching}.) See {compress}.
- 3. n. The character `#'. Used at XEROX and CMU, among other
- places. See {{ASCII}}. 4. vt. To squeeze program source into a
- minimum-size representation that will still compile or execute.
- The term came into being specifically for a famous program on the
- BBC micro that crunched BASIC source in order to make it run more
- quickly (it was a wholly interpretive BASIC, so the number of
- characters mattered). {Obfuscated C Contest} entries are often
- crunched; see the first example under that entry.
-
- cruncha cruncha cruncha: /kruhn'ch* kruhn'ch* kruhn'ch*/ interj.
- An encouragement sometimes muttered to a machine bogged down in a
- serious {grovel}. Also describes a notional sound made by
- groveling hardware. See {wugga wugga}, {grind} (sense 3).
-
- cryppie: /krip'ee/ n. A cryptographer. One who hacks or implements
- cryptographic software or hardware.
-
- CTSS: /C-T-S-S/ n. Compatible Time-Sharing System. An early
- (1963) experiment in the design of interactive time-sharing
- operating systems, ancestral to {{Multics}}, {{UNIX}}, and
- {{ITS}}. The name {{ITS}} (Incompatible Time-sharing System)
- was a hack on CTSS, meant both as a joke and to express some basic
- differences in philosophy about the way I/O services should be
- presented to user programs.
-
- CTY: /sit'ee/ or /C-T-Y/ n. [MIT] The terminal physically
- associated with a computer's system {{console}}. The term is a
- contraction of `Console {tty}', that is, `Console TeleTYpe'.
- This {{ITS}}- and {{TOPS-10}}-associated term has become less
- common, as most UNIX hackers simply refer to the CTY as `the
- console'.
-
- cube: n. 1. [short for `cubicle'] A module in the open-plan
- offices used at many programming shops. "I've got the manuals in
- my cube." 2. A NeXT machine (which resembles a matte-black cube).
-
- cubing: [parallel with `tubing'] vi. 1. Hacking on an IPSC (Intel
- Personal SuperComputer) hypercube. "Louella's gone cubing
- *again*!!" 2. Hacking Rubik's Cube or related puzzles,
- either physically or mathematically. 3. An indescribable form of
- self-torture (see sense 1 or #2).
-
- cursor dipped in X: n. There are a couple of metaphors in English
- of the form `pen dipped in X' (perhaps the most common values of X
- are `acid', `bile', and `vitriol'). These map over neatly to this
- hackish usage (the cursor being what moves, leaving letters behind,
- when one is composing on-line). "Talk about a {nastygram}! He
- must've had his cursor dipped in acid when he wrote that one!"
-
- cuspy: /kuhs'pee/ [WPI: from the DEC acronym CUSP, for `Commonly
- Used System Program', i.e., a utility program used by many people]
- adj. 1. (of a program) Well-written. 2. Functionally excellent. A
- program that performs well and interfaces well to users is cuspy.
- See {rude}. 3. [NYU] Said of an attractive woman, especially one
- regarded as available. Implies a certain curvaceousness.
-
- cut a tape: [poss. fr. mainstream `cut a check' or from the
- recording industry's `cut a record'] vi. To write a software or
- document distribution on magnetic tape for shipment. Has nothing
- to do with physically cutting the medium! Though this usage is
- quite widespread, one never speaks of analogously `cutting a disk'
- or anything else in this sense.
-
- cybercrud: /si:'ber-kruhd/ [coined by Ted Nelson] n. Obfuscatory
- tech-talk. Verbiage with a high {MEGO} factor. The computer
- equivalent of bureaucratese.
-
- cyberpunk: /si:'ber-puhnk/ [orig. by SF writer Bruce Bethke and/or
- editor Gardner Dozois] n.,adj. A subgenre of SF launched in 1982
- by William Gibson's epoch-making novel `Neuromancer' (though
- its roots go back through Vernor Vinge's `True Names' (see
- the Bibliography) to John Brunner's 1975 novel `The Shockwave
- Rider'). Gibson's near-total ignorance of computers and the
- present-day hacker culture enabled him to speculate about the role
- of computers and hackers in the future in ways hackers have since
- found both irritatingly na"ive and tremendously stimulating.
- Gibson's work was widely imitated, in particular by the short-lived
- but innovative "Max Headroom" TV series. See {cyberspace},
- {ice}, {go flatline}.
-
- cyberspace: /si:'ber-spays/ n. 1. Notional `information-space'
- loaded with visual cues and navigable with brain-computer
- interfaces called `cyberspace decks'; a characteristic prop of
- {cyberpunk} SF. At the time of this writing (mid-1991),
- serious efforts to construct {virtual reality} interfaces
- modeled explicitly on Gibsonian cyberspace are already under way,
- using more conventional devices such as glove sensors and binocular
- TV headsets. Few hackers are prepared to deny outright the
- possibility of a cyberspace someday evolving out of the network
- (see {network, the}). 2. Occasionally, the metaphoric location
- of the mind of a person in {hack mode}. Some hackers report
- experiencing strong eidetic imagery when in hack mode;
- interestingly, independent reports from multiple sources suggest
- that there are common features to the experience. In particular,
- the dominant colors of this subjective `cyberspace' are often
- gray and silver, and the imagery often involves constellations of
- marching dots, elaborate shifting patterns of lines and angles, or
- moire patterns.
-
- cycle: 1. n. The basic unit of computation. What every hacker
- wants more of (noted hacker Bill Gosper describes himself as a
- "cycle junkie"). One can describe an instruction as taking so
- many `clock cycles'. Often the computer can access its
- memory once on every clock cycle, and so one speaks also of
- `memory cycles'. These are technical meanings of {cycle}. The
- jargon meaning comes from the observation that there are only so
- many cycles per second, and when you are sharing a computer the
- cycles get divided up among the users. The more cycles the
- computer spends working on your program rather than someone else's,
- the faster your program will run. That's why every hacker wants
- more cycles: so he can spend less time waiting for the computer to
- respond. 2. By extension, a notional unit of *human* thought
- power, emphasizing that lots of things compete for the typical
- hacker's think time. "I refused to get involved with the Rubik's
- Cube back when it was big. Knew I'd burn too many cycles on it if
- I let myself." 3. vt. Syn. {bounce}, {120 reset}; from the
- phrase `cycle power'. "Cycle the machine again, that serial port's
- still hung."
-
- cycle crunch: n. A situation where the number of people trying to
- use the computer simultaneously has reached the point where no one
- can get enough cycles because they are spread too thin and the
- system has probably begun to {thrash}. This is an inevitable
- result of Parkinson's Law applied to timesharing. Usually the only
- solution is to buy more computer. Happily, this has rapidly become
- easier in recent years, so much so that the very term `cycle
- crunch' now has a faintly archaic flavor; most hackers now use
- workstations or personal computers as opposed to traditional
- timesharing systems.
-
- cycle drought: n. A scarcity of cycles. It may be due to a {cycle
- crunch}, but it could also occur because part of the computer is
- temporarily not working, leaving fewer cycles to go around.
- "The {high moby} is {down}, so we're running with only
- half the usual amount of memory. There will be a cycle drought
- until it's fixed."
-
- cycle of reincarnation: [coined by Ivan Sutherland ca. 1970] n.
- Term used to refer to a well-known effect whereby function in a
- computing system family is migrated out to special-purpose
- peripheral hardware for speed, then the peripheral evolves toward
- more computing power as it does its job, then somebody notices that
- it is inefficient to support two asymmetrical processors in the
- architecture and folds the function back into the main CPU, at
- which point the cycle begins again. Several iterations of this
- cycle have been observed in graphics-processor design, and at least
- one or two in communications and floating-point processors. Also
- known as `the Wheel of Life', `the Wheel of Samsara', and other
- variations of the basic Hindu/Buddhist theological idea.
-
- cycle server: n. A powerful machine that exists primarily for
- running large {batch} jobs. Implies that interactive tasks such as
- editing are done on other machines on the network, such as
- workstations.
-
- = D =
-
- D. C. Power Lab: n. The former site of {{SAIL}}. Hackers thought
- this was very funny because the obvious connection to electrical
- engineering was nonexistent --- the lab was named for a Donald C.
- Power. Compare {Marginal Hacks}.
-
- daemon: /day'mn/ or /dee'mn/ [from the mythological meaning,
- later rationalized as the acronym `Disk And Execution MONitor'] n.
- A program that is not invoked explicitly, but lies dormant waiting
- for some condition(s) to occur. The idea is that the perpetrator
- of the condition need not be aware that a daemon is lurking (though
- often a program will commit an action only because it knows that it
- will implicitly invoke a daemon). For example, under {{ITS}}
- writing a file on the {LPT} spooler's directory would invoke the
- spooling daemon, which would then print the file. The advantage is
- that programs wanting (in this example) files printed need not
- compete for access to the {LPT}. They simply enter their
- implicit requests and let the daemon decide what to do with them.
- Daemons are usually spawned automatically by the system, and may
- either live forever or be regenerated at intervals. Daemon and
- {demon} are often used interchangeably, but seem to have
- distinct connotations. The term `daemon' was introduced to
- computing by {CTSS} people (who pronounced it /dee'mon/) and
- used it to refer to what ITS called a {dragon}. Although the
- meaning and the pronunciation have drifted, we think this glossary
- reflects current (1991) usage.
-
- dangling pointer: n. A reference that doesn't actually lead
- anywhere (in C and some other languages, a pointer that doesn't
- actually point at anything valid). Usually this is because it
- formerly pointed to something that has moved or disappeared. Used
- as jargon in a generalization of its techspeak meaning; for
- example, a local phone number for a person who has since moved to the
- other coast is a dangling pointer.
-
- Datamation: /day`t*-may'sh*n/ n. A magazine that many hackers
- assume all {suit}s read. Used to question an unbelieved quote,
- as in "Did you read that in `Datamation?'" It used to
- publish something hackishly funny every once in a while, like the
- original paper on {COME FROM} in 1973, but it has since become much
- more exclusively {suit}-oriented and boring.
-
- day mode: n. See {phase} (sense 1). Used of people only.
-
- dd: /dee-dee/ [UNIX: from IBM {JCL}] vt. Equivalent to {cat}
- or {BLT}. This was originally the name of a UNIX copy command
- with special options suitable for block-oriented devices. Often
- used in heavy-handed system maintenance, as in "Let's dd the root
- partition onto a tape, then use the boot PROM to load it back on to
- a new disk". The UNIX `dd(1)' was designed with a weird,
- distinctly non-UNIXy keyword option syntax reminiscent of IBM
- System/360 JCL (which had a similar DD command); though the command
- filled a need, the interface design was clearly a prank. The
- jargon usage is now very rare outside UNIX sites and now nearly
- obsolete even there, as `dd(1)' has been {deprecated} for a
- long time (though it has no exact replacement). Replaced by
- {BLT} or simple English `copy'.
-
- DDT: /D-D-T/ n. 1. Generic term for a program that assists in
- debugging other programs by showing individual machine instructions
- in a readable symbolic form and letting the user change them. In
- this sense the term DDT is now archaic, having been widely
- displaced by `debugger' or names of individual programs like
- `dbx', `adb', `gdb', or `sdb'. 2. [ITS] Under
- MIT's fabled {{ITS}} operating system, DDT (running under the alias
- HACTRN) was also used as the {shell} or top level command
- language used to execute other programs. 3. Any one of several
- specific DDTs (sense 1) supported on early DEC hardware. The DEC
- PDP-10 Reference Handbook (1969) contained a footnote on the first
- page of the documentation for DDT which illuminates the origin of
- the term:
-
- Historical footnote: DDT was developed at MIT for the PDP-1
- computer in 1961. At that time DDT stood for "DEC Debugging Tape".
- Since then, the idea of an on-line debugging program has propagated
- throughout the computer industry. DDT programs are now available
- for all DEC computers. Since media other than tape are now
- frequently used, the more descriptive name "Dynamic Debugging
- Technique" has been adopted, retaining the DDT acronym. Confusion
- between DDT-10 and another well known pesticide,
- dichloro-diphenyl-trichloroethane (C14-H9-Cl5) should be minimal
- since each attacks a different, and apparently mutually exclusive,
- class of bugs.
-
- Sadly, this quotation was removed from later editions of the
- handbook after the {suit}s took over and DEC became much more
- `businesslike'.
-
- de-rezz: /dee-rez'/ [from `de-resolve' via the movie "Tron"]
- (also `derez') 1. vi. To disappear or dissolve; the image that goes
- with it is of an object breaking up into raster lines and static
- and then dissolving. Occasionally used of a person who seems to
- have suddenly `fuzzed out' mentally rather than physically.
- Usage: extremely silly, also rare. This verb was actually invented
- as *fictional* hacker jargon, and adopted in a spirit of irony
- by real hackers years after the fact. 2. vt. On a Macintosh, many
- program structures (including the code itself) are managed in small
- segments of the program file known as `resources'. The standard
- resource compiler is Rez. The standard resource decompiler is
- DeRez. Thus, decompiling a resource is `derezzing'. Usage: very
- common.
-
- dead code: n. Routines that can never be accessed because all calls
- to them have been removed, or code that cannot be reached because
- it is guarded by a control structure that provably must always
- transfer control somewhere else. The presence of dead code may
- reveal either logical errors due to alterations in the program or
- significant changes in the assumptions and environment of the
- program (see also {software rot}); a good compiler should report
- dead code so a maintainer can think about what it means. Syn.
- {grunge}.
-
- DEADBEEF: /ded-beef/ n. The hexadecimal word-fill pattern for
- freshly allocated memory (decimal -21524111) under a number of
- IBM environments, including the RS/6000. As in "Your program is
- DEADBEEF" (meaning gone, aborted, flushed from memory); if you
- start from an odd half-word boundary, of course, you have
- BEEFDEAD.
-
- deadlock: n. 1. [techspeak] A situation wherein two or more
- processes are unable to proceed because each is waiting for one of
- the others to do something. A common example is a program
- communicating to a server, which may find itself waiting for output
- from the server before sending anything more to it, while the
- server is similarly waiting for more input from the controlling
- program before outputting anything. (It is reported that this
- particular flavor of deadlock is sometimes called a `starvation
- deadlock', though the term `starvation' is more properly used for
- situations where a program can never run simply because it never
- gets high enough priority. Another common flavor is
- `constipation', where each process is trying to send stuff to
- the other but all buffers are full because nobody is reading
- anything.) See {deadly embrace}. 2. Also used of
- deadlock-like interactions between humans, as when two people meet
- in a narrow corridor, and each tries to be polite by moving aside
- to let the other pass, but they end up swaying from side to side
- without making any progress because they always both move the same
- way at the same time.
-
- deadly embrace: n. Same as {deadlock}, though usually used only when
- exactly 2 processes are involved. This is the more popular term in
- Europe, while {deadlock} predominates in the United States.
-
- Death Star: [from the movie "Star Wars"] 1. The AT&T corporate
- logo, which appears on computers sold by AT&T and bears an uncanny
- resemblance to the `Death Star' in the movie. This usage is
- particularly common among partisans of {BSD} UNIX, who tend to
- regard the AT&T versions as inferior and AT&T as a bad guy. Copies
- still circulate of a poster printed by Mt. Xinu showing a starscape
- with a space fighter labeled 4.2 BSD streaking away from a broken
- AT&T logo wreathed in flames. 2. AT&T's internal magazine,
- `Focus', uses `death star' for an incorrectly done AT&T logo
- in which the inner circle in the top left is dark instead of light
- --- a frequent result of dark-on-light logo images.
-
- DEC Wars: n. A 1983 {USENET} posting by Alan Hastings and Steve Tarr
- spoofing the "Star Wars" movies in hackish terms. Some years
- later, ESR (disappointed by Hastings and Tarr's failure to exploit a
- great premise more thoroughly) posted a 3-times-longer complete
- rewrite called "UNIX WARS"; the two are often confused.
-
- DEChead: /dek'hed/ n. 1. A DEC {field servoid}. Not flattering.
- 2. [from `deadhead'] A Grateful Dead fan working at DEC.
-
- deckle: /dek'l/ [from dec- and {nickle}] n. Two {nickle}s;
- 10 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.
-
- deep hack mode: n. See {hack mode}.
-
- deep magic: [poss. from C. S. Lewis's "Narnia" books] n. An
- awesomely arcane technique central to a program or system, esp. one
- not generally published and available to hackers at large (compare
- {black art}); one that could only have been composed by a true
- {wizard}. Compiler optimization techniques and many aspects of
- {OS} design used to be {deep magic}; many techniques in
- cryptography, signal processing, graphics, and AI still are.
- Compare {heavy wizardry}. Esp. found in comments of the form
- "Deep magic begins here...". Compare {voodoo programming}.
-
- deep space: n. 1. Describes the notional location of any program
- that has gone {off the trolley}. Esp. used of programs that
- just sit there silently grinding long after either failure or some
- output is expected. "Uh oh. I should have gotten a prompt ten
- seconds ago. The program's in deep space somewhere." Compare
- {buzz}, {catatonic}, {hyperspace}. 2. The metaphorical
- location of a human so dazed and/or confused or caught up in some
- esoteric form of {bogosity} that he or she no longer responds
- coherently to normal communication. Compare {page out}.
-
- defenestration: [from the traditional Czechoslovak method of
- assassinating prime ministers, via SF fandom] n. 1. Proper karmic
- retribution for an incorrigible punster. "Oh, ghod, that was
- *awful*!" "Quick! Defenestrate him!" 2. The act of
- exiting a window system in order to get better response time from a
- full-screen program. This comes from the dictionary meaning of
- `defenestrate', which is to throw something out a window. 3. The
- act of discarding something under the assumption that it will
- improve matters. "I don't have any disk space left." "Well,
- why don't you defenestrate that 100 megs worth of old core dumps?"
- 4. [proposed] The requirement to support a command-line interface.
- "It has to run on a VT100." "Curses! I've been
- defenestrated!"
-
- defined as: adj. In the role of, usually in an organization-chart
- sense. "Pete is currently defined as bug prioritizer." Compare
- {logical}.
-
- dehose: /dee-hohz/ vt. To clear a {hosed} condition.
-
- delint: /dee-lint/ v. To modify code to remove problems detected
- when {lint}ing.
-
- delta: n. 1. [techspeak] A quantitative change, especially a small
- or incremental one (this use is general in physics and
- engineering). "I just doubled the speed of my program!" "What
- was the delta on program size?" "About 30 percent." (He
- doubled the speed of his program, but increased its size by only 30
- percent.) 2. [UNIX] A {diff}, especially a {diff} stored
- under the set of version-control tools called SCCS (Source Code
- Control System) or RCS (Revision Control System). 3. n. A small
- quantity, but not as small as {epsilon}. The jargon usage of
- {delta} and {epsilon} stems from the traditional use of these
- letters in mathematics for very small numerical quantities,
- particularly in `epsilon-delta' proofs in limit theory (as in the
- differential calculus). The term {delta} is often used, once
- {epsilon} has been mentioned, to mean a quantity that is
- slightly bigger than {epsilon} but still very small. "The cost
- isn't epsilon, but it's delta" means that the cost isn't totally
- negligible, but it is nevertheless very small. Common
- constructions include `within delta of ---', `within epsilon of
- ---': that is, close to and even closer to.
-
- demented: adj. Yet another term of disgust used to describe a
- program. The connotation in this case is that the program works as
- designed, but the design is bad. Said, for example, of a program
- that generates large numbers of meaningless error messages,
- implying that it is on the brink of imminent collapse. Compare
- {wonky}, {bozotic}.
-
- demigod: n. A hacker with years of experience, a national reputation,
- and a major role in the development of at least one design, tool,
- or game used by or known to more than half of the hacker community.
- To qualify as a genuine demigod, the person must recognizably
- identify with the hacker community and have helped shape it. Major
- demigods include Ken Thompson and Dennis Ritchie (co-inventors of
- {{UNIX}} and {C}) and Richard M. Stallman (inventor of
- {EMACS}). In their hearts of hearts, most hackers dream of
- someday becoming demigods themselves, and more than one major
- software project has been driven to completion by the author's
- veiled hopes of apotheosis. See also {net.god}, {true-hacker}.
-
- demo: /de'moh/ [short for `demonstration'] 1. v. To demonstrate a
- product or prototype. A far more effective way of inducing bugs to
- manifest than any number of {test} runs, especially when
- important people are watching. 2. n. The act of demoing.
-
- demo mode: [Sun] n. 1. The state of being {heads down} in order
- to finish code in time for a {demo}, usually due yesterday.
- 2. A mode in which video games sit there by themselves running
- through a portion of the game, also known as `attract mode'.
- Some serious {app}s have a demo mode they use as a screen saver,
- or may go through a demo mode on startup (for example, the
- Microsoft Windows opening screen --- which lets you impress your
- neighbors without actually having to put up with {Microsloth
- Windows}).
-
- demon: n. 1. [MIT] A portion of a program that is not invoked
- explicitly, but that lies dormant waiting for some condition(s) to
- occur. See {daemon}. The distinction is that demons are
- usually processes within a program, while daemons are usually
- programs running on an operating system. Demons are particularly
- common in AI programs. For example, a knowledge-manipulation
- program might implement inference rules as demons. Whenever a new
- piece of knowledge was added, various demons would activate (which
- demons depends on the particular piece of data) and would create
- additional pieces of knowledge by applying their respective
- inference rules to the original piece. These new pieces could in
- turn activate more demons as the inferences filtered down through
- chains of logic. Meanwhile, the main program could continue with
- whatever its primary task was. 2. [outside MIT] Often used
- equivalently to {daemon} --- especially in the {{UNIX}} world,
- where the latter spelling and pronunciation is considered mildly
- archaic.
-
- depeditate: /dee-ped'*-tayt/ [by (faulty) analogy with
- `decapitate'] vt. Humorously, to cut off the feet of. When one is
- using some computer-aided typesetting tools, careless placement of
- text blocks within a page or above a rule can result in chopped-off
- letter descenders. Such letters are said to have been depeditated.
-
- deprecated: adj. Said of a program or feature that is considered
- obsolescent and in the process of being phased out, usually in
- favor of a specified replacement. Deprecated features can,
- unfortunately, linger on for many years.
-
- deserves to lose: adj. Said of someone who willfully does the
- {Wrong Thing}; humorously, if one uses a feature known to be
- {marginal}. What is meant is that one deserves the consequences
- of one's {losing} actions. "Boy, anyone who tries to use
- {mess-dos} deserves to {lose}!" ({{ITS}} fans used to say this
- of {{UNIX}}; many still do.) See also {screw}, {chomp},
- {bagbiter}.
-
- desk check: n.,v. To {grovel} over hardcopy of source code,
- mentally simulating the control flow; a method of catching bugs.
- No longer common practice in this age of on-screen editing, fast
- compiles, and sophisticated debuggers --- though some maintain
- stoutly that it ought to be. Compare {eyeball search},
- {vdiff}, {vgrep}.
-
- Devil Book: n. `The Design and Implementation of the 4.3BSD
- UNIX Operating System', by Samuel J. Leffler, Marshall Kirk
- McKusick, Michael J. Karels, and John S. Quarterman (Addison-Wesley
- Publishers, 1989) --- the standard reference book on the internals
- of {BSD} UNIX. So called because the cover has a picture
- depicting a little devil (a visual play on {daemon}) in
- sneakers, holding a pitchfork (referring to one of the
- characteristic features of UNIX, the {fork(2)} system call).
-
- devo: /dee'voh/ [orig. in-house jargon at Symbolics] n. A person in a
- development group. See also {doco} and {mango}.
-
- dickless workstation: n. Extremely pejorative hackerism for
- `diskless workstation', a class of botches including the Sun 3/50
- and other machines designed exclusively to network with an
- expensive central disk server. These combine all the disadvantages
- of time-sharing with all the disadvantages of distributed personal
- computers.
-
- dictionary flame: [USENET] n. An attempt to sidetrack a debate
- away from issues by insisting on meanings for key terms that
- presuppose a desired conclusion or smuggle in an implicit premise.
- A common tactic of people who prefer argument over definitions to
- disputes about reality.
-
- diddle: 1. vt. To work with or modify in a not particularly
- serious manner. "I diddled a copy of {ADVENT} so it didn't
- double-space all the time." "Let's diddle this piece of code and
- see if the problem goes away." See {tweak} and {twiddle}.
- 2. n. The action or result of diddling. See also {tweak},
- {twiddle}, {frob}.
-
- diff: /dif/ n. 1. A change listing, especially giving differences
- between (and additions to) source code or documents (the term is
- often used in the plural `diffs'). "Send me your diffs for the
- Jargon File!" Compare {vdiff}. 2. Specifically, such a listing
- produced by the `diff(1)' command, esp. when used as
- specification input to the `patch(1)' utility (which can
- actually perform the modifications; see {patch}). This is a
- common method of distributing patches and source updates in the
- UNIX/C world. See also {vdiff}, {mod}.
-
- digit: n. An employee of Digital Equipment Corporation. See also
- {VAX}, {VMS}, {PDP-10}, {{TOPS-10}}, {DEChead}, {double
- DECkers}, {field circus}.
-
- dike: vt. To remove or disable a portion of something, as a wire
- from a computer or a subroutine from a program. A standard slogan
- is "When in doubt, dike it out". (The implication is that it is
- usually more effective to attack software problems by reducing
- complexity than by increasing it.) The word `dikes' is widely
- used among mechanics and engineers to mean `diagonal cutters',
- esp. a heavy-duty metal-cutting device, but may also refer to a
- kind of wire-cutters used by electronics techs. To `dike
- something out' means to use such cutters to remove something.
- Indeed, the TMRC Dictionary defined dike as "to attack with
- dikes". Among hackers this term has been metaphorically extended
- to informational objects such as sections of code.
-
- ding: n.,vi. 1. Synonym for {feep}. Usage: rare among hackers,
- but commoner in the {Real World}. 2. `dinged': What happens
- when someone in authority gives you a minor bitching about
- something, esp. something trivial. "I was dinged for having a
- messy desk."
-
- dink: /dink/ n. Said of a machine that has the {bitty box}
- nature; a machine too small to be worth bothering with --- sometimes
- the system you're currently forced to work on. First heard from an
- MIT hacker (BADOB) working on a CP/M system with 64K, in reference
- to any 6502 system, then from fans of 32-bit architectures about
- 16-bit machines. "GNUMACS will never work on that dink machine."
- Probably derived from mainstream `dinky', which isn't sufficiently
- pejorative.
-
- dinosaur: n. 1. Any hardware requiring raised flooring and special
- power. Used especially of old minis and mainframes, in contrast
- with newer microprocessor-based machines. In a famous quote from
- the 1988 UNIX EXPO, Bill Joy compared the mainframe in the massive
- IBM display with a grazing dinosaur "with a truck outside pumping
- its bodily fluids through it". IBM was not amused. Compare
- {big iron}; see also {mainframe}. 2. [IBM] A very conservative
- user; a {zipperhead}.
-
- dinosaur pen: n. A traditional {mainframe} computer room complete with
- raised flooring, special power, its own ultra-heavy-duty air
- conditioning, and a side order of Halon fire extinguishers. See
- {boa}.
-
- dinosaurs mating: n. Said to occur when yet another {big iron}
- merger or buyout occurs; reflects a perception by hackers that
- these signal another stage in the long, slow dying of the
- {mainframe} industry. In its glory days of the 1960s, it was
- `IBM and the Seven Dwarves': Burroughs, Control Data, General
- Electric, Honeywell, NCR, RCA, and Univac. RCA and GE sold out
- early, and it was `IBM and the Bunch' (Burroughs, Univac, NCR,
- Control Data, and Honeywell) for a while. Honeywell was bought out
- by Bull; Burroughs merged with Univac to form Unisys (in 1984 --- this
- was when the phrase `dinosaurs mating' was coined); and as this is
- written AT&T is attempting to recover from a disastrously bad first
- 6 years in the hardware industry by absorbing NCR. More such
- earth-shaking unions of doomed giants seem inevitable.
-
- dirty power: n. Electrical mains voltage that is unfriendly to
- the delicate innards of computers. Spikes, {drop-outs}, average
- voltage significantly higher or lower than nominal, or just plain
- noise can all cause problems of varying subtlety and severity.
-
- Discordianism: /dis-kor'di-*n-ism/ n. The veneration of
- {Eris}, a.k.a. Discordia; widely popular among hackers.
- Discordianism was popularized by Robert Anton Wilson's
- `Illuminatus!' trilogy as a sort of self-subverting Dada-Zen
- for Westerners --- it should on no account be taken seriously but
- is far more serious than most jokes. Consider, for example, the
- Fifth Commandment of the Pentabarf, from `Principia
- Discordia': "A Discordian is Prohibited of Believing What he
- Reads." Discordianism is usually connected with an elaborate
- conspiracy theory/joke involving millennia-long warfare between the
- anarcho-surrealist partisans of Eris and a malevolent,
- authoritarian secret society called the Illuminati. See
- appendix B, {Church of the SubGenius}, and {ha ha only
- serious}.
-
- disk farm: n. (also {laundromat}) A large room or rooms filled
- with disk drives (esp. {washing machine}s).
-
- display hack: n. A program with the same approximate purpose as a
- kaleidoscope: to make pretty pictures. Famous display hacks
- include {munching squares}, {smoking clover}, the BSD UNIX
- `rain(6)' program, `worms(6)' on miscellaneous UNIXes,
- and the {X} `kaleid(1)' program. Display hacks can also be
- implemented without programming by creating text files containing
- numerous escape sequences for interpretation by a video terminal;
- one notable example displayed, on any VT100, a Christmas tree with
- twinkling lights and a toy train circling its base. The {hack
- value} of a display hack is proportional to the esthetic value of
- the images times the cleverness of the algorithm divided by the
- size of the code. Syn. {psychedelicware}.
-
- Dissociated Press: [play on `Associated Press'; perhaps inspired
- by a reference in the 1949 Bugs Bunny cartoon "What's Up,
- Doc?"] n. An algorithm for transforming any text into potentially
- humorous garbage even more efficiently than by passing it through a
- {marketroid}. You start by printing any N consecutive
- words (or letters) in the text. Then at every step you search for
- any random occurrence in the original text of the last N
- words (or letters) already printed and then print the next word or
- letter. {EMACS} has a handy command for this. Here is a short
- example of word-based Dissociated Press applied to an earlier
- version of this Jargon File:
-
- wart: n. A small, crocky {feature} that sticks out of
- an array (C has no checks for this). This is relatively
- benign and easy to spot if the phrase is bent so as to be
- not worth paying attention to the medium in question.
-
- Here is a short example of letter-based Dissociated Press applied
- to the same source:
-
- window sysIWYG: n. A bit was named aften /bee't*/ prefer
- to use the other guy's re, especially in every cast a
- chuckle on neithout getting into useful informash speech
- makes removing a featuring a move or usage actual
- abstractionsidered interj. Indeed spectace logic or problem!
-
- A hackish idle pastime is to apply letter-based Dissociated Press
- to a random body of text and {vgrep} the output in hopes of finding
- an interesting new word. (In the preceding example, `window
- sysIWYG' and `informash' show some promise.) Iterated applications
- of Dissociated Press usually yield better results. Similar
- techniques called `travesty generators' have been employed with
- considerable satirical effect to the utterances of USENET flamers;
- see {pseudo}.
-
- distribution: n. 1. A software source tree packaged for
- distribution; but see {kit}. 2. A vague term encompassing
- mailing lists and USENET newsgroups (but not {BBS} {fora}); any
- topic-oriented message channel with multiple recipients. 3. An
- information-space domain (usually loosely correlated with
- geography) to which propagation of a USENET message is restricted;
- a much-underutilized feature.
-
- do protocol: [from network protocol programming] vi. To perform an
- interaction with somebody or something that follows a clearly
- defined procedure. For example, "Let's do protocol with the
- check" at a restaurant means to ask for the check, calculate the
- tip and everybody's share, collect money from everybody, generate
- change as necessary, and pay the bill. See {protocol}.
-
- doc: /dok/ n. Common spoken and written shorthand for
- `documentation'. Often used in the plural `docs' and in the
- construction `doc file' (documentation available on-line).
-
- doco: /do'koh/ [orig. in-house jargon at Symbolics] n. A
- documentation writer. See also {devo} and {mango}.
-
- documentation:: n. The multiple kilograms of macerated, pounded,
- steamed, bleached, and pressed trees that accompany most modern
- software or hardware products (see also {tree-killer}). Hackers
- seldom read paper documentation and (too) often resist writing it;
- they prefer theirs to be terse and on-line. A common comment on
- this is "You can't {grep} dead trees". See {drool-proof
- paper}, {verbiage}.
-
- dodgy: adj. Syn. with {flaky}. Preferred outside the U.S.
-
- dogcow: /dog'kow/ n. See {Moof}.
-
- dogwash: /dog'wosh/ [From a quip in the `urgency' field of a very
- optional software change request, ca. 1982. It was something like
- "Urgency: Wash your dog first".] 1. n. A project of minimal
- priority, undertaken as an escape from more serious work. 2. v.
- To engage in such a project. Many games and much {freeware} get
- written this way.
-
- domainist: /doh-mayn'ist/ adj. 1. Said of an {{Internet
- address}} (as opposed to a {bang path}) because the part to the
- right of the `@' specifies a nested series of `domains';
- for example, eric@snark.thyrsus.com specifies the machine
- called snark in the subdomain called thyrsus within the
- top-level domain called com. See also {big-endian}, sense 2.
- 2. Said of a site, mailer, or routing program which knows how to
- handle domainist addresses. 3. Said of a person (esp. a site
- admin) who prefers domain addressing, supports a domainist mailer,
- or prosyletizes for domainist addressing and disdains {bang
- path}s. This is now (1991) semi-obsolete, as most sites have
- converted.
-
- Don't do that, then!: [from an old doctor's office joke about a
- patient with a trivial complaint] Stock response to a user
- complaint. "When I type control-S, the whole system comes to a
- halt for thirty seconds." "Don't do that, then!" (or "So don't
- do that!"). Compare {RTFM}.
-
- dongle: /dong'gl/ n. 1. A security or {copy-protection} device
- for commercial microcomputer programs consisting of a serialized
- EPROM and some drivers in a D-25 connector shell, which must be
- connected to an I/O port of the computer while the program is run.
- Programs that use a dongle query the port at startup and at
- programmed intervals thereafter, and terminate if it does not
- respond with the dongle's programmed validation code. Thus, users
- can make as many copies of the program as they want but must pay
- for each dongle. The idea was clever, but it was initially a failure, as
- users disliked tying up a serial port this way. Most dongles on
- the market today (1991) will pass data through the port and monitor
- for {magic} codes (and combinations of status lines) with minimal
- if any interference with devices further down the line --- this
- innovation was necessary to allow daisy-chained dongles for
- multiple pieces of software. The devices are still not widely
- used, as the industry has moved away from copy-protection schemes
- in general. 2. By extension, any physical electronic key or
- transferrable ID required for a program to function. See
- {dongle-disk}.
-
- dongle-disk: /don'gl disk/ n. See {dongle}; a `dongle-disk'
- is a floppy disk with some coding that allows an application to
- identify it uniquely. It can therefore be used as a {dongle}.
- Also called a `key disk'.
-
- donuts: n.obs. A collective noun for any set of memory bits. This is
- extremely archaic and may no longer be live jargon; it dates from the
- days of ferrite-{core} memories in which each bit was implemented by
- a doughnut-shaped magnetic flip-flop.
-
- doorstop: n. Used to describe equipment that is non-functional and
- halfway expected to remain so, especially obsolete equipment kept
- around for political reasons or ostensibly as a backup. "When we
- get another Wyse-50 in here, that ADM 3 will turn into a doorstop."
- Compare {boat anchor}.
-
- dot file: [UNIX] n. A file which is not visible to normal
- directory-browsing tools (on UNIX, files named with a leading dot
- are, by convention, not normally presented in directory listings).
- Many programs define one or more dot files in which startup or
- configuration information may be optionally recorded; a user can
- customize the program's behavior by creating the appropriate file in
- the current or home directory. See also {rc file}.
-
- double bucky: adj. Using both the CTRL and META keys. "The
- command to burn all LEDs is double bucky F."
-
- This term originated on the Stanford extended-ASCII keyboard, and
- was later taken up by users of the {space-cadet keyboard} at
- MIT. A typical MIT comment was that the Stanford {bucky bits}
- (control and meta shifting keys) were nice, but there weren't
- enough of them; you could type only 512 different characters on a
- Stanford keyboard. An obvious way to address this was simply to
- add more shifting keys, and this was eventually done; but a
- keyboard with that many shifting keys is hard on touch-typists, who
- don't like to move their hands away from the home position on the
- keyboard. It was half-seriously suggested that the extra shifting
- keys be implemented as pedals; typing on such a keyboard would be
- very much like playing a full pipe organ. This idea is mentioned
- in a parody of a very fine song by Jeffrey Moss called
- "Rubber Duckie", which was published in `The Sesame
- Street Songbook' (Simon and Schuster 1971, ISBN 671-21036-X).
- These lyrics were written on May 27, 1978, in celebration of the
- Stanford keyboard:
-
- Double Bucky
-
- Double bucky, you're the one!
- You make my keyboard lots of fun.
- Double bucky, an additional bit or two:
- (Vo-vo-de-o!)
- Control and meta, side by side,
- Augmented ASCII, nine bits wide!
- Double bucky! Half a thousand glyphs, plus a few!
- Oh,
- I sure wish that I
- Had a couple of
- Bits more!
- Perhaps a
- Set of pedals to
- Make the number of
- Bits four:
- Double double bucky!
- Double bucky, left and right
- OR'd together, outta sight!
- Double bucky, I'd like a whole word of
- Double bucky, I'm happy I heard of
- Double bucky, I'd like a whole word of you!
-
- --- The Great Quux (with apologies to Jeffrey Moss)
-
- [This, by the way, is an excellent example of computer {filk} --- ESR]
-
- See also {meta bit}, {cokebottle}, and {quadruple bucky}.
-
- double DECkers: n. Used to describe married couples in which both
- partners work for Digital Equipment Corporation.
-
- doubled sig: [USENET] n. A {sig block} that has been included
- twice in a {USENET} article or, less commonly, in an electronic
- mail message. An article or message with a doubled sig can be
- caused by improperly configured software. More often, however, it
- reveals the author's lack of experience in electronic
- communication. See {BIFF}, {pseudo}.
-
- down: 1. adj. Not operating. "The up escalator is down" is
- considered a humorous thing to say, and "The elevator is down"
- always means "The elevator isn't working" and never refers to
- what floor the elevator is on. With respect to computers, this
- usage has passed into the mainstream; the extension to other kinds
- of machine is still hackish. 2. `go down' vi. To stop
- functioning; usually said of the {system}. The message from the
- {console} that every hacker hates to hear from the operator is
- "The system will go down in 5 minutes". 3. `take down',
- `bring down' vt. To deactivate purposely, usually for repair work
- or {PM}. "I'm taking the system down to work on that bug in the
- tape drive." Occasionally one hears the word `down' by itself
- used as a verb in this vt. sense. See {crash}; oppose {up}.
-
- download: vt. To transfer data or (esp.) code from a larger `host'
- system (esp. a {mainframe}) over a digital comm link to a smaller
- `client' system, esp. a microcomputer or specialized peripheral.
- Oppose {upload}.
-
- However, note that ground-to-space communications has its own usage
- rule for this term. Space-to-earth transmission is always download
- and the reverse upload regardless of the relative size of the
- computers involved. So far the in-space machines have invariably
- been smaller; thus the upload/download distinction has been
- reversed from its usual sense.
-
- DP: /D-P/ n. 1. Data Processing. Listed here because,
- according to hackers, use of the term marks one immediately as a
- {suit}. See {DPer}. 2. Common abbrev for {Dissociated
- Press}.
-
- DPB: /d*-pib'/ [from the PDP-10 instruction set] vt. To plop
- something down in the middle. Usage: silly. "DPB
- yourself into that couch there." The connotation would be that
- the couch is full except for one slot just big enough for you to
- sit in. DPB means `DePosit Byte', and was the name of a PDP-10
- instruction that inserts some bits into the middle of some other
- bits. This usage has been kept alive by the Common LISP function
- of the same name.
-
- DPer: /dee-pee-er/ n. Data Processor. Hackers are absolutely
- amazed that {suit}s use this term self-referentially.
- "*Computers* process data, not people!" See {DP}.
-
- dragon: n. [MIT] A program similar to a {daemon}, except that it
- is not invoked at all, but is instead used by the system to perform
- various secondary tasks. A typical example would be an accounting
- program, which keeps track of who is logged in, accumulates
- load-average statistics, etc. Under ITS, many terminals displayed
- a list of people logged in, where they were, what they were
- running, etc., along with some random picture (such as a unicorn,
- Snoopy, or the Enterprise), which was generated by the `name
- dragon'. Usage: rare outside MIT --- under UNIX and most other OSes
- this would be called a `background demon' or {daemon}. The
- best-known UNIX example of a dragon is `cron(1)'. At SAIL,
- they called this sort of thing a `phantom'.
-
- Dragon Book: n. The classic text `Compilers: Principles,
- Techniques and Tools', by Alfred V. Aho, Ravi Sethi, and Jeffrey D.
- Ullman (Addison-Wesley 1986; ISBN 0-201-10088-6), so called because
- of the cover design featuring a dragon labeled `complexity of
- compiler design' and a knight bearing the lance `LALR parser
- generator' among his other trappings. This one is more
- specifically known as the `Red Dragon Book' (1986); an earlier
- edition, sans Sethi and titled `Principles Of Compiler Design'
- (Alfred V. Aho and Jeffrey D. Ullman; Addison-Wesley, 1977; ISBN
- 0-201-00022-9), was the `Green Dragon Book' (1977). (Also `New
- Dragon Book', `Old Dragon Book'.) The horsed knight and the
- Green Dragon were warily eying each other at a distance; now the
- knight is typing (wearing gauntlets!) at a terminal showing a
- video-game representation of the Red Dragon's head while the rest
- of the beast extends back in normal space. See also {{book
- titles}}.
-
- drain: [IBM] v. Syn. for {flush} (sense 2). Has a connotation
- of finality about it; one speaks of draining a device before taking
- it offline.
-
- dread high-bit disease: n. A condition endemic to PRIME (a.k.a.
- PR1ME) minicomputers that results in all the characters having
- their high (0x80) bit ON rather than OFF. This of course makes
- transporting files to other systems much more difficult, not to
- mention talking to true 8-bit devices. It is reported that
- PRIME adopted the reversed-8-bit convention in order to save
- 25 cents per serial line per machine. This probably qualifies as one
- of the most {cretinous} design tradeoffs ever made. See {meta
- bit}. A few other machines (including the Atari 800) have exhibited
- similar brain damage.
-
- DRECNET: /drek'net/ [from Yiddish/German `dreck', meaning
- dirt] n. Deliberate distortion of DECNET, a networking protocol
- used in the {VMS} community. So called because DEC helped write
- the Ethernet specification and then (either stupidly or as a
- malignant customer-control tactic) violated that spec in the design
- of DRECNET in a way that made it incompatible. See also
- {connector conspiracy}.
-
- driver: n. 1. The {main loop} of an event-processing program;
- the code that gets commands and dispatches them for execution.
- 2. [techspeak] In `device driver', code designed to handle a
- particular peripheral device such as a magnetic disk or tape unit.
- 3. In the TeX general, `driver' also means a program that translates some
- device-independent or other common format to something a real
- device can actually understand.
-
- droid: n. A person (esp. a low-level bureaucrat or
- service-business employee) exhibiting most of the following
- characteristics: (a) na"ive trust in the wisdom of the parent
- organization or `the system'; (b) a propensity to believe
- obvious nonsense emitted by authority figures (or computers!);
- blind faith; (c) a rule-governed mentality, one unwilling or unable
- to look beyond the `letter of the law' in exceptional
- situations; and (d) no interest in fixing that which is broken; an
- "It's not my job, man" attitude.
-
- Typical droid positions include supermarket checkout assistant and
- bank clerk; the syndrome is also endemic in low-level government
- employees. The implication is that the rules and official
- procedures constitute software that the droid is executing. This
- becomes a problem when the software has not been properly debugged.
- The term `droid mentality' is also used to describe the mindset
- behind this behavior. Compare {suit}, {marketroid}; see
- {-oid}.
-
- drool-proof paper: n. Documentation that has been obsessively {dumbed
- down}, to the point where only a {cretin} could bear to read it, is
- said to have succumbed to the `drool-proof paper syndrome' or to
- have been `written on drool-proof paper'. For example, this is
- an actual quote from Apple's LaserWriter manual: "Do not expose
- your LaserWriter to open fire or flame."
-
- drop on the floor: vt. To react to an error condition by silently
- discarding messages or other valuable data. "The gateway
- ran out of memory, so it just started dropping packets on the
- floor." Also frequently used of faulty mail and netnews relay
- sites that lose messages. See also {black hole}, {bit bucket}.
-
- drop-ins: [prob. by analogy with {drop-outs}] n. Spurious
- characters appearing on a terminal or console as a result of line noise or
- a system malfunction of some sort. Esp. used when these are
- interspersed with one's own typed input. Compare {drop-outs}.
-
- drop-outs: n. 1. A variety of `power glitch' (see {glitch});
- momentary 0 voltage on the electrical mains. 2. Missing characters
- in typed input due to software malfunction or system saturation
- (this can happen under UNIX when a bad connection to a modem swamps
- the processor with spurious character interrupts). 3. Mental
- glitches; used as a way of describing those occasions when the mind
- just seems to shut down for a couple of beats. See {glitch},
- {fried}.
-
- drugged: adj. (also `on drugs') 1. Conspicuously stupid,
- heading toward {brain-damaged}. Often accompanied by a
- pantomime of toking a joint (but see appendix B). 2. Of hardware,
- very slow relative to normal performance.
-
- drunk mouse syndrome: n. A malady exhibited by the mouse pointing
- device of some computers. The typical symptom is for the mouse
- cursor on the screen to move in random directions and not in sync
- with the motion of the actual mouse. Can usually be corrected by
- unplugging the mouse and plugging it back again. Another
- recommended fix for optical mice is to rotate your mouse pad
- 90 degrees.
-
- At Xerox PARC in the 1970s, most people kept a can of copier
- cleaner (isopropyl alcohol) at their desks. When the steel ball on
- the mouse had picked up enough {cruft} to be unreliable, the mouse
- was doused in cleaner, which restored it for a while. However,
- this operation left a fine residue that accelerated the accumulation
- of cruft, so the dousings became more and more frequent. Finally,
- the mouse was declared `alcoholic' and sent to the clinic to be
- dried out in a CFC ultrasonic bath.
-
- dumbass attack: /duhm'as *-tak'/ [Purdue] n. Notional cause of a
- novice's mistake made by the experienced, especially one made while
- running as root under UNIX, e.g., typing `rm -r *' or
- `mkfs' on a mounted file system. Compare {adger}.
-
- dumbed down: adj. Simplified, with a strong connotation of
- *over*simplified. Often, a {marketroid} will insist that the
- interfaces and documentation of software be dumbed down after the
- designer has burned untold gallons of midnight oil making it
- smart. This creates friction. See {user-friendly}.
-
- dump: n. 1. An undigested and voluminous mass of information about a
- problem or the state of a system, especially one routed to the
- slowest available output device (compare {core dump}), and most
- especially one consisting of hex or octal {runes} describing the
- byte-by-byte state of memory, mass storage, or some file. In {elder
- days}, debugging was generally done by `groveling over' a dump
- (see {grovel}); increasing use of high-level languages and
- interactive debuggers has made this uncommon, and the term `dump'
- now has a faintly archaic flavor. 2. A backup. This usage is
- typical only at large timesharing installations.
-
- dup killer: /d[y]oop kill'r/ [FidoNet] n. Software that is
- supposed to detect and delete duplicates of a message that may
- have reached the FidoNet system via different routes.
-
- dup loop: /d[y]oop loop/ (also `dupe loop') [FidoNet] n. An
- incorrectly configured system or network gateway may propagate
- duplicate messages on one or more {echo}es, with different
- identification information that renders {dup killer}s
- ineffective. If such a duplicate message eventually reaches a
- system through which it has already passed (with the original
- identification information), all systems passed on the way back to
- that system are said to be involved in a {dup loop}.
-
- dusty deck: n. Old software (especially applications) which one is
- obliged to remain compatible with (or to maintain). The term
- implies that the software in question is a holdover from card-punch
- days. Used esp. when referring to old scientific and
- {number-crunching} software, much of which was written in FORTRAN
- and very poorly documented but is believed to be too expensive to
- replace. See {fossil}.
-
- DWIM: /dwim/ [acronym, `Do What I Mean'] 1. adj. Able to guess, sometimes
- even correctly, the result intended when bogus input was provided.
- 2. n.,obs. The BBNLISP/INTERLISP function that attempted to
- accomplish this feat by correcting many of the more common errors.
- See {hairy}. 3. Occasionally, an interjection hurled at a
- balky computer, esp. when one senses one might be tripping over
- legalisms (see {legalese}).
-
- Warren Teitelman originally wrote DWIM to fix his typos and
- spelling errors, so it was somewhat idiosyncratic to his style, and
- would often make hash of anyone else's typos if they were
- stylistically different. This led a number of victims of DWIM to
- claim the acronym stood for `Damn Warren's Infernal Machine!'.
-
- In one notorious incident, Warren added a DWIM feature to the
- command interpreter used at Xerox PARC. One day another hacker
- there typed `delete *$' to free up some disk space. (The editor
- there named backup files by appending `$' to the original file
- name, so he was trying to delete any backup files left over from
- old editing sessions.) It happened that there weren't any editor
- backup files, so DWIM helpfully reported `*$ not found, assuming
- you meant 'delete *'.' It then started to delete all the files on
- the disk! The hacker managed to stop it with a {Vulcan nerve
- pinch} after only a half dozen or so files were lost.
-
- The hacker later said he had been sorely tempted to go to Warren's
- office, tie Warren down in his chair in front of his workstation,
- and then type `delete *$' twice.
-
- DWIM is often suggested in jest as a desired feature for a complex
- program; it is also occasionally described as the single
- instruction the ideal computer would have. Back when proofs of
- program correctness were in vogue, there were also jokes about
- `DWIMC' (Do What I Mean, Correctly). A related term, more often
- seen as a verb, is DTRT (Do The Right Thing); see {Right Thing}.
-
- dynner: /din'r/ 32 bits, by analogy with {nybble} and
- {{byte}}. Usage: rare and extremely silly. See also {playte},
- {tayste}, {crumb}.
-
- = E =
-
- earthquake: [IBM] n. The ultimate real-world shock test for
- computer hardware. Hackish sources at IBM deny the rumor that the
- Bay Area quake of 1989 was initiated by the company to test
- quality-assurance procedures at its California plants.
-
- Easter egg: n. 1. A message hidden in the object code of a program
- as a joke, intended to be found by persons disassembling or
- browsing the code. 2. A message, graphic, or sound effect emitted
- by a program (or, on a PC, the BIOS ROM) in response to some
- undocumented set of commands or keystrokes, intended as a joke or
- to display program credits. One well-known early Easter egg found
- in a couple of OSes caused them to respond to the command
- `make love' with `not war?'. Many personal computers
- have much more elaborate eggs hidden in ROM, including lists of the
- developers' names, political exhortations, snatches of music, and
- (in one case) graphics images of the entire development team.
-
- Easter egging: [IBM] n. The act of replacing unrelated parts more or
- less at random in hopes that a malfunction will go away. Hackers
- consider this the normal operating mode of {field circus} techs and
- do not love them for it. Compare {shotgun debugging}.
-
- eat flaming death: imp. A construction popularized among hackers by
- the infamous {CPU Wars} comic; supposed to derive from a famously
- turgid line in a WWII-era anti-Nazi propaganda comic that ran
- "Eat flaming death, non-Aryan mongrels!" or something of the sort
- (however, it is also reported that the Firesign Theater's
- 1975 album "In The Next World, You're On Your Own" included the
- phrase "Eat flaming death, fascist media pigs"; this may have been
- an influence). Used in humorously overblown expressions of
- hostility. "Eat flaming death, {{EBCDIC}} users!"
-
- EBCDIC:: /eb's*-dik/, /eb'see`dik/, or /eb'k*-dik/ [acronym,
- Extended Binary Coded Decimal Interchange Code] n. An alleged
- character set used on IBM {dinosaur}s. It exists in at least six
- mutually incompatible versions, all featuring such delights as
- non-contiguous letter sequences and the absence of several ASCII
- punctuation characters fairly important for modern computer
- languages (exactly which characters are absent varies according to
- which version of EBCDIC you're looking at). IBM adapted EBCDIC
- from {{punched card}} code in the early 1960s and promulgated it
- as a customer-control tactic (see {connector conspiracy}),
- spurning the already established ASCII standard. Today, IBM claims
- to be an open-systems company, but IBM's own description of the
- EBCDIC variants and how to convert between them is still internally
- classified top-secret, burn-before-reading. Hackers blanch at the
- very *name* of EBCDIC and consider it a manifestation of
- purest {evil}. See also {fear and loathing}.
-
- echo: [FidoNet] n. A {topic group} on {FidoNet}'s echomail
- system. Compare {newsgroup}.
-
- eighty-column mind: [IBM] n. The sort said to be possessed by
- persons for whom the transition from {punched card} to tape was
- traumatic (nobody has dared tell them about disks yet). It is said
- that these people, including (according to an old joke) the founder
- of IBM, will be buried `face down, 9-edge first' (the 9-edge being
- the bottom of the card). This directive is inscribed on IBM's
- 1422 and 1602 card readers and is referenced in a famous bit of
- doggerel called "The Last Bug", the climactic lines of which
- are as follows:
-
- He died at the console
- Of hunger and thirst.
- Next day he was buried,
- Face down, 9-edge first.
-
- The eighty-column mind is thought by most hackers to dominate IBM's
- customer base and its thinking. See {IBM}, {fear and
- loathing}, {card walloper}.
-
- El Camino Bignum: /el' k*-mee'noh big'nuhm/ n. The road
- mundanely called El Camino Real, a road through the San Francisco
- peninsula that originally extended all the way down to Mexico City
- and many portions of which are still intact. Navigation on the San
- Francisco peninsula is usually done relative to El Camino Real,
- which defines {logical} north and south even though it isn't
- really north-south many places. El Camino Real runs right past
- Stanford University and so is familiar to hackers.
-
- The Spanish word `real' (which has two syllables: /ray-ahl'/)
- means `royal'; El Camino Real is `the royal road'. In the FORTRAN
- language, a `real' quantity is a number typically precise to 7
- significant digits, and a `double precision' quantity is a larger
- floating-point number, precise to perhaps fourteen significant
- digits (other languages have similar `real' types).
-
- When a hacker from MIT visited Stanford in 1976, he remarked what a
- long road El Camino Real was. Making a pun on `real', he started
- calling it `El Camino Double Precision' --- but when the hacker
- was told that the road was hundreds of miles long, he renamed it
- `El Camino Bignum', and that name has stuck. (See {bignum}.)
-
- elder days: n. The heroic age of hackerdom (roughly, pre-1980); the
- era of the {PDP-10}, {TECO}, {{ITS}}, and the ARPANET. This
- term has been rather consciously adopted from J. R. R. Tolkien's
- fantasy epic `The Lord of the Rings'. Compare {Iron Age};
- see also {elvish}.
-
- elegant: [from mathematical usage] adj. Combining simplicity, power,
- and a certain ineffable grace of design. Higher praise than
- `clever', `winning', or even {cuspy}.
-
- elephantine: adj. Used of programs or systems that are both
- conspicuous {hog}s (owing perhaps to poor design founded on
- {brute force and ignorance}) and exceedingly {hairy} in source
- form. An elephantine program may be functional and even friendly,
- but (as in the old joke about being in bed with an elephant) it's
- tough to have around all the same (and, like a pachyderm, difficult
- to maintain). In extreme cases, hackers have been known to make
- trumpeting sounds or perform expressive proboscatory mime at the
- mention of the offending program. Usage: semi-humorous. Compare
- `has the elephant nature' and the somewhat more pejorative
- {monstrosity}. See also {second-system effect} and
- {baroque}.
-
- elevator controller: n. Another archetypal dumb embedded-systems
- application, like {toaster} (which superseded it). During one
- period (1983--84) in the deliberations of ANSI X3J11 (the
- C standardization committee) this was the canonical example of a
- really stupid, memory-limited computation environment. "You can't
- require `printf(3)' to be part of the default runtime library
- --- what if you're targeting an elevator controller?" Elevator
- controllers became important rhetorical weapons on both sides of
- several {holy wars}.
-
- ELIZA effect: /*-li:'z* *-fekt'/ [AI community] n. The tendency of
- humans to attach associations to terms from prior experience.
- For example, there is nothing magic about the symbol `+' that
- makes it well-suited to indicate addition; it's just that people
- associate it with addition. Using `+' or `plus' to mean addition
- in a computer language is taking advantage of the ELIZA effect.
-
- This term comes from the famous ELIZA program, which simulated a
- Rogerian psychoanalyst by rephrasing many of the patient's
- statements as questions and posing them to the patient. It worked
- by simple pattern recognition and substitution of key words into
- canned phrases. It was so convincing, however, that there are many
- anecdotes about people becoming very emotionally caught up in
- dealing with ELIZA. All this was due to people's tendency to
- attach to words meanings which the computer never put there. The
- ELIZA effect is a {Good Thing} when writing a programming
- language, but it can blind you to serious shortcomings when
- analyzing an Artificial Intelligence system. Compare
- {ad-hockery}; see also {AI-complete}.
-
- elvish: n. 1. The Tengwar of Feanor, a table of letterforms
- resembling the beautiful Celtic half-uncial hand of the `Book
- of Kells'. Invented and described by J. R. R. Tolkien
- in `The Lord of The Rings' as an orthography for his fictional
- `elvish' languages, this system (which is both visually and
- phonetically elegant) has long fascinated hackers (who tend to be
- interested by artificial languages in general). It is traditional
- for graphics printers, plotters, window systems, and the like to
- support a Feanorian typeface as one of their demo items. See also
- {elder days}. 2. By extension, any odd or unreadable typeface
- produced by a graphics device. 3. The typeface mundanely called
- `B"ocklin', an art-decoish display font.
-
- EMACS: /ee'maks/ [from Editing MACroS] n. The ne plus ultra of
- hacker editors, a program editor with an entire LISP system inside
- it. It was originally written by Richard Stallman in {TECO}
- under {{ITS}} at the MIT AI lab, but the most widely used versions
- now run under UNIX. It includes facilities to run compilation
- subprocesses and send and receive mail; many hackers spend up to
- 80% of their {tube time} inside it.
-
- Some versions running under window managers iconify as an
- overflowing kitchen sink, perhaps to suggest the one feature the
- editor does not (yet) include. Indeed, some hackers find EMACS too
- heavyweight and {baroque} for their taste, and expand the name as
- `Escape Meta Alt Control Shift' to spoof its heavy reliance on
- keystrokes decorated with {bucky bits}. Other spoof expansions
- include `Eight Megabytes And Constantly Swapping', `Eventually
- `malloc()'s All Computer Storage', and `EMACS Makes A Computer
- Slow' (see {{recursive acronym}}). See also {vi}.
-
- email: /ee'mayl/ 1. n. Electronic mail automatically passed
- through computer networks and/or via modems over common-carrier
- lines. Contrast {snail-mail}, {paper-net}, {voice-net}. See
- {network address}. 2. vt. To send electronic mail.
-
- Oddly enough, the word `emailed' is actually listed in the OED; it
- means "embossed (with a raised pattern) or arranged in a net work".
- A use from 1480 is given. The word is derived from French
- `emmailleure', network.
-
- emoticon: /ee-moh'ti-kon/ n. An ASCII glyph used to indicate an
- emotional state in email or news. Hundreds have been proposed, but
- only a few are in common use. These include:
-
- :-)
- `smiley face' (for humor, laughter, friendliness,
- occasionally sarcasm)
-
- :-(
- `frowney face' (for sadness, anger, or upset)
-
- ;-)
- `half-smiley' ({ha ha only serious});
- also known as `semi-smiley' or `winkey face'.
-
- :-/
- `wry face'
-
- (These may become more comprehensible if you tilt your head
- sideways, to the left.)
-
- The first 2 listed are by far the most frequently encountered.
- Hyphenless forms of them are common on CompuServe, GEnie, and BIX;
- see also {bixie}. On {USENET}, `smiley' is often used as a
- generic term synonymous with {emoticon}, as well as specifically
- for the happy-face emoticon.
-
- It appears that the emoticon was invented by one Scott Fahlman on
- the CMU {bboard} systems around 1980. He later wrote: "I wish I
- had saved the original post, or at least recorded the date for
- posterity, but I had no idea that I was starting something that
- would soon pollute all the world's communication channels." [GLS
- confirms that he remembers this original posting].
-
- Note for the {newbie}: Overuse of the smiley is a mark of
- loserhood! More than one per paragraph is a fairly sure sign that
- you've gone over the line.
-
- empire: n. Any of a family of military simulations derived from a
- game written by Peter Langston many years ago. There are five or six
- multi-player variants of varying degrees of sophistication, and one
- single-player version implemented for both UNIX and VMS; the latter is
- even available as MS-DOS freeware. All are notoriously addictive.
-
- engine: n. 1. A piece of hardware that encapsulates some function
- but can't be used without some kind of {front end}. Today we
- have, especially, `print engine': the guts of a laser printer.
- 2. An analogous piece of software; notionally, one that does a lot
- of noisy crunching, such as a `database engine'.
-
- The hackish senses of `engine' are actually close to its original,
- pre-Industrial-Revolution sense of a skill, clever device, or
- instrument (the word is cognate to `ingenuity'). This sense had
- not been completely eclipsed by the modern connotation of
- power-transducing machinery in Charles Babbage's time, which
- explains why he named the stored-program computer that
- he designed in 1844 the `Analytical Engine'.
-
- English: 1. n.,obs. The source code for a program, which may be in
- any language, as opposed to the linkable or executable binary
- produced from it by a compiler. The idea behind the term is that
- to a real hacker, a program written in his favorite programming
- language is at least as readable as English. Usage: used mostly by
- old-time hackers, though recognizable in context. 2. The official
- name of the database language used by the Pick Operating System,
- actually a sort of crufty interpreted BASIC with delusions of
- grandeur. The name permits {marketroid}s to say "Yes, and you
- can program our computers in English!" to ignorant {suit}s
- without quite running afoul of the truth-in-advertising laws.
-
- enhancement: n. {Marketroid}-speak for a bug {fix}. This abuse
- of language is a popular and time-tested way to turn incompetence
- into increased revenue. A hacker being ironic would instead call
- the fix a {feature} --- or perhaps save some effort by declaring
- the bug itself to be a feature.
-
- ENQ: /enkw/ or /enk/ [from the ASCII mnemonic ENQuire for
- 0000101] An on-line convention for querying someone's availability.
- After opening a {talk mode} connection to someone apparently in
- heavy hack mode, one might type `SYN SYN ENQ?' (the SYNs
- representing notional synchronization bytes), and expect a return
- of {ACK} or {NAK} depending on whether or not the person felt
- interruptible. Compare {ping}, {finger}, and the usage of
- `FOO?' listed under {talk mode}.
-
- EOF: /E-O-F/ [acronym, `End Of File'] n. 1. [techspeak] Refers
- esp. to whatever {out-of-band} value is returned by
- C's sequential character-input functions (and their equivalents in
- other environments) when end of file has been reached. This value
- is -1 under C libraries postdating V6 UNIX, but was
- originally 0. 2. Used by extension in non-computer contexts when a
- human is doing something that can be modeled as a sequential read
- and can't go further. "Yeah, I looked for a list of 360 mnemonics
- to post as a joke, but I hit EOF pretty fast; all the library had
- was a {JCL} manual." See also {EOL}.
-
- EOL: /E-O-L/ [End Of Line] n. Syn. for {newline}, derived
- perhaps from the original CDC6600 Pascal. Now rare, but widely
- recognized and occasionally used for brevity. Used in the
- example entry under {BNF}. See also {EOF}.
-
- EOU: /E-O-U/ n. The mnemonic of a mythical ASCII control
- character (End Of User) that could make an ASR-33 Teletype explode
- on receipt. This parodied the numerous obscure delimiter and
- control characters left in ASCII from the days when it was
- associated more with wire-service teletypes than computers (e.g.,
- FS, GS, RS, US, EM, SUB, ETX, and esp. EOT). It is worth
- remembering that ASR-33s were big, noisy mechanical beasts with a
- lot of clattering parts; the notion that one might explode was
- nowhere near as ridiculous as it might seem to someone sitting in
- front of a {tube} or flatscreen today.
-
- epoch: [UNIX: prob. from astronomical timekeeping] n. The time and
- date corresponding to 0 in an operating system's clock and
- timestamp values. Under most UNIX versions the epoch is 00:00:00
- GMT, January 1, 1970. System time is measured in seconds or
- {tick}s past the epoch. Weird problems may ensue when the clock
- wraps around (see {wrap around}), which is not necessarily a
- rare event; on systems counting 10 ticks per second, a signed
- 32-bit count of ticks is good only for 6.8 years. The
- 1-tick-per-second clock of UNIX is good only until January 18,
- 2038, assuming word lengths don't increase by then. See also
- {wall time}.
-
- epsilon: [see {delta}] 1. n. A small quantity of anything. "The
- cost is epsilon." 2. adj. Very small, negligible; less than
- {marginal}. "We can get this feature for epsilon cost."
- 3. `within epsilon of': close enough to be indistinguishable for
- all practical purposes. This is even closer than being `within
- delta of'. "That's not what I asked for, but it's within
- epsilon of what I wanted." Alternatively, it may mean not close
- enough, but very little is required to get it there: "My program
- is within epsilon of working."
-
- epsilon squared: n. A quantity even smaller than {epsilon}, as
- small in comparison to epsilon as epsilon is to something normal;
- completely negligible. If you buy a supercomputer for a million
- dollars, the cost of the thousand-dollar terminal to go with it is
- {epsilon}, and the cost of the ten-dollar cable to connect them
- is epsilon squared. Compare {lost in the underflow}, {lost
- in the noise}.
-
- era, the: Syn. {epoch}. Webster's Unabridged makes these words
- almost synonymous, but `era' usually connotes a span of time rather
- than a point in time. The {epoch} usage is recommended.
-
- Eric Conspiracy: n. A shadowy group of mustachioed hackers named
- Eric first pinpointed as a sinister conspiracy by an infamous
- talk.bizarre posting ca. 1986; this was doubtless influenced by the
- numerous `Eric' jokes in the Monty Python oeuvre. There do indeed
- seem to be considerably more mustachioed Erics in hackerdom than
- the frequency of these three traits can account for unless they are
- correlated in some arcane way. Well-known examples include Eric
- Allman (he of the `Allman style' described under {indent style})
- and Erik Fair (co-author of NNTP); your editor has heard from about
- fourteen others by email, and the organization line `Eric
- Conspiracy Secret Laboratories' now emanates regularly from more
- than one site.
-
- Eris: /e'ris/ n. The Greek goddess of Chaos, Discord, Confusion,
- and Things You Know Not Of; her name was latinized to Discordia and
- she was worshiped by that name in Rome. Not a very friendly deity
- in the Classical original, she was reinvented as a more benign
- personification of creative anarchy starting in 1959 by the
- adherents of {Discordianism} and has since been a semi-serious
- subject of veneration in several `fringe' cultures, including
- hackerdom. See {Discordianism}, {Church of the SubGenius}.
-
- erotics: /ee-ro'tiks/ n. [Helsinki University of Technology,
- Finland] n. English-language university slang for electronics.
- Often used by hackers in Helsinki, maybe because good electronics
- excites them and makes them warm.
-
- essentials: n. Things necessary to maintain a productive and secure
- hacking environment. "A jug of wine, a loaf of bread, a
- 20-megahertz 80386 box with 8 meg of core and a 300-megabyte disk
- supporting full UNIX with source and X windows and EMACS and UUCP
- via a 'blazer to a friendly Internet site, and thou."
-
- evil: adj. As used by hackers, implies that some system, program,
- person, or institution is sufficiently maldesigned as to be not
- worth the bother of dealing with. Unlike the adjectives in the
- {cretinous}/{losing}/{brain-damaged} series, `evil' does not
- imply incompetence or bad design, but rather a set of goals or
- design criteria fatally incompatible with the speaker's. This is
- more an esthetic and engineering judgment than a moral one in the
- mainstream sense. "We thought about adding a {Blue Glue}
- interface but decided it was too evil to deal with." "{TECO}
- is neat, but it can be pretty evil if you're prone to typos."
- Often pronounced with the first syllable lengthened, as /eeee'vil/.
-
- exa-: /ek's*/ [SI] pref. See {{quantifiers}}.
-
- examining the entrails: n. The process of {grovel}ling through a
- core dump or hex image in the attempt to discover the bug that
- brought a program or system down. Compare {runes},
- {incantation}, {black art}, {desk check}.
-
- EXCH: /eks'ch*/ or /eksch/ vt. To exchange two things, each for the
- other; to swap places. If you point to two people sitting down and
- say "Exch!", you are asking them to trade places. EXCH,
- meaning EXCHange, was originally the name of a PDP-10 instruction
- that exchanged the contents of a register and a memory location.
- Many newer hackers tend to be thinking instead of the PostScript
- exchange operator (which is usually written in lowercase).
-
- excl: /eks'kl/ n. Abbreviation for `exclamation point'. See
- {bang}, {shriek}, {{ASCII}}.
-
- EXE: /eks'ee/ or /eek'see/ or /E-X-E/ n. An executable
- binary file. Some operating systems (notably MS-DOS, VMS, and
- TWENEX) use the extension .EXE to mark such files. This usage is
- also occasionally found among UNIX programmers even though UNIX
- executables don't have any required suffix.
-
- exec: /eg-zek'/ vt.,n. 1. [UNIX: from `execute'] Synonym for
- {chain}, derives from the `exec(2)' call. 2. [from
- `executive'] obs. The command interpreter for an {OS} (see
- {shell}); term esp. used around mainframes, and prob. derived from
- UNIVAC's archaic EXEC 2 and EXEC 8 operating systems. 3. At IBM,
- the equivalent of a shell command file (among VM/CMS users).
-
- The mainstream `exec' as an abbreviation for (human) executive is
- *not* used. To a hacker, an `exec' is a always a program,
- never a person.
-
- exercise, left as an: [from technical books] Used to complete a
- proof when one doesn't mind a {handwave}, or to avoid one
- entirely. The complete phrase is: "The proof (or the rest) is left as
- an exercise for the reader." This comment *has* occasionally
- been attached to unsolved research problems by authors possessed of
- either an evil sense of humor or a vast faith in the capabilities
- of their audiences.
-
- eyeball search: n. To look for something in a mass of code or data
- with one's own native optical sensors, as opposed to using some
- sort of pattern matching software like {grep} or any other
- automated search tool. Also called a {vgrep}; compare
- {vdiff}, {desk check}.
-
- = F =
-
- fab: /fab/ [from `fabricate'] v. 1. To produce chips from a
- design that may have been created by someone at another company.
- Fabbing chips based on the designs of others is the activity of a
- {silicon foundry}. To a hacker, `fab' is practically never short
- for `fabulous'. 2. `fab line': the production system
- (lithography, diffusion, etching, etc.) for chips at a chip
- manufacturer. Different `fab lines' are run with different
- process parameters, die sizes, or technologies, or simply to
- provide more manufacturing volume.
-
- face time: n. Time spent interacting with somebody face-to-face (as
- opposed to via electronic links). "Oh, yeah, I spent some face
- time with him at the last Usenix."
-
- factor: n. See {coefficient}.
-
- fall over: [IBM] vi. Yet another synonym for {crash} or {lose}.
- `Fall over hard' equates to {crash and burn}.
-
- fall through: v. (n. `fallthrough', var. `fall-through') 1. To
- exit a loop by exhaustion, i.e., by having fulfilled its exit
- condition rather than via a break or exception condition that exits
- from the middle of it. This usage appears to be *really* old,
- dating from the 1940s and 1950s. 2. To fail a test that would have
- passed control to a subroutine or some other distant portion of code.
- 3. In C, `fall-through' occurs when the flow of execution in a
- switch statement reaches a `case' label other than by jumping
- there from the switch header, passing a point where one would
- normally expect to find a `break'. A trivial example:
-
- switch (color)
- {
- case GREEN:
- do_green();
- break;
- case PINK:
- do_pink();
- /* FALL THROUGH */
- case RED:
- do_red();
- break;
- default:
- do_blue();
- break;
- }
-
- The variant spelling `/* FALL THRU */' is also common.
-
- The effect of this code is to `do_green()' when color is
- `GREEN', `do_red()' when color is `RED',
- `do_blue()' on any other color other than `PINK', and
- (and this is the important part) `do_pink()' *and then*
- `do_red()' when color is `PINK'. Fall-through is
- {considered harmful} by some, though there are contexts (such as
- the coding of state machines) in which it is natural; it is
- generally considered good practice to include a comment
- highlighting the fall-through where one would normally expect a
- break.
-
- fandango on core: [UNIX/C hackers, from the Mexican dance] n.
- In C, a wild pointer that runs out of bounds, causing a {core
- dump}, or corrupts the `malloc(3)' {arena} in such a way as
- to cause mysterious failures later on, is sometimes said to have
- `done a fandango on core'. On low-end personal machines without an
- MMU, this can corrupt the OS itself, causing massive lossage.
- Other frenetic dances such as the rhumba, cha-cha, or watusi, may
- be substituted. See {aliasing bug}, {precedence lossage},
- {smash the stack}, {memory leak}, {overrun screw},
- {core}.
-
- FAQ list: /F-A-Q list/ [USENET] n. A compendium of accumulated
- lore, posted periodically to high-volume newsgroups in an attempt
- to forestall Frequently Asked Questions. This lexicon itself
- serves as a good example of a collection of one kind of lore,
- although it is far too big for a regular posting. Examples: "What
- is the proper type of NULL?" and "What's that funny name for
- the `#' character?" are both Frequently Asked Questions.
- Several extant FAQ lists do (or should) make reference to the
- Jargon File (the on-line version of this lexicon).
-
- FAQL: /fa'kl/ n. Syn. {FAQ list}.
-
- farming: [Adelaide University, Australia] n. What the heads of a
- disk drive are said to do when they plow little furrows in the
- magnetic media. Associated with a {crash}. Typically used as
- follows: "Oh no, the machine has just crashed; I hope the hard
- drive hasn't gone {farming} again."
-
- fascist: adj. 1. Said of a computer system with excessive or
- annoying security barriers, usage limits, or access policies. The
- implication is that said policies are preventing hackers from
- getting interesting work done. The variant `fascistic' seems
- to have been preferred at MIT, poss. by analogy with
- `touristic' (see {tourist}). 2. In the design of languages
- and other software tools, `the fascist alternative' is the most
- restrictive and structured way of capturing a particular function;
- the implication is that this may be desirable in order to simplify
- the implementation or provide tighter error checking. Compare
- {bondage-and-discipline language}, but that term is global rather
- than local.
-
- faulty: adj. Non-functional; buggy. Same denotation as
- {bletcherous}, {losing}, q.v., but the connotation is much
- milder.
-
- fd leak: /ef dee leek/ n. A kind of programming bug analogous to a
- {core leak}, in which a program fails to close file descriptors
- (`fd's) after file operations are completed, and thus eventually
- runs out of them. See {leak}.
-
- fear and loathing: [from Hunter Thompson] n. A state inspired by the
- prospect of dealing with certain real-world systems and standards
- that are totally {brain-damaged} but ubiquitous --- Intel 8086s,
- or {COBOL}, or {{EBCDIC}}, or any {IBM} machine except the
- Rios (a.k.a. the RS/6000). "Ack! They want PCs to be able to
- talk to the AI machine. Fear and loathing time!"
-
- feature: n. 1. A good property or behavior (as of a program).
- Whether it was intended or not is immaterial. 2. An intended
- property or behavior (as of a program). Whether it is good or not
- is immaterial (but if bad, it is also a {misfeature}). 3. A
- surprising property or behavior; in particular, one that is
- purposely inconsistent because it works better that way --- such an
- inconsistency is therefore a {feature} and not a {bug}. This
- kind of feature is sometimes called a {miswart}; see that entry
- for a classic example. 4. A property or behavior that is
- gratuitous or unnecessary, though perhaps also impressive or cute.
- For example, one feature of Common LISP's `format' function is
- the ability to print numbers in two different Roman-numeral formats
- (see {bells, whistles, and gongs}). 5. A property or behavior
- that was put in to help someone else but that happens to be in your
- way. 6. A bug that has been documented. To call something a
- feature sometimes means the author of the program did not consider
- the particular case, and that the program responded in a way that was
- unexpected but not strictly incorrect. A standard joke is that a
- bug can be turned into a {feature} simply by documenting it
- (then theoretically no one can complain about it because it's in
- the manual), or even by simply declaring it to be good. "That's
- not a bug, that's a feature!" is a common catchphrase. See also
- {feetch feetch}, {creeping featurism}, {wart}, {green
- lightning}.
-
- The relationship among bugs, features, misfeatures, warts, and
- miswarts might be clarified by the following hypothetical exchange
- between two hackers on an airliner:
-
- A: "This seat doesn't recline."
-
- B: "That's not a bug, that's a feature. There is an emergency
- exit door built around the window behind you, and the route has to
- be kept clear."
-
- A: "Oh. Then it's a misfeature; they should have increased the
- spacing between rows here."
-
- B: "Yes. But if they'd increased spacing in only one section it
- would have been a wart --- they would've had to make
- nonstandard-length ceiling panels to fit over the displaced
- seats."
-
- A: "A miswart, actually. If they increased spacing throughout
- they'd lose several rows and a chunk out of the profit margin. So
- unequal spacing would actually be the Right Thing."
-
- B: "Indeed."
-
- {Undocumented feature} is a common, allegedly humorous euphemism
- for a {bug}.
-
- feature creature: [poss. fr. slang `creature feature' for a horror
- movie] n. One who loves to add features to designs or programs,
- perhaps at the expense of coherence, concision, or {taste}. See
- also {feeping creaturism}, {creeping featurism}.
-
- feature shock: [from Alvin Toffler's book title `Future
- Shock'] n. A user's (or programmer's!) confusion when confronted
- with a package that has too many features and poor introductory
- material.
-
- featurectomy: /fee`ch*r-ek't*-mee/ n. The act of removing a
- feature from a program. Featurectomies come in two flavors, the
- `righteous' and the `reluctant'. Righteous featurectomies are
- performed because the remover believes the program would be more
- elegant without the feature, or there is already an equivalent and
- better way to achieve the same end. (This is not quite the same
- thing as removing a {misfeature}.) Reluctant featurectomies are
- performed to satisfy some external constraint such as code size or
- execution speed.
-
- feep: /feep/ 1. n. The soft electronic `bell' sound of a
- display terminal (except for a VT-52); a beep (in fact, the
- microcomputer world seems to prefer {beep}). 2. vi. To cause
- the display to make a feep sound. ASR-33s (the original TTYs) do
- not feep; they have mechanical bells that ring. Alternate forms:
- {beep}, `bleep', or just about anything suitably
- onomatopoeic. (Jeff MacNelly, in his comic strip "Shoe", uses
- the word `eep' for sounds made by computer terminals and video
- games; this is perhaps the closest written approximation yet.) The
- term `breedle' was sometimes heard at SAIL, where the terminal
- bleepers are not particularly soft (they sound more like the
- musical equivalent of a raspberry or Bronx cheer; for a close
- approximation, imagine the sound of a Star Trek communicator's beep
- lasting for 5 seconds). The `feeper' on a VT-52 has been
- compared to the sound of a '52 Chevy stripping its gears. See also
- {ding}.
-
- feeper: /fee'pr/ n. The device in a terminal or workstation (usually
- a loudspeaker of some kind) that makes the {feep} sound.
-
- feeping creature: [from {feeping creaturism}] n. An unnecessary
- feature; a bit of {chrome} that, in the speaker's judgment, is
- the camel's nose for a whole horde of new features.
-
- feeping creaturism: /fee'ping kree`ch*r-izm/ n. A deliberate
- spoonerism for {creeping featurism}, meant to imply that the
- system or program in question has become a misshapen creature of
- hacks. This term isn't really well defined, but it sounds so neat
- that most hackers have said or heard it. It is probably reinforced
- by an image of terminals prowling about in the dark making their
- customary noises.
-
- feetch feetch: /feech feech/ interj. If someone tells you about
- some new improvement to a program, you might respond: "Feetch,
- feetch!" The meaning of this depends critically on vocal
- inflection. With enthusiasm, it means something like "Boy, that's
- great! What a great hack!" Grudgingly or with obvious doubt, it
- means "I don't know; it sounds like just one more unnecessary and
- complicated thing". With a tone of resignation, it means, "Well,
- I'd rather keep it simple, but I suppose it has to be done".
-
- fence: n. 1. A sequence of one or more distinguished
- ({out-of-band}) characters (or other data items), used to
- delimit a piece of data intended to be treated as a unit (the
- computer-science literature calls this a `sentinel'). The NUL
- (ASCII 0000000) character that terminates strings in C is a fence.
- Hex FF is probably the most common fence character after NUL. See
- {zigamorph}. 2. [among users of optimizing compilers] Any
- technique, usually exploiting knowledge about the compiler, that
- blocks certain optimizations. Used when explicit mechanisms are
- not available or are overkill. Typically a hack: "I call a dummy
- procedure there to force a flush of the optimizer's
- register-coloring info" can be expressed by the shorter "That's a
- fence procedure".
-
- fencepost error: n. 1. A problem with the discrete equivalent of a
- boundary condition. Often exhibited in programs by iterative
- loops. From the following problem: "If you build a fence 100 feet
- long with posts 10 feet apart, how many posts do you need?"
- Either 9 or 11 is a better answer than the obvious 10. For
- example, suppose you have a long list or array of items, and want
- to process items m through n; how many items are there? The
- obvious answer is n - m, but that is off by one; the right
- answer is n - m + 1. A program that used the `obvious'
- formula would have a fencepost error in it. See also {zeroth}
- and {off-by-one error}, and note that not all off-by-one errors
- are fencepost errors. The game of Musical Chairs involves a
- catastrophic off-by-one error where N people try to sit in
- N - 1 chairs, but it's not a fencepost error. Fencepost
- errors come from counting things rather than the spaces between
- them, or vice versa, or by neglecting to consider whether one
- should count one or both ends of a row. 2. Occasionally, an error
- induced by unexpectedly regular spacing of inputs, which can (for
- instance) screw up your hash table.
-
- fepped out: /fept owt/ adj. The Symbolics 3600 Lisp Machine has a
- Front-End Processor called a `FEP' (compare sense 2 of {box}).
- When the main processor gets {wedged}, the FEP takes control of
- the keyboard and screen. Such a machine is said to have
- `fepped out'.
-
- FidoNet: n. A worldwide hobbyist network of personal computers
- which exchange mail, discussion groups, and files. Founded in 1984
- and originally consisting only of IBM PCs and compatibles, FidoNet
- now includes such diverse machines as Apple ][s, Ataris, Amigas,
- and UNIX systems. Though it is much younger than {USENET},
- FidoNet is already (in early 1991) a significant fraction of
- USENET's size at some 8000 systems.
-
- field circus: [a derogatory pun on `field service'] n. The field
- service organization of any hardware manufacturer, but especially
- DEC. There is an entire genre of jokes about DEC field circus
- engineers:
-
- Q: How can you recognize a DEC field circus engineer
- with a flat tire?
- A: He's changing each tire to see which one is flat.
-
- Q: How can you recognize a DEC field circus engineer
- who is out of gas?
- A: He's changing each tire to see which one is flat.
-
- There is also the `Field Circus Cheer' (from the {plan file} for
- DEC on MIT-AI):
-
- Maynard! Maynard!
- Don't mess with us!
- We're mean and we're tough!
- If you get us confused
- We'll screw up your stuff.
-
- (DEC's service HQ is located in Maynard, Massachusetts.)
-
- field servoid: [play on `android'] /fee'ld ser'voyd/ n.
- Representative of a field service organization (see {field
- circus}). This has many of the implications of {droid}.
-
- Fight-o-net: [FidoNet] n. Deliberate distortion of {FidoNet},
- often applied after a flurry of {flamage} in a particular
- {echo}, especially the SYSOP echo or Fidonews (see {'Snooze}).
-
- File Attach: [FidoNet] 1. n. A file sent along with a mail message
- from one BBS to another. 2. vt. Sending someone a file by using
- the File Attach option in a BBS mailer.
-
- File Request: [FidoNet] 1. n. The {FidoNet} equivalent of
- {FTP}, in which one BBS system automatically dials another and
- {snarf}s one or more files. Files are often announced as being
- "available for {FReq}" in the same way that files are announced
- as being "available for/by anonymous FTP" on the Internet.
- 2. vt. The act of getting a copy of a file by using the File
- Request option of the BBS mailer.
-
- filk: /filk/ [from SF fandom, where a typo for `folk' was
- adopted as a new word] n.,v. A `filk' is a popular or folk song
- with lyrics revised or completely new lyrics, intended for humorous
- effect when read and/or to be sung late at night at SF conventions.
- There is a flourishing subgenre of these called `computer filks',
- written by hackers and often containing rather sophisticated
- technical humor. See {double bucky} for an example.
-
- film at 11: [MIT: in parody of TV newscasters] Used in conversation
- to announce ordinary events, with a sarcastic implication that
- these events are earth-shattering. "{{ITS}} crashes; film at 11."
- "Bug found in scheduler; film at 11."
-
- filter: [orig. {{UNIX}}, now also in {{MS-DOS}}] n. A program that
- processes an input data stream into an output data stream in some
- well-defined way, and does no I/O to anywhere else except possibly
- on error conditions; one designed to be used as a stage in a
- `pipeline' (see {plumbing}).
-
- Finagle's Law: n. The generalized or `folk' version of
- {Murphy's Law}, fully named "Finagle's Law of Dynamic
- Negatives" and usually rendered "Anything that can go wrong,
- will". One variant favored among hackers is "The perversity of
- the Universe tends towards a maximum" (but see also {Hanlon's
- Razor}). The label `Finagle's Law' was popularized by SF author
- Larry Niven in several stories depicting a frontier culture of
- asteroid miners; this `Belter' culture professed a religion
- and/or running joke involving the worship of the dread god Finagle
- and his mad prophet Murphy.
-
- fine: [WPI] adj. Good, but not good enough to be {cuspy}. The word
- `fine' is used elsewhere, of course, but without the implicit
- comparison to the higher level implied by {cuspy}.
-
- finger: [WAITS, via BSD UNIX] 1. n. A program that displays a
- particular user or all users logged on the system or a remote
- system. Typically shows full name, last login time, idle time,
- terminal line, and terminal location (where applicable). May also
- display a {plan file} left by the user. 2. vt. To apply finger
- to a username. 3. vt. By extension, to check a human's current
- state by any means. "Foodp?" "T!" "OK, finger Lisa and see
- if she's idle." 4. Any picture (composed of ASCII characters)
- depicting `the finger'. Originally a humorous component of one's
- plan file to deter the curious fingerer (sense 2), it has entered
- the arsenal of some {flamer}s.
-
- finger-pointing syndrome: n. All-too-frequent result of bugs, esp.
- in new or experimental configurations. The hardware vendor points
- a finger at the software. The software vendor points a finger
- at the hardware. All the poor users get is the finger.
-
- firebottle: n. A large, primitive, power-hungry active electrical
- device, similar in function to a FET but constructed out of glass,
- metal, and vacuum. Characterized by high cost, low density, low
- reliability, high-temperature operation, and high power
- dissipation. Sometimes mistakenly called a `tube' in the U.S.
- or a `valve' in England; another hackish term is {glassfet}.
-
- firefighting: n. 1. What sysadmins have to do to correct sudden
- operational problems. An opposite of hacking. "Been hacking your
- new newsreader?" "No, a power glitch hosed the network and I spent
- the whole afternoon fighting fires." 2. The act of throwing lots
- of manpower and late nights at a project, esp. to get it out
- before deadline. See also {gang bang}, {Mongolian Hordes
- technique}; however, the term `firefighting' connotes that the
- effort is going into chasing bugs rather than adding features.
-
- firewall code: n. The code you put in a system (say, a telephone
- switch) to make sure that the users can't do any damage. Since
- users always want to be able to do everything but never want to
- suffer for any mistakes, the construction of a firewall is a
- question not only of defensive coding but also of interface
- presentation, so that users don't even get curious about those
- corners of a system where they can burn themselves.
-
- firewall machine: n. A dedicated gateway machine with special
- security precautions on it, used to service outside network
- connections and dial-in lines. The idea is to protect a cluster of
- more loosely administered machines hidden behind it from
- {cracker}s. The typical firewall is an inexpensive micro-based
- UNIX box kept clean of critical data, with a bunch of modems and
- public network ports on it but just one carefully watched
- connection back to the rest of the cluster. The special
- precautions may include threat monitoring, callback, and even a
- complete {iron box} keyable to particular incoming IDs or
- activity patterns. Syn. {flytrap}, {Venus flytrap}.
-
- fireworks mode: n. The mode a machine is sometimes said to be in when
- it is performing a {crash and burn} operation.
-
- firmy: /fer'mee/ Syn. {stiffy} (a 3.5-inch floppy disk).
-
- fish: [Adelaide University, Australia] n. 1. Another metasyntactic
- variable. See {foo}. Derived originally from the Monty Python
- skit in the middle of "The Meaning of Life" entitled "Find the
- Fish". 2. A pun for `microfiche'. A microfiche file cabinet may be
- referred to as a `fish tank'.
-
- FISH queue: [acronym, by analogy with FIFO (First In, First Out)]
- n. `First In, Still Here'. A joking way of pointing out that
- processing of a particular sequence of events or requests has
- stopped dead. Also `FISH mode' and `FISHnet'; the latter
- may be applied to any network that is running really slowly or
- exhibiting extreme flakiness.
-
- fix: n.,v. What one does when a problem has been reported too many
- times to be ignored.
-
- flag: n. A variable or quantity that can take on one of two
- values; a bit, particularly one that is used to indicate one of two
- outcomes or is used to control which of two things is to be done.
- "This flag controls whether to clear the screen before printing
- the message." "The program status word contains several flag
- bits." Used of humans analogously to {bit}. See also
- {hidden flag}, {mode bit}.
-
- flag day: n. A software change that is neither forward- nor
- backward-compatible, and which is costly to make and costly to
- reverse. "Can we install that without causing a flag day for all
- users?" This term has nothing to do with the use of the word
- {flag} to mean a variable that has two values. It came into use
- when a massive change was made to the {{Multics}} timesharing
- system to convert from the old ASCII code to the new one; this was
- scheduled for Flag Day (a U.S. holiday), June 14, 1966. See also
- {backward combatability}.
-
- flaky: adj. (var sp. `flakey') Subject to frequent {lossage}.
- This use is of course related to the common slang use of the word
- to describe a person as eccentric, crazy, or just unreliable. A
- system that is flaky is working, sort of --- enough that you are
- tempted to try to use it --- but fails frequently enough that the
- odds in favor of finishing what you start are low. Commonwealth
- hackish prefers {dodgy} or {wonky}.
-
- flamage: /flay'm*j/ n. Flaming verbiage, esp. high-noise,
- low-signal postings to {USENET} or other electronic {fora}.
- Often in the phrase `the usual flamage'. `Flaming' is the act
- itself; `flamage' the content; a `flame' is a single flaming
- message. See {flame}.
-
- flame: 1. vi. To post an email message intended to insult and
- provoke. 2. vi. To speak incessantly and/or rabidly on some
- relatively uninteresting subject or with a patently ridiculous
- attitude. 3. vt. Either of senses 1 or 2, directed with
- hostility at a particular person or people. 4. n. An instance of
- flaming. When a discussion degenerates into useless controversy,
- one might tell the participants "Now you're just flaming" or
- "Stop all that flamage!" to try to get them to cool down (so to
- speak).
-
- USENETter Marc Ramsey, who was at WPI from 1972 to 1976, adds: "I
- am 99% certain that the use of `flame' originated at WPI. Those
- who made a nuisance of themselves insisting that they needed to use
- a TTY for `real work' came to be known as `flaming asshole lusers'.
- Other particularly annoying people became `flaming asshole ravers',
- which shortened to `flaming ravers', and ultimately `flamers'. I
- remember someone picking up on the Human Torch pun, but I don't
- think `flame on/off' was ever much used at WPI." See also
- {asbestos}.
-
- The term may have been independently invented at several different
- places; it is also reported that `flaming' was in use to mean
- something like `interminably drawn-out semi-serious discussions'
- (late-night bull sessions) at Carleton College during 1968--1971.
-
- flame bait: n. A posting intended to trigger a {flame war}, or one
- that invites flames in reply.
-
- flame on: vi.,interj. 1. To begin to {flame}. The punning
- reference to Marvel Comics's Human Torch is no longer widely
- recognized. 2. To continue to flame. See {rave}, {burble}.
-
- flame war: n. (var. `flamewar') An acrimonious dispute,
- especially when conducted on a public electronic forum such as
- {USENET}.
-
- flamer: n. One who habitually {flame}s. Said esp. of obnoxious
- {USENET} personalities.
-
- flap: vt. 1. To unload a DECtape (so it goes flap, flap,
- flap...). Old-time hackers at MIT tell of the days when the
- disk was device 0 and {microtape}s were 1, 2,... and
- attempting to flap device 0 would instead start a motor banging
- inside a cabinet near the disk. 2. By extension, to unload any
- magnetic tape. See also {macrotape}. Modern cartridge tapes no
- longer actually flap, but the usage has remained.
-
- flarp: /flarp/ [Rutgers University] n. Yet another metasyntactic
- variable (see {foo}). Among those who use it, it is associated
- with a legend that any program not containing the word `flarp'
- somewhere will not work. The legend is discreetly silent on the
- reliability of programs which *do* contain the magic word.
-
- flat: adj. 1. Lacking any complex internal structure. "That
- {bitty box} has only a flat filesystem, not a hierarchical
- one." The verb form is {flatten}. 2. Said of a memory
- architecture (like that of the VAX or 680x0) that is one big linear
- address space (typically with each possible value of a processor
- register corresponding to a unique core address), as opposed to a
- `segmented' architecture (like that of the 80x86) in which
- addresses are composed from a base-register/offset pair (segmented
- designs are generally considered {cretinous}).
-
- flat-ASCII: adj. Said of a text file that contains only 7-bit ASCII
- characters and uses only ASCII-standard control characters (that
- is, has no embedded codes specific to a particular text formatter
- or markup language, and no {meta}-characters). Syn.
- {plain-ASCII}. Compare {flat-file}.
-
- flat-file: adj. A {flatten}ed representation of some database or
- tree or network structure as a single file from which the
- structure could implicitly be rebuilt, esp. one in {flat-ASCII}
- form.
-
- flatten: vt. To remove structural information, esp. to filter
- something with an implicit tree structure into a simple sequence of
- leaves; also tends to imply mapping to {flat-ASCII}. "This code
- flattens an expression with parentheses into an equivalent
- {canonical} form."
-
- flavor: n. 1. Variety, type, kind. "DDT commands come in two
- flavors." "These lights come in two flavors, big red ones and
- small green ones." See {vanilla}. 2. The attribute that causes
- something to be {flavorful}. Usually used in the phrase "yields
- additional flavor". "This convention yields additional flavor by
- allowing one to print text either right-side-up or upside-down."
- See {vanilla}. This usage was certainly reinforced by the
- terminology of quantum chromodynamics, in which quarks (the
- constituents of, e.g., protons) come in six flavors (up, down,
- strange, charm, top, bottom) and three colors (red, blue, green)
- --- however, hackish use of `flavor' at MIT predated QCD. 3. The
- term for `class' (in the object-oriented sense) in the LISP Machine
- Flavors system. Though the Flavors design has been superseded
- (notably by the Common LISP CLOS facility), the term `flavor' is
- still used as a general synonym for `class' by some LISP hackers.
-
- flavorful: adj. Full of {flavor}; esthetically pleasing. See
- {random} and {losing} for antonyms. See also the entries for
- {taste} and {elegant}.
-
- flippy: /flip'ee/ n. A single-sided floppy disk altered for
- double-sided use by addition of a second write-notch, so called
- because it must be flipped over for the second side to be
- accessible. No longer common.
-
- flowchart:: [techspeak] n. An archaic form of visual control-flow
- specification employing arrows and `speech balloons' of various
- shapes. Hackers never use flowcharts, consider them extremely
- silly, and associate them with {COBOL} programmers, {card
- walloper}s, and other lower forms of life. This is because (from a
- hacker's point of view) they are no easier to read than code, are
- less precise, and tend to fall out of sync with the code (so that
- they either obfuscate it rather than explaining it or require
- extra maintenance effort that doesn't improve the code). See also
- {pdl}, sense 3.
-
- flower key: [Mac users] n. See {command key}.
-
- flush: v. 1. To delete something, usually superfluous, or to abort
- an operation. "All that nonsense has been flushed." 2. [UNIX/C]
- To force buffered I/O to disk, as with an `fflush(3)' call.
- This is *not* an abort or deletion as in sense 1, but a
- demand for early completion! 3. To leave at the end of a day's
- work (as opposed to leaving for a meal). "I'm going to flush
- now." "Time to flush." 4. To exclude someone from an activity,
- or to ignore a person.
-
- `Flush' was standard ITS terminology for aborting an output
- operation; one spoke of the text that would have been printed, but
- was not, as having been flushed. It is speculated that this term
- arose from a vivid image of flushing unwanted characters by hosing
- down the internal output buffer, washing the characters away before
- they can be printed. The UNIX/C usage, on the other hand, was
- propagated by the `fflush(3)' call in C's standard I/O library
- (though it is reported to have been in use among BLISS programmers
- at DEC and on Honeywell and IBM machines as far back as 1965).
- UNIX/C hackers find the ITS usage confusing, and vice versa.
-
- Flyspeck 3: n. Standard name for any font that is so tiny as to be
- unreadable (by analogy with such names as `Helvetica 10' for
- 10-point Helvetica). Legal boilerplate is usually printed in
- Flyspeck 3.
-
- flytrap: n. See {firewall machine}.
-
- FOAF: // [USENET] n. Acronym for `Friend Of A Friend'. The
- source of an unverified, possibly untrue story. This was not
- originated by hackers (it is used in Jan Brunvand's books on urban
- folklore), but is much better recognized on USENET and elsewhere
- than in mainstream English.
-
- FOD: /fod/ v. [Abbreviation for `Finger of Death', originally a
- spell-name from fantasy gaming] To terminate with extreme prejudice
- and with no regard for other people. From {MUD}s where the
- wizard command `FOD <player>' results in the immediate and total
- death of <player>, usually as punishment for obnoxious behavior.
- This migrated to other circumstances, such as "I'm going to fod
- the process that is burning all the cycles." Compare {gun}.
-
- In aviation, FOD means Foreign Object Damage, e.g., what happens
- when a jet engine sucks up a rock on the runway or a bird in
- flight. Finger of Death is a distressingly apt description of
- what this does to the engine.
-
- fold case: v. See {smash case}. This term tends to be used
- more by people who don't mind that their tools smash case. It also
- connotes that case is ignored but case distinctions in data
- processed by the tool in question aren't destroyed.
-
- followup: n. On USENET, a {posting} generated in response to
- another posting (as opposed to a {reply}, which goes by email
- rather than being broadcast). Followups include the ID of the
- {parent message} in their headers; smart news-readers can use
- this information to present USENET news in `conversation' sequence
- rather than order-of-arrival. See {thread}.
-
- foo: /foo/ 1. interj. Term of disgust. 2. Used very generally
- as a sample name for absolutely anything, esp. programs and files
- (esp. scratch files). 3. First on the standard list of
- metasyntactic variables used in syntax examples. See also
- {bar}, {baz}, {qux}, {quux}, {corge}, {grault},
- {garply}, {waldo}, {fred}, {plugh}, {xyzzy},
- {thud}.
-
- {foo} is the {canonical} example of a `metasyntactic
- variable' --- 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. To avoid confusion, hackers never use
- `foo' or other words like it as permanent names for anything. In
- filenames, a common convention is that any filename beginning
- `foo' is a scratch file that may be deleted at any time.
-
- The etymology of hackish `foo' is obscure. When used in
- connection with `bar' it is generally traced to the WWII-era Army
- slang acronym FUBAR (`Fucked Up Beyond All Recognition'), later
- bowdlerized to {foobar}. (See also {FUBAR}).
-
- However, the use of the word `foo' itself has more complicated
- antecedents, including a long history in comic strips and cartoons.
- The old "Smokey Stover" comic strips by Bill Holman often
- included the word `FOO', in particular on license plates of cars;
- allegedly, `FOO' and `BAR' also occurred in Walt Kelly's
- "Pogo" strips. In the 1938 cartoon "Daffy Doc", a very
- early version of Daffy Duck holds up a sign saying "SILENCE IS
- FOO!"; oddly, this seems to refer to some approving or positive
- affirmative use of foo. It is even possible that hacker usage
- actually springs from `FOO, Lampoons and Parody', the title of
- a comic book first issued in September 1958; the byline read
- `C. Crumb' but this may well have been a sort-of pseudonym for
- noted weird-comix artist Robert Crumb. The title FOO was featured
- in large letters on the front cover.
-
- An old-time member reports that in the 1959 `Dictionary of the
- TMRC Language', compiled at {TMRC} there was an entry that went
- something like this:
-
- FOO: The first syllable of the sacred chant phrase "FOO MANE PADME
- HUM." Our first obligation is to keep the foo counters turning.
-
- For more about the legendary foo counters, see {TMRC}. Almost
- the entire AI staff was involved with TMRC, so it is not clear
- which group introduced the other to the word FOO.
-
- Very probably, hackish `foo' had no single origin and derives
- through all these channels from Yiddish `feh' and/or English
- `fooey'.
-
- foobar: n. Another common metasyntactic variable; see {foo}.
- Hackers do *not* generally use this to mean {FUBAR} in
- either the slang or jargon sense.
-
- fool: n. As used by hackers, specifically describes a person who
- habitually reasons from obviously or demonstrably incorrect
- premises and cannot be persuaded by evidence to do otherwise; it is
- not generally used in its other senses, i.e., to describe a person
- with a native incapacity to reason correctly, or a clown. Indeed,
- in hackish experience many fools are capable of reasoning all too
- effectively in executing their errors. See also {cretin},
- {loser}, {fool file, the}.
-
- fool file, the: [USENET] n. A notional repository of all the most
- dramatically and abysmally stupid utterances ever. There is a
- subgenre of {sig block}s that consists of the header "From the
- fool file:" followed by some quote the poster wishes to represent
- as an immortal gem of dimwittery; for this to be really effective,
- the quote has to be so obviously wrong as to be laughable. More
- than one USENETter has achieved an unwanted notoriety by being
- quoted in this way.
-
- Foonly: n. 1. The {PDP-10} successor that was to have been built by
- the Super Foonly project at the Stanford Artificial Intelligence
- Laboratory along with a new operating system. The intention was to
- leapfrog from the old DEC timesharing system SAIL was running to a
- new generation, bypassing TENEX which at that time was the ARPANET
- standard. ARPA funding for both the Super Foonly and the new
- operating system was cut in 1974. Most of the design team went to
- DEC and contributed greatly to the design of the PDP-10 model KL10.
- 2. The name of the company formed by Dave Poole, one of the
- principal Super Foonly designers, and one of hackerdom's more
- colorful personalities. Many people remember the parrot which sat
- on Poole's shoulder and was a regular companion. 3. Any of the
- machines built by Poole's company. The first was the F-1 (a.k.a.
- Super Foonly), which was the computational engine used to create
- the graphics in the movie "TRON". The F-1 was the fastest
- PDP-10 ever built, but only one was ever made. The effort drained
- Foonly of its financial resources, and they turned towards building
- smaller, slower, and much less expensive machines. Unfortunately,
- these ran not the popular {TOPS-20} but a TENEX varient called
- Foonex; this seriously limited their market. Also, the machines
- shipped were actually wire-wrapped engineering prototypes requiring
- individual attention from more than usually competent site
- personnel, and thus had significant reliability problems. Poole's
- legendary temper and unwillingness to suffer fools gladly did not
- help matters. By the time of the Jupiter project cancellation in
- 1983 Foonly's proposal to build another F-1 was eclipsed by the
- {Mars}, and the company never quite recovered. See the
- {Mars} entry for the continuation and moral of this story.
-
- footprint: n. 1. The floor or desk area taken up by a piece of
- hardware. 2. [IBM] The audit trail (if any) left by a crashed
- program (often in plural, `footprints'). See also
- {toeprint}.
-
- for free: adj. Said of a capability of a programming language or
- hardware equipment that is available by its design without needing
- cleverness to implement: "In APL, we get the matrix operations for
- free." "And owing to the way revisions are stored in this
- system, you get revision trees for free." Usually it refers to a
- serendipitous feature of doing things a certain way (compare
- {big win}), but it may refer to an intentional but secondary
- feature.
-
- for the rest of us: [from the Mac slogan "The computer for the
- rest of us"] adj. 1. Used to describe a {spiffy} product whose
- affordability shames other comparable products, or (more often)
- used sarcastically to describe {spiffy} but very overpriced
- products. 2. Describes a program with a limited interface,
- deliberately limited capabilities, non-orthogonality, inability to
- compose primitives, or any other limitation designed to not
- `confuse' a na"ive user. This places an upper bound on how far that
- user can go before the program begins to get in the way of the task
- instead of helping accomplish it. Used in reference to Macintosh
- software which doesn't provide obvious capabilities because it is
- thought that the poor lusers might not be able to handle them.
- Becomes `the rest of *them*' when used in third-party
- reference; thus, "Yes, it is an attractive program, but it's
- designed for The Rest Of Them" means a program that superficially
- looks neat but has no depth beyond the surface flash. See also
- {WIMP environment}, {Macintrash}, {user-friendly}.
-
- fora: pl.n. Plural of {forum}.
-
- foreground: [UNIX] vt. To foreground a task is to bring it to
- the top of one's {stack} for immediate processing, and hackers
- often use it in this sense for non-computer tasks. "If your
- presentation is due next week, I guess I'd better foreground
- writing up the design document."
-
- Technically, on a time-sharing system, a task executing in
- foreground is one able to accept input from and return output to
- the user; oppose {background}. Nowadays this term is primarily
- associated with {{UNIX}}, but it appears first to have been used
- in this sense on OS/360. Normally, there is only one foreground
- task per terminal (or terminal window); having multiple processes
- simultaneously reading the keyboard is a good way to {lose}.
-
- forked: [UNIX; prob. influenced by a mainstream expletive] adj.
- Terminally slow, or dead. Originated when one system slowed to
- incredibly bad speeds because of a process recursively spawning copies
- of itself (using the UNIX system call `fork(2)') and taking up
- all the process table entries.
-
- Fortrash: /for'trash/ n. Hackerism for the FORTRAN language,
- referring to its primitive design, gross and irregular syntax,
- limited control constructs, and slippery, exception-filled
- semantics.
-
- fortune cookie: [UNIX] n. A random quote, item of trivia, joke, or
- maxim printed to the user's tty at login time or (less commonly) at
- logout time. Items from this lexicon have often been used as
- fortune cookies. See {cookie file}.
-
- forum: n. [USENET, GEnie CI$; pl. `fora' or `forums'] Any
- discussion group accessible through a dial-in {BBS}, a
- {mailing list}, or a {newsgroup} (see {network, the}). A
- forum functions much like a bulletin board; users submit
- {posting}s for all to read and discussion ensues. Contrast
- real-time chat via {talk mode} or point-to-point personal
- {email}.
-
- fossil: n. 1. In software, a misfeature that becomes understandable
- only in historical context, as a remnant of times past retained so
- as not to break compatibility. Example: the retention of octal as
- default base for string escapes in {C}, in spite of the better
- match of hexadecimal to ASCII and modern byte-addressable
- architectures. See {dusty deck}. 2. More restrictively, a
- feature with past but no present utility. Example: the
- force-all-caps (LCASE) bits in the V7 and {BSD} UNIX tty driver,
- designed for use with monocase terminals. In a perversion of the
- usual backward-compatibility goal, this functionality has actually
- been expanded and renamed in some later {USG UNIX} releases as
- the IUCLC and OLCUC bits. 3. The FOSSIL (Fido/Opus/Seadog
- Standard Interface Level) driver specification for serial-port
- access to replace the {brain-dead} routines in the IBM PC ROMs.
- Fossils are used by most MS-DOS {BBS} software in lieu of
- programming the {bare metal} of the serial ports, as the ROM
- routines do not support interrupt-driven operation or setting
- speeds above 9600. Since the FOSSIL specification allows
- additional functionality to be hooked in, drivers that use the
- {hook} but do not provide serial-port access themselves are named
- with a modifier, as in `video fossil'.
-
- four-color glossies: 1. Literature created by {marketroid}s
- that allegedly containing technical specs but which is in fact as
- superficial as possible without being totally {content-free}.
- "Forget the four-color glossies, give me the tech ref manuals."
- Often applied as an indication of superficiality even when the
- material is printed on ordinary paper in black and white.
- Four-color-glossy manuals are *never* useful for finding a
- problem. 2. [rare] Applied by extension to manual pages that don't
- contain enough information to diagnose why the program doesn't
- produce the expected or desired output.
-
- fragile: adj. Syn {brittle}.
-
- fred: n. 1. The personal name most frequently used as a
- metasyntactic variable (see {foo}). Allegedly popular because
- it's easy for a non-touch-typist to type on a standard QWERTY
- keyboard. Unlike {J. Random Hacker} or `J. Random Loser',
- this name has no positive or negative loading (but see {Mbogo,
- Dr. Fred}). 2. An acronym for `Flipping Ridiculous Electronic
- Device'; other F-verbs may be substituted for `flipping'.
-
- frednet: /fred'net/ n. Used to refer to some {random} and
- uncommon protocol encountered on a network. "We're implementing
- bridging in our router to solve the frednet problem."
-
- freeware: n. Free software, often written by enthusiasts and
- distributed by users' groups, or via electronic mail, local
- bulletin boards, {USENET}, or other electronic media. At one
- time, `freeware' was a trademark of Andrew Fluegelman, the author
- of the well-known MS-DOS comm program PC-TALK III. It wasn't
- enforced after his mysterious disappearance and presumed death
- in 1984. See {shareware}.
-
- freeze: v. To lock an evolving software distribution or document
- against changes so it can be released with some hope of stability.
- Carries the strong implication that the item in question will
- `unfreeze' at some future date. "OK, fix that bug and we'll
- freeze for release."
-
- There are more specific constructions on this. A `feature freeze',
- for example, locks out modifications intended to introduce new
- features; a `code freeze' connotes no more changes at all.
- At Sun Microsystems and elsewhere, one may also hear references to
- `code slush' --- that is, an almost-but-not-quite frozen state.
-
- fried: adj. 1. Non-working due to hardware failure; burnt out.
- Especially used of hardware brought down by a `power glitch' (see
- {glitch}), {drop-outs}, a short, or some other electrical
- event. (Sometimes this literally happens to electronic circuits!
- In particular, resistors can burn out and transformers can melt
- down, emitting noxious smoke. However, this term is also used
- metaphorically.) Compare {frotzed}. 2. Of people, exhausted.
- Said particularly of those who continue to work in such a state.
- Often used as an explanation or excuse. "Yeah, I know that fix
- destroyed the file system, but I was fried when I put it in."
- Esp. common in conjunction with `brain': "My brain is fried
- today, I'm very short on sleep."
-
- friode: /fri:'ohd/ [TMRC] n. A reversible (that is, fused or
- blown) diode. Compare {fried}.
-
- fritterware: n. An excess of capability that serves no productive
- end. The canonical example is font-diddling software on the Mac
- (see {macdink}); the term describes anything that eats huge
- amounts of time for quite marginal gains in function but seduces
- people into using it anyway.
-
-
- frob: /frob/ 1. n. [MIT] The {TMRC} definition was "FROB = a
- protruding arm or trunnion"; by metaphoric extension, a `frob' is
- any random small thing; an object that you can comfortably hold in
- one hand; something you can frob. See {frobnitz}. 2. vt.
- Abbreviated form of {frobnicate}. 3. [from the {MUD} world]
- A command on some MUDs that changes a player's experience level
- (this can be used to make wizards); also, to request {wizard}
- privileges on the `professional courtesy' grounds that one is a
- wizard elsewhere.
-
- frobnicate: /frob'ni-kayt/ vt. [Poss. derived from {frobnitz}, and
- usually abbreviated to {frob}, but `frobnicate' is recognized
- as the official full form.] To manipulate or adjust, to tweak.
- One frequently frobs bits or other 2-state devices. Thus:
- "Please frob the light switch" (that is, flip it), but also
- "Stop frobbing that clasp; you'll break it". One also sees the
- construction `to frob a frob'. See {tweak} and {twiddle}.
- Usage: frob, twiddle, and tweak sometimes connote
- points along a continuum. `Frob' connotes aimless manipulation;
- `twiddle' connotes gross manipulation, often a coarse search for
- a proper setting; `tweak' connotes fine-tuning. If someone is
- turning a knob on an oscilloscope, then if he's carefully adjusting
- it, he is probably tweaking it; if he is just turning it but looking
- at the screen, he is probably twiddling it; but if he's just doing
- it because turning a knob is fun, he's frobbing it. The variant
- `frobnosticate' has been recently reported.
-
- frobnitz: /frob'nits/, pl. `frobnitzem' /frob'nit-zm/ or
- `frobni' /frob'ni:/ n. An unspecified physical object, a
- widget. Also refers to electronic black boxes. This rare form is
- usually abbreviated to `frotz', or more commonly to {frob}.
- Also used are `frobnule' (/frob'n[y]ool/) and `frobule'
- (/frob'yool/). Starting perhaps in 1979, `frobozz'
- /fruh-boz'/ (plural: `frobbotzim' /fruh-bot'zm/) has also
- become very popular, largely through its exposure as a name via
- {Zork}. These can also be applied to nonphysical objects, such
- as data structures.
-
- frog: alt. `phrog' 1. interj. Term of disgust (we seem to have
- a lot of them). 2. Used as a name for just about anything. See
- {foo}. 3. n. Of things, a crock. 4. n. Of people, somewhere
- in between a turkey and a toad. 5. `froggy': adj. Similar to
- `bagbiting' (see {bagbiter}), but milder. "This froggy
- program is taking forever to run!"
-
- front end: n. 1. An intermediary computer that does set-up and
- filtering for another (usually more powerful but less friendly)
- machine (a `back end'). 2. What you're talking to when you
- have a conversation with someone who is making replies without
- paying attention. "Look at the dancing elephants!" "Uh-huh."
- "Do you know what I just said?" "Sorry, you were talking to the
- front end." See also {fepped out}. 3. Software that provides
- an interface to another program `behind' it, which may not be as
- user-friendly. Probably from analogy with hardware front-ends (see
- sense 1) that interfaced with mainframes.
-
- frotz: /frots/ 1. n. See {frobnitz}. 2. `mumble frotz': An
- interjection of very mild disgust.
-
- frotzed: /frotst/ adj. {down} because of hardware problems. Compare
- {fried}. A machine that is merely frotzed may be fixable
- without replacing parts, but a fried machine is more seriously
- damaged.
-
- frowney: n. (alt. `frowney face') See {emoticon}.
-
- fry: 1. vi. To fail. Said especially of smoke-producing hardware
- failures. More generally, to become non-working. Usage: never
- said of software, only of hardware and humans. See {fried},
- {magic smoke}. 2. vt. To cause to fail; to {roach}, {toast},
- or {hose} a piece of hardware. Never used of software or humans,
- but compare {fried}.
-
- FTP: /F-T-P/, *not* /fit'ip/ 1. [techspeak] n. The File
- Transfer Protocol for transmitting files between systems on the
- Internet. 2. vt. To {beam} a file using the File Transfer
- Protocol. 3. Sometimes used as a generic even for file transfers
- not using {FTP}. "Lemme get a copy of `Wuthering
- Heights' ftp'd from uunet."
-
- FUBAR: n. The Failed UniBus Address Register in a VAX. A good
- example of how jargon can occasionally be snuck past the {suit}s;
- see {foobar}.
-
- fuck me harder: excl. Sometimes uttered in response to egregious
- misbehavior, esp. in software, and esp. of misbehaviors which
- seem unfairly persistent (as though designed in by the imp of the
- perverse). Often theatrically elaborated: "Aiighhh! Fuck me with
- a piledriver and 16 feet of curare-tipped wrought-iron fence
- *and no lubricants*!" The phrase is sometimes heard
- abbreviated `FMH' in polite company.
-
- [This entry is an extreme example of the hackish habit of coining
- elaborate and evocative terms for lossage. Here we see a quite
- self-conscious parody of mainstream expletives that has become a
- running gag in part of the hacker culture; it illustrates the
- hackish tendency to turn any situation, even one of extreme
- frustration, into an intellectual game (the point being, in this
- case, to creatively produce a long-winded description of the
- most anatomically absurd mental image possible --- the short forms
- implicitly allude to all the ridiculous long forms ever spoken).
- Scatological language is actually relatively uncommon among
- hackers, and there was some controversy over whether this entry
- ought to be included at all. As it reflects a live usage
- recognizably peculiar to the hacker culture, we feel it is
- in the hackish spirit of truthfulness and opposition to all
- forms of censorship to record it here. --ESR & GLS]
-
- FUD: /fuhd/ n. Defined by Gene Amdahl after he left IBM to found
- his own company: "FUD is the fear, uncertainty, and doubt that IBM
- sales people instill in the minds of potential customers who might
- be considering [Amdahl] products." The idea, of course, was to
- persuade them to go with safe IBM gear rather than with
- competitors' equipment. This was traditionally done by promising
- that Good Things would happen to people who stuck with IBM, but
- Dark Shadows loomed over the future of competitors' equipment or
- software. See {IBM}.
-
- FUD wars: /fuhd worz/ n. [from {FUD}] Political posturing engaged in
- by hardware and software vendors ostensibly committed to
- standardization but actually willing to fragment the market to
- protect their own shares. The UNIX International vs. OSF conflict
- is but one outstanding example.
-
- fudge: 1. vt. To perform in an incomplete but marginally acceptable
- way, particularly with respect to the writing of a program. "I
- didn't feel like going through that pain and suffering, so I fudged
- it --- I'll fix it later." 2. n. The resulting code.
-
- fudge factor: n. A value or parameter that is varied in an ad hoc way
- to produce the desired result. The terms `tolerance' and
- {slop} are also used, though these usually indicate a one-sided
- leeway, such as a buffer that is made larger than necessary
- because one isn't sure exactly how large it needs to be, and it is
- better to waste a little space than to lose completely for not
- having enough. A fudge factor, on the other hand, can often be
- tweaked in more than one direction. A good example is the `fuzz'
- typically allowed in floating-point calculations: two numbers being
- compared for equality must be allowed to differ by a small amount;
- if that amount is too small, a computation may never terminate,
- while if it is too large, results will be needlessly inaccurate.
- Fudge factors are frequently adjusted incorrectly by programmers
- who don't fully understand their import. See also {coefficient
- of X}.
-
- fuel up: vi. To eat or drink hurriedly in order to get back to
- hacking. "Food-p?" "Yeah, let's fuel up." "Time for a
- {great-wall}!" See also {{oriental food}}.
-
- fuggly: /fuhg'lee/ adj. Emphatic form of {funky}; funky +
- ugly). Unusually for hacker jargon, this may actually derive from
- black street-jive. To say it properly, the first syllable should
- be growled rather than spoken. Usage: humorous. "Man, the
- {{ASCII}}-to-{{EBCDIC}} code in that printer driver is
- *fuggly*." See also {wonky}.
-
- funky: adj. Said of something that functions, but in a slightly
- strange, klugey way. It does the job and would be difficult to
- change, so its obvious non-optimality is left alone. Often used to
- describe interfaces. The more bugs something has that nobody has
- bothered to fix because workarounds are easier, the funkier it is.
- {TECO} and UUCP are funky. The Intel i860's exception handling is
- extraordinarily funky. Most standards acquire funkiness as they
- age. "The new mailer is installed, but is still somewhat funky;
- if it bounces your mail for no reason, try resubmitting it."
- "This UART is pretty funky. The data ready line is active-high in
- interrupt mode and active-low in DMA mode." See {fuggly}.
-
- funny money: n. 1. Notional `dollar' units of computing time and/or
- storage handed to students at the beginning of a computer course;
- also called `play money' or `purple money' (in implicit
- opposition to real or `green' money). When your funny money
- ran out, your account froze and you needed to go to a professor to
- get more. Fortunately, the plunging cost of timesharing cycles has
- made this less common. The amounts allocated were almost
- invariably too small, even for the non-hackers who wanted to slide
- by with minimum work. In extreme cases, the practice led to
- small-scale black markets in bootlegged computer accounts. 2. By
- extension, phantom money or quantity tickets of any kind used as a
- resource-allocation hack within a system. Antonym: `real
- money'.
-
- fuzzball: [TCP/IP hackers] n. A DEC LSI-11 running a particular
- suite of homebrewed software written by Dave Mills and assorted
- co-conspirators, used in the early 1980s for Internet protocol
- testbedding and experimentation. These were used as NSFnet
- backbone sites in its early 56KB-line days; a few are still active
- on the Internet as of early 1991, doing odd jobs such as network
- time service.
-
- = G =
-
- G: [SI] pref.,suff. See {{quantifiers}}.
-
- gabriel: /gay'bree-*l/ [for Dick Gabriel, SAIL LISP hacker and
- volleyball fanatic] n. An unnecessary (in the opinion of the
- opponent) stalling tactic, e.g., tying one's shoelaces or combing one's hair
- repeatedly, asking the time, etc. Also used to refer to the
- perpetrator of such tactics. Also, `pulling a Gabriel',
- `Gabriel mode'.
-
- gag: vi. Equivalent to {choke}, but connotes more disgust. "Hey,
- this is FORTRAN code. No wonder the C compiler gagged." See also
- {barf}.
-
- gang bang: n. The use of large numbers of loosely coupled
- programmers in an attempt to wedge a great many features into a
- product in a short time. Though there have been memorable gang
- bangs (e.g., that over-the-weekend assembler port mentioned in
- Steven Levy's `Hackers'), most are perpetrated by large
- companies trying to meet deadlines and produce enormous buggy
- masses of code entirely lacking in {orthogonal}ity. When
- market-driven managers make a list of all the features the
- competition has and assign one programmer to implement each, they
- often miss the importance of maintaining a coherent design. See
- also {firefighting}, {Mongolian Hordes technique},
- {Conway's Law}.
-
- garbage collect: vi. (also `garbage collection', n.) See {GC}.
-
- garply: /gar'plee/ [Stanford] n. Another meta-syntactic variable (see
- {foo}); once popular among SAIL hackers.
-
- gas: [as in `gas chamber'] 1. interj. A term of disgust and
- hatred, implying that gas should be dispensed in generous
- quantities, thereby exterminating the source of irritation. "Some
- loser just reloaded the system for no reason! Gas!" 2. interj. A
- suggestion that someone or something ought to be flushed out of
- mercy. "The system's getting {wedged} every few minutes.
- Gas!" 3. vt. To {flush} (sense 1). "You should gas that old
- crufty software." 4. [IBM] n. Dead space in nonsequentially
- organized files that was occupied by data that has been deleted;
- the compression operation that removes it is called `degassing' (by
- analogy, perhaps, with the use of the same term in vacuum
- technology). 5. [IBM] n. Empty space on a disk that has been
- clandestinely allocated against future need.
-
- gaseous: adj. Deserving of being {gas}sed. Disseminated by
- Geoff Goodfellow while at SRI; became particularly popular after
- the Moscone-Milk killings in San Francisco, when it was learned
- that the defendant Dan White (a politician who had supported
- Proposition 7) would get the gas chamber under Proposition 7 if
- convicted of first-degree murder (he was eventually convicted of
- manslaughter).
-
- GC: /G-C/ [from LISP terminology; `Garbage Collect']
- 1. vt. To clean up and throw away useless things. "I think I'll
- GC the top of my desk today." When said of files, this is
- equivalent to {GFR}. 2. vt. To recycle, reclaim, or put to
- another use. 3. n. An instantiation of the garbage collector
- process.
-
- `Garbage collection' is computer-science jargon for a particular
- class of strategies for dynamically reallocating computer memory.
- One such strategy involves periodically scanning all the data in
- memory and determining what is no longer accessible; useless data
- items are then discarded so that the memory they occupy can be
- recycled and used for another purpose. Implementations of the LISP
- language usually use garbage collection.
-
- In jargon, the full phrase is sometimes heard but the {abbrev} is
- more frequently used because it is shorter. Note that there is an
- ambiguity in usage that has to be resolved by context: "I'm going
- to garbage-collect my desk" usually means to clean out the
- drawers, but it could also mean to throw away or recycle the desk
- itself.
-
- GCOS:: /jee'kohs/ n. A {quick-and-dirty} {clone} of
- System/360 DOS that emerged from GE around 1970; originally called
- GECOS (the General Electric Comprehensive Operating System). Later
- kluged to support primitive timesharing and transaction processing.
- After the buyout of GE's computer division by Honeywell, the name
- was changed to General Comprehensive Operating System (GCOS).
- Other OS groups at Honeywell began referring to it as `God's Chosen
- Operating System', allegedly in reaction to the GCOS crowd's
- uninformed and snotty attitude about the superiority of their
- product. All this might be of zero interest, except for two facts:
- (1) The GCOS people won the political war, and this led in the
- orphaning and eventual death of Honeywell {{Multics}}, and
- (2) GECOS/GCOS left one permanent mark on UNIX. Some early UNIX
- systems at Bell Labs were GCOS machines for print spooling and
- various other services; the field added to `/etc/passwd' to
- carry GCOS ID information was called the `GECOS field' and
- survives today as the `pw_gecos' member used for the user's
- full name and other human-ID information. GCOS later played a
- major role in keeping Honeywell a dismal also-ran in the mainframe
- market, and was itself ditched for UNIX in the late 1980s when
- Honeywell retired its aging {big iron} designs.
-
- GECOS:: /jee'kohs/ n. See {{GCOS}}.
-
- gedanken: /g*-don'kn/ adj. Ungrounded; impractical; not
- well-thought-out; untried; untested. `Gedanken' is a German word
- for `thought'. A thought experiment is one you carry out in your
- head. In physics, the term `gedanken experiment' is used to
- refer to an experiment that is impractical to carry out, but useful
- to consider because you can reason about it theoretically. (A
- classic gedanken experiment of relativity theory involves thinking
- about a man in an elevator accelerating through space.) Gedanken
- experiments are very useful in physics, but you have to be careful.
- It's too easy to idealize away some important aspect of the real world
- in contructing your `apparatus'.
-
- Among hackers, accordingly, the word has a pejorative connotation.
- It is said of a project, especially one in artificial intelligence
- research, that is written up in grand detail (typically as a Ph.D.
- thesis) without ever being implemented to any great extent. Such a
- project is usually perpetrated by people who aren't very good
- hackers or find programming distasteful or are just in a hurry. A
- `gedanken thesis' is usually marked by an obvious lack of intuition
- about what is programmable and what is not, and about what does and
- does not constitute a clear specification of an algorithm. See
- also {AI-complete}, {DWIM}.
-
- geef: v. [ostensibly from `gefingerpoken'] vt. Syn. {mung}. See
- also {blinkenlights}.
-
- geek out: vi. To temporarily enter techno-nerd mode while in a
- non-hackish context, for example at parties held near computer
- equipment. Especially used when you need to do something highly
- technical and don't have time to explain: "Pardon me while I geek
- out for a moment." See {computer geek}.
-
- gen: /jen/ n.,v. Short for {generate}, used frequently in both spoken
- and written contexts.
-
- gender mender: n. A cable connector shell with either two male or two
- female connectors on it, used to correct the mismatches that result
- when some {loser} didn't understand the RS232C specification and
- the distinction between DTE and DCE. Used esp. for RS-232C
- parts in either the original D-25 or the IBM PC's bogus D-9 format.
- Also called `gender bender', `gender blender', `sex
- changer', and even `homosexual adapter'; however, there appears
- to be some confusion as to whether a `male homosexual adapter' has
- pins on both sides (is male) or sockets on both sides (connects two
- males).
-
- General Public Virus: n. Pejorative name for some versions of the
- {GNU} project {copyleft} or General Public License (GPL), which
- requires that any tools or {app}s incorporating copylefted code
- must be source-distributed on the same counter-commercial terms as
- GNU stuff. Thus it is alleged that the copyleft `infects' software
- generated with GNU tools, which may in turn infect other software
- that reuses any of its code. The Free Software Foundation's
- official position as of January 1991 is that copyright law limits
- the scope of the GPL to "programs textually incorporating
- significant amounts of GNU code", and that the `infection' is not
- passed on to third parties unless actual GNU source is transmitted
- (as in, for example, use of the Bison parser skeleton).
- Nevertheless, widespread suspicion that the {copyleft} language
- is `boobytrapped' has caused many developers to avoid using GNU
- tools and the GPL. Recent (July 1991) changes in the language of
- the version 2.00 language may eliminate this problem.
-
- generate: vt. To produce something according to an algorithm or
- program or set of rules, or as a (possibly unintended) side effect
- of the execution of an algorithm or program. The opposite of
- {parse}. This term retains its mechanistic connotations (though
- often humorously) when used of human behavior. "The guy is
- rational most of the time, but mention nuclear energy around him
- and he'll generate {infinite} flamage."
-
- gensym: /jen'sim/ [from MacLISP for `generated symbol'] 1. v.
- To invent a new name for something temporary, in such a way that
- the name is almost certainly not in conflict with one already in
- use. 2. n. The resulting name. The canonical form of a gensym is
- `Gnnnn' where nnnn represents a number; any LISP hacker would
- recognize G0093 (for example) as a gensym. 3. A freshly generated
- data structure with a gensymmed name. These are useful for storing
- or uniquely identifying crufties (see {cruft}).
-
- Get a life!: imp. Hacker-standard way of suggesting that the person
- to whom you are speaking has succumbed to terminal geekdom (see
- {computer geek}). Often heard on {USENET}, esp. as a way of
- suggesting that the target is taking some obscure issue of
- {theology} too seriously. This exhortation was popularized by
- William Shatner on a "Saturday Night Live" episode in a speech that
- ended "Get a *life*!", but some respondents believe it to
- have been in use before then.
-
- Get a real computer!: imp. Typical hacker response to news that
- somebody is having trouble getting work done on a system that
- (a) is single-tasking, (b) has no hard disk, or (c) has an address
- space smaller than 4 megabytes. This is as of mid-1991; note that
- the threshold for `real computer' rises with time, and it may well
- be (for example) that machines with character-only displays will be
- generally considered `unreal' in a few years (GLS points out that
- they already are in some circles). See {essentials}, {bitty
- box}, and {toy}.
-
- GFR: /G-F-R/ vt. [ITS] From `Grim File Reaper', an ITS and Lisp
- Machine utility. To remove a file or files according to some
- program-automated or semi-automatic manual procedure, especially
- one designed to reclaim mass storage space or reduce name-space
- clutter (the original GFR actually moved files to tape). Often
- generalized to pieces of data below file level. "I used to have
- his phone number, but I guess I {GFR}ed it." See also
- {prowler}, {reaper}. Compare {GC}, which discards only
- provably worthless stuff.
-
- gig: /jig/ or /gig/ [SI] n. See {{quantifiers}}.
-
- giga-: /ji'ga/ or /gi'ga/ [SI] pref. See {{quantifiers}}.
-
- GIGO: /gi:'goh/ [acronym] 1. `Garbage In, Garbage Out' ---
- usually said in response to {luser}s who complain that a program
- didn't complain about faulty data. Also commonly used to describe
- failures in human decision making due to faulty, incomplete, or
- imprecise data. 2. `Garbage In, Gospel Out': this more recent
- expansion is a sardonic comment on the tendency human beings have
- to put excessive trust in `computerized' data.
-
- gillion: /gil'y*n/ or /jil'y*n/ [formed from {giga-} by analogy
- with mega/million and tera/trillion] n. 10^9. Same as an
- American billion or a British `milliard'. How one pronounces
- this depends on whether one speaks {giga-} with a hard or
- soft `g'.
-
- GIPS: /gips/ or /jips/ [analogy with {MIPS}] n.
- Giga-Instructions per Second (also possibly `Gillions of
- Instructions per Second'; see {gillion}). In 1991, this is used
- of only a handful of highly parallel machines, but this is expected
- to change. Compare {KIPS}.
-
- glark: /glark/ vt. To figure something out from context. "The
- System III manuals are pretty poor, but you can generally glark the
- meaning from context." Interestingly, the word was originally
- `glork'; the context was "This gubblick contains many nonsklarkish
- English flutzpahs, but the overall pluggandisp can be glorked [sic]
- from context" (David Moser, quoted by Douglas Hofstadter in his
- "Metamagical Themas" column in the January 1981 `Scientific
- American'). It is conjectured that hackish usage mutated the verb to
- `glark' because {glork} was already an established jargon
- term. Compare {grok}, {zen}.
-
- glass: [IBM] n. Synonym for {silicon}.
-
- glass tty: /glas T-T-Y/ or /glas ti'tee/ n. A terminal that
- has a display screen but which, because of hardware or software
- limitations, behaves like a teletype or some other printing
- terminal, thereby combining the disadvantages of both: like a
- printing terminal, it can't do fancy display hacks, and like a
- display terminal, it doesn't produce hard copy. An example is the
- early `dumb' version of Lear-Siegler ADM 3 (without cursor
- control). See {tube}, {tty}. See appendix A for an
- interesting true story about a glass tty.
-
- glassfet: /glas'fet/ [by analogy with MOSFET, the acronym for
- `Metal-Oxide-Semiconductor Field-Effect Transistor'] n. Syn.
- {firebottle}, a humorous way to refer to a vacuum tube.
-
- glitch: /glich/ [from German `glitschen' to slip, via Yiddish
- `glitshen', to slide or skid] 1. n. A sudden interruption in
- electric service, sanity, continuity, or program function.
- Sometimes recoverable. An interruption in electric service is
- specifically called a `power glitch'. This is of grave concern
- because it usually crashes all the computers. In jargon, though, a
- hacker who got to the middle of a sentence and then forgot how he
- or she intended to complete it might say, "Sorry, I just
- glitched". 2. vi. To commit a glitch. See {gritch}. 3. vt.
- [Stanford] To scroll a display screen, esp. several lines at a
- time. {{WAITS}} terminals used to do this in order to avoid
- continuous scrolling, which is distracting to the eye. 4. obs.
- Same as {magic cookie}, sense 2.
-
- All these uses of `glitch' derive from the specific technical
- meaning the term has to hardware people. If the inputs of a
- circuit change, and the outputs change to some {random} value for
- some very brief time before they settle down to the correct value,
- then that is called a glitch. This may or may not be harmful,
- depending on what the circuit is connected to. This term is
- techspeak, found in electronics texts.
-
- glob: /glob/, *not* /glohb/ [UNIX] vt.,n. To expand special
- characters in a wildcarded name, or the act of so doing (the action
- is also called `globbing'). The UNIX conventions for filename
- wildcarding have become sufficiently pervasive that many hackers
- use some of them in written English, especially in email or news on
- technical topics. Those commonly encountered include the following:
-
- *
- wildcard for any string (see also {UN*X})
-
- ?
- wildcard for any character (generally read this way only at the
- beginning or in the middle of a word)
-
- []
- delimits a wildcard matching any of the enclosed characters
-
- {}
- alternation of comma-separated alternatives; thus, `foo{baz,qux}'
- would be read as `foobaz' or `fooqux'
-
- Some examples: "He said his name was [KC]arl" (expresses
- ambiguity). "I don't read talk.politics.*" (any of the
- talk.politics subgroups on {USENET}). Other examples are given
- under the entry for {X}. Compare {regexp}.
-
- Historical note: The jargon usage derives from `glob', the
- name of a subprogram that expanded wildcards in archaic pre-Bourne
- versions of the UNIX shell.
-
- glork: /glork/ 1. interj. Term of mild surprise, usually tinged with
- outrage, as when one attempts to save the results of 2 hours of
- editing and finds that the system has just crashed. 2. Used as a
- name for just about anything. See {foo}. 3. vt. Similar to
- {glitch}, but usually used reflexively. "My program just glorked
- itself." See also {glark}.
-
- glue: n. Generic term for any interface logic or protocol that
- connects two component blocks. For example, {Blue
- Glue} is IBM's SNA protocol, and hardware designers call anything
- used to connect large VLSI's or circuit blocks `glue logic'.
-
- gnarly: /nar'lee/ adj. Both {obscure} and {hairy} in the
- sense of complex. "{Yow}! --- the tuned assembler
- implementation of BitBlt is really gnarly!" From a similar but
- less specific usage in surfer slang.
-
- GNU: /gnoo/, *not* /noo/ 1. [acronym: `GNU's Not UNIX!',
- see {{recursive acronym}}] A UNIX-workalike development effort of
- the Free Software Foundation headed by Richard Stallman
- (rms@gnu.ai.mit.edu). GNU EMACS and the GNU C compiler, two tools
- designed for this project, have become very popular in hackerdom
- and elsewhere. The GNU project was designed partly to proselytize
- for RMS's position that information is community property and all
- software source should be shared. One of its slogans is "Help
- stamp out software hoarding!" Though this remains controversial
- (because it implicitly denies any right of designers to own,
- assign, and sell the results of their labors), many hackers who
- disagree with RMS have nevertheless cooperated to produce large
- amounts of high-quality software for free redistribution under the
- Free Software Foundation's imprimatur. See {EMACS},
- {copyleft}, {General Public Virus}. 2. Noted UNIX hacker
- John Gilmore (gnu@toad.com), founder of USENET's anarchic alt.*
- hierarchy.
-
- GNUMACS: /gnoo'maks/ [contraction of `GNU EMACS'] Often-heard
- abbreviated name for the {GNU} project's flagship tool, {EMACS}.
- Used esp. in contrast with {GOSMACS}.
-
- go flatline: [from cyberpunk SF, refers to flattening of EEG traces
- upon brain-death] vi., also adjectival `flatlined'. 1. To die,
- terminate, or fail, esp. irreversibly. In hacker parlance, this is
- used of machines only, human death being considered somewhat too
- serious a matter to employ jargon-jokes. 2. To go completely
- quiescent; said of machines undergoing controlled shutdown. "You
- can suffer file damage if you shut down UNIX but power off before
- the system has gone flatline." 3. Of a video tube, to fail by
- losing vertical scan, so all one sees is a bright horizontal line
- bisecting the screen.
-
- go root: [UNIX] vi. To temporarily enter {root mode} in order
- to perform a privileged operation. This use is deprecated in
- Australia, where v. `root' refers to animal sex.
-
- go-faster stripes: [UK] Syn. {chrome}.
-
- gobble: vt. To consume or to obtain. The phrase `gobble up' tends to
- imply `consume', while `gobble down' tends to imply `obtain'.
- "The output spy gobbles characters out of a {tty} output buffer."
- "I guess I'll gobble down a copy of the documentation tomorrow."
- See also {snarf}.
-
- Godzillagram: /god-zil'*-gram/ n. [from Japan's national hero]
- 1. A network packet that in theory is a broadcast to every machine
- in the universe. The typical case of this is an IP datagram whose
- destination IP address is [255.255.255.255]. Fortunately, few
- gateways are foolish enough to attempt to implement this! 2. A
- network packet of maximum size. An IP Godzillagram has
- 65,536 octets.
-
- golden: adj. [prob. from folklore's `golden egg'] When used to
- describe a magnetic medium (e.g., `golden disk', `golden tape'),
- describes one containing a tested, up-to-spec, ready-to-ship
- software version. Compare {platinum-iridium}.
-
- golf-ball printer: n. The IBM 2741, a slow but letter-quality
- printing device and terminal based on the IBM Selectric typewriter.
- The `golf ball' was a round object bearing reversed embossed
- images of 88 different characters arranged on four meridians of
- latitude; one could change the font by swapping in a different golf
- ball. This was the technology that enabled APL to use a
- non-EBCDIC, non-ASCII, and in fact completely non-standard
- character set. This put it 10 years ahead of its time --- where it
- stayed, firmly rooted, for the next 20, until character displays
- gave way to programmable bit-mapped devices with the flexibility to
- support other character sets.
-
- gonk: /gonk/ vt.,n. 1. To prevaricate or to embellish the truth
- beyond any reasonable recognition. It is alleged that in German
- the term is (mythically) `gonken'; in Spanish the verb becomes
- `gonkar'. "You're gonking me. That story you just told me is a
- bunch of gonk." In German, for example, "Du gonkst mir" (You're
- pulling my leg). See also {gonkulator}. 2. [British] To grab some
- sleep at an odd time; compare {gronk out}.
-
- gonkulator: /gon'kyoo-lay-tr/ [from the old "Hogan's Heroes" TV
- series] n. A pretentious piece of equipment that actually serves no
- useful purpose. Usually used to describe one's least favorite
- piece of computer hardware. See {gonk}.
-
- gonzo: /gon'zoh/ [from Hunter S. Thompson] adj. Overwhelming;
- outrageous; over the top; very large, esp. used of collections of
- source code, source files, or individual functions. Has some of the
- connotations of {moby} and {hairy}, but without the
- implication of obscurity or complexity.
-
- Good Thing: n.,adj. Often capitalized; always pronounced as if
- capitalized. 1. Self-evidently wonderful to anyone in a position
- to notice: "The Trailblazer's 19.2Kbaud PEP mode with on-the-fly
- Lempel-Ziv compression is a Good Thing for sites relaying
- netnews." 2. Something that can't possibly have any ill
- side-effects and may save considerable grief later: "Removing the
- self-modifying code from that shared library would be a Good
- Thing." 3. When said of software tools or libraries, as in "YACC
- is a Good Thing", specifically connotes that the thing has
- drastically reduced a programmer's work load. Oppose {Bad
- Thing}.
-
- gorilla arm: n. The side-effect that destroyed touch-screens as a
- mainstream input technology despite a promising start in the early
- 1980s. It seems the designers of all those {spiffy} touch-menu
- systems failed to notice that humans aren't designed to hold their
- arms in front of their faces making small motions. After more than
- a very few selections, the arm begins to feel sore, cramped, and
- oversized; hence `gorilla arm'. This is now considered a classic
- cautionary tale to human-factors designers; "Remember the gorilla
- arm!" is shorthand for "How is this going to fly in *real*
- use?".
-
- gorp: /gorp/ [CMU: perhaps from the canonical hiker's food, Good
- Old Raisins and Peanuts] Another metasyntactic variable, like
- {foo} and {bar}.
-
- GOSMACS: /goz'maks/ [contraction of `Gosling EMACS'] n. The first
- {EMACS}-in-C implementation, predating but now largely eclipsed by
- {GNUMACS}. Originally freeware; a commercial version is now
- modestly popular as `UniPress EMACS'. The author (James Gosling)
- went on to invent {NeWS}.
-
- Gosperism: /gos'p*r-izm/ A hack, invention, or saying by
- arch-hacker R. William (Bill) Gosper. This notion merits its own
- term because there are so many of them. Many of the entries in
- {HAKMEM} are Gosperisms; see also {life}.
-
- gotcha: n. A {misfeature} of a system, especially a programming
- language or environment, that tends to breed bugs or mistakes because
- it behaves in an unexpected way. For example, a classic gotcha in {C}
- is the fact that `if (a=b) {code;}' is syntactically valid
- and sometimes even correct. It puts the value of `b' into `a'
- and then executes `code' if `a' is non-zero. What the
- programmer probably meant was `if (a==b) {code;}',
- which executes `code' if `a' and `b' are equal.
-
- GPL: /G-P-L/ n. Abbrev. for `General Public License' in
- widespread use; see {copyleft}.
-
- GPV: /G-P-V/ n. Abbrev. for {General Public Virus} in
- widespread use.
-
- grault: /grawlt/ n. Yet another meta-syntactic variable, invented by
- Mike Gallaher and propagated by the {GOSMACS} documentation. See
- {corge}.
-
- gray goo: n. A hypothetical substance composed of {sagan}s of
- sub-micron-sized self-replicating robots programmed to make copies
- of themselves out of whatever is available. The image that goes
- with the term is one of the entire biosphere of Earth being
- eventually converted to robot goo. This is the simplest of the
- {{nanotechnology}} disaster scenarios, easily refuted by arguments
- from energy requirements and elemental abundances. Compare {blue
- goo}.
-
- Great Renaming: n. The {flag day} on which all of the non-local
- groups on the {USENET} had their names changed from the net.-
- format to the current multiple-hierarchies scheme.
-
- Great Runes: n. Uppercase-only text or display messages. Some
- archaic operating systems still emit these. See also {runes},
- {smash case}, {fold case}.
-
- Decades ago, back in the days when it was the sole supplier of
- long-distance hardcopy transmittal devices, the Teletype
- Corporation was faced with a major design choice. To shorten code
- lengths and cut complexity in the printing mechanism, it had been
- decided that teletypes would use a monocase font, either ALL UPPER
- or all lower. The question was, which one to choose. A study was
- conducted on readability under various conditions of bad ribbon,
- worn print hammers, etc. Lowercase won; it is less dense and has
- more distinctive letterforms, and is thus much easier to read both
- under ideal conditions and when the letters are mangled or partly
- obscured. The results were filtered up through {management}.
- The chairman of Teletype killed the proposal because it failed one
- incredibly important criterion:
-
- "It would be impossible to spell the name of the Deity correctly."
-
- In this way (or so, at least, hacker folklore has it) superstition
- triumphed over utility. Teletypes were the major input devices on
- most early computers, and terminal manufacturers looking for
- corners to cut naturally followed suit until well into the 1970s.
- Thus, that one bad call stuck us with Great Runes for thirty years.
-
- great-wall: [from SF fandom] vi.,n. A mass expedition to an
- oriental restaurant, esp. one where food is served family-style
- and shared. There is a common heuristic about the amount of food
- to order, expressed as "Get N - 1 entrees"; the value of N,
- which is the number of people in the group, can be inferred from
- context (see {N}). See {{oriental food}}, {ravs},
- {stir-fried random}.
-
- Green Book: n. 1. One of the three standard PostScript references:
- `PostScript Language Program Design', bylined `Adobe Systems'
- (Addison-Wesley, 1988; QA76.73.P67P66 ISBN; 0-201-14396-8); see
- also {Red Book}, {Blue Book}). 2. Informal name for one of
- the three standard references on SmallTalk: `Smalltalk-80:
- Bits of History, Words of Advice', by Glenn Krasner
- (Addison-Wesley, 1983; QA76.8.S635S58; ISBN 0-201-11669-3) (this,
- too, is associated with blue and red books). 3. The `X/Open
- Compatibility Guide'. Defines an international standard {{UNIX}}
- environment that is a proper superset of POSIX/SVID; also includes
- descriptions of a standard utility toolkit, systems administrations
- features, and the like. This grimoire is taken with particular
- seriousness in Europe. See {Purple Book}. 4. The IEEE 1003.1
- POSIX Operating Systems Interface standard has been dubbed "The
- Ugly Green Book". 5. Any of the 1992 standards which will be
- issued by the CCITT's tenth plenary assembly. Until now, these
- have changed color each review cycle (1984 was {Red Book}, 1988
- {Blue Book}); however, it is rumored that this convention is
- going to be dropped before 1992. These include, among other
- things, the X.400 email standard and the Group 1 through 4 fax
- standards. See also {{book titles}}.
-
- green bytes: n. 1. Meta-information embedded in a file, such as
- the length of the file or its name; as opposed to keeping such
- information in a separate description file or record. The term
- comes from an IBM user's group meeting (ca. 1962) at which these
- two approaches were being debated and the diagram of the file on
- the blackboard had the `green bytes' drawn in green. 2. By
- extension, the non-data bits in any self-describing format. "A
- GIF file contains, among other things, green bytes describing the
- packing method for the image." Compare {out-of-band},
- {zigamorph}, {fence} (sense 1).
-
- green card: n. [after the `IBM System/360 Reference Data'
- card] This is used for any summary of an assembly language, even if
- the color is not green. Less frequently used now because of the
- decrease in the use of assembly language. "I'll go get my green
- card so I can check the addressing mode for that instruction."
- Some green cards are actually booklets.
-
- The original green card became a yellow card when the System/370
- was introduced, and later a yellow booklet. An anecdote from IBM
- refers to a scene that took place in a programmers' terminal room
- at Yorktown in 1978. A luser overheard one of the programmers ask
- another "Do you have a green card?" The other grunted and
- passed the first a thick yellow booklet. At this point the luser
- turned a delicate shade of olive and rapidly left the room, never
- to return. See also {card}.
-
- green lightning: [IBM] n. 1. Apparently random flashing streaks on
- the face of 3278-9 terminals while a new symbol set is being
- downloaded. This hardware bug was left deliberately unfixed, as
- some genius within IBM suggested it would let the user know that
- `something is happening'. That, it certainly does. Later
- microprocessor-driven IBM color graphics displays were actually
- *programmed* to produce green lightning! 2. [proposed] Any
- bug perverted into an alleged feature by adroit rationalization or
- marketing. "Motorola calls the CISC cruft in the 88000
- architecture `compatibility logic', but I call it green
- lightning". See also {feature}.
-
- green machine: n. A computer or peripheral device that has been
- designed and built to military specifications for field equipment
- (that is, to withstand mechanical shock, extremes of temperature
- and humidity, and so forth). Comes from the olive-drab `uniform'
- paint used for military equipment.
-
- Green's Theorem: [TMRC] prov. For any story, in any group of people
- there will be at least one person who has not heard the story.
- [The name of this theorem is a play on a fundamental theorem in
- calculus. --- ESR]
-
- grep: /grep/ [from the qed/ed editor idiom g/re/p , where
- re stands for a regular expression, to Globally search for the
- Regular Expression and Print the lines containing matches to it,
- via {{UNIX}} `grep(1)'] vt. To rapidly scan a file or file set
- looking for a particular string or pattern. By extension, to look
- for something by pattern. "Grep the bulletin board for the system
- backup schedule, would you?" See also {vgrep}.
-
- grind: vt. 1. [MIT and Berkeley] To format code, especially LISP
- code, by indenting lines so that it looks pretty. This usage was
- associated with the MacLISP community and is now rare;
- {prettyprint} was and is the generic term for such
- operations. 2. [UNIX] To generate the formatted version of a
- document from the nroff, troff, TeX, or Scribe source. The BSD
- program `vgrind(1)' grinds code for printing on a Versatec
- bitmapped printer. 3. To run seemingly interminably, esp. (but
- not necessarily) if performing some tedious and inherently useless
- task. Similar to {crunch} or {grovel}. Grinding has a
- connotation of using a lot of CPU time, but it is possible to grind
- a disk, network, etc. See also {hog}. 4. To make the whole
- system slow. "Troff really grinds a PDP-11." 5. `grind grind'
- excl. Roughly, "Isn't the machine slow today!"
-
- grind crank: n. A mythical accessory to a terminal. A crank on the
- side of a monitor, which when operated makes a zizzing noise and
- causes the computer to run faster. Usually one does not refer to a
- grind crank out loud, but merely makes the appropriate gesture and
- noise. See {grind} and {wugga wugga}.
-
- Historical note: At least one real machine actually had a grind
- crank --- the R1, a research machine built toward the end of the
- days of the great vacuum tube computers, in 1959. R1 (also known as
- `The Rice Institute Computer' (TRIC) and later as `The Rice
- University Computer' (TRUC)) had a single-step/free-run switch for
- use when debugging programs. Since single-stepping through a large
- program was rather tedious, there was also a crank with a cam and
- gear arrangement that repeatedly pushed the single-step button.
- This allowed one to `crank' through a lot of code, then slow down
- to single-step for a bit when you got near the code of interest, poke
- at some registers using the console typewriter, and then keep on
- cranking.
-
- gritch: /grich/ 1. n. A complaint (often caused by a {glitch}).
- 2. vi. To complain. Often verb-doubled: "Gritch gritch". 3. A
- synonym for {glitch} (as verb or noun).
-
- grok: /grok/, var. /grohk/ [from the novel `Stranger in
- a Strange Land', by Robert A. Heinlein, where it is a Martian word
- meaning literally `to drink' and metaphorically `to be one
- with'] vt. 1. To understand, usually in a global sense. Connotes
- intimate and exhaustive knowledge. Contrast {zen}, similar
- supernal understanding as a single brief flash. See also
- {glark}. 2. Used of programs, may connote merely sufficient
- understanding. "Almost all C compilers grok the `void' type
- these days."
-
- gronk: /gronk/ [popularized by Johnny Hart's comic strip
- "B.C." but the word apparently predates that] vt. 1. To
- clear the state of a wedged device and restart it. More severe
- than `to {frob}'. 2. [TMRC] To cut, sever, smash, or
- similarly disable. 3. The sound made by many 3.5-inch diskette
- drives. In particular, the microfloppies on a Commodore Amiga go
- "grink, gronk".
-
- gronk out: vi. To cease functioning. Of people, to go home and go
- to sleep. "I guess I'll gronk out now; see you all tomorrow."
-
- gronked: adj. 1. Broken. "The teletype scanner was gronked, so
- we took the system down." 2. Of people, the condition of feeling
- very tired or (less commonly) sick. "I've been chasing that bug
- for 17 hours now and I am thoroughly gronked!" Compare
- {broken}, which means about the same as {gronk} used of
- hardware, but connotes depression or mental/emotional problems in
- people.
-
- grovel: vi. 1. To work interminably and without apparent progress.
- Often used transitively with `over' or `through'. "The file
- scavenger has been groveling through the file directories for 10
- minutes now." Compare {grind} and {crunch}. Emphatic form:
- `grovel obscenely'. 2. To examine minutely or in complete detail.
- "The compiler grovels over the entire source program before
- beginning to translate it." "I grovelled through all the
- documentation, but I still couldn't find the command I wanted."
-
- grunge: /gruhnj/ n. 1. That which is grungy, or that which makes
- it so. 2. [Cambridge] Code which is inaccessible due to changes in
- other parts of the program. The preferred term in North America is
- {dead code}.
-
- gubbish: /guhb'*sh/ [a portmanteau of `garbage' and `rubbish'?]
- n. Garbage; crap; nonsense. "What is all this gubbish?" The
- opposite portmanteau `rubbage' is also reported.
-
- guiltware: /gilt'weir/ n. 1. A piece of {freeware} decorated
- with a message telling one how long and hard the author worked on
- it and intimating that one is a no-good freeloader if one does not
- immediately send the poor suffering martyr gobs of money.
- 2. {Shareware} that works.
-
- gumby: /guhm'bee/ [from a class of Monty Python characters, poss.
- themselves named after the 1960s claymation character] n. An act of
- minor but conspicuous stupidity, often in `gumby maneuver' or
- `pull a gumby'.
-
- gun: [ITS: from the `:GUN' command] vt. To forcibly
- terminate a program or job (computer, not career). "Some idiot
- left a background process running soaking up half the cycles, so I
- gunned it." Compare {can}.
-
- gunch: /guhnch/ [TMRC] vt. To push, prod, or poke at a device
- that has almost produced the desired result. Implies a threat to
- {mung}.
-
- gurfle: /ger'fl/ interj. An expression of shocked disbelief. "He
- said we have to recode this thing in FORTRAN by next week.
- Gurfle!" Compare {weeble}.
-
- guru: n. 1. [UNIX] An expert. Implies not only {wizard} skill
- but also a history of being a knowledge resource for others. Less
- often, used (with a qualifier) for other experts on other systems,
- as in `VMS guru'. See {source of all good bits}. 2. Amiga
- equivalent of `panic' in UNIX. When the system crashes, a
- cryptic message "GURU MEDITATION #XXXXXXXX.YYYYYYYY" appears,
- indicating what the problem was. An Amiga guru can figure things
- out from the numbers. Generally a {guru} event must be followed
- by a {Vulcan nerve pinch}.
-
- = H =
-
- h: [from SF fandom] infix. A method of `marking' common words,
- i.e., calling attention to the fact that they are being used in a
- nonstandard, ironic, or humorous way. Originated in the fannish
- catchphrase "Bheer is the One True Ghod!" from decades ago.
- H-infix marking of `Ghod' and other words spread into the 1960s
- counterculture via underground comix, and into early hackerdom
- either from the counterculture or from SF fandom (the three overlapped
- heavily at the time). More recently, the h infix has become an
- expected feature of benchmark names (Dhrystone, Rhealstone,
- etc.); this is prob. patterning on the original Whetstone (the name
- of a laboratory) but influenced by the fannish/counterculture
- h infix.
-
- ha ha only serious: [from SF fandom, orig. as mutation of HHOK,
- `Ha Ha Only Kidding'] A phrase (often seen abbreviated as HHOS)
- that aptly captures the flavor of much hacker discourse. Applied
- especially to parodies, absurdities, and ironic jokes that are both
- intended and perceived to contain a possibly disquieting amount of
- truth, or truths that are constructed on in-joke and self-parody.
- This lexicon contains many examples of ha-ha-only-serious in both
- form and content. Indeed, the entirety of hacker culture is often
- perceived as ha-ha-only-serious by hackers themselves; to take it
- either too lightly or too seriously marks a person as an outsider,
- a {wannabee}, or in {larval stage}. For further
- enlightenment on this subject, consult any Zen master. See also
- {{Humor, Hacker}}, and {AI koans}.
-
- hack: 1. n. Originally, a quick job that produces what is needed,
- but not well. 2. n. An incredibly good, and perhaps very
- time-consuming, piece of work that produces exactly what is needed.
- 3. vt. To bear emotionally or physically. "I can't hack this
- heat!" 4. vt. To work on something (typically a program). In an
- immediate sense: "What are you doing?" "I'm hacking TECO."
- In a general (time-extended) sense: "What do you do around here?"
- "I hack TECO." More generally, "I hack `foo'" is roughly
- equivalent to "`foo' is my major interest (or project)". "I
- hack solid-state physics." 5. vt. To pull a prank on. See
- sense 2 and {hacker} (sense 5). 6. vi. To interact with a
- computer in a playful and exploratory rather than goal-directed
- way. "Whatcha up to?" "Oh, just hacking." 7. n. Short for
- {hacker}. 8. See {nethack}.
-
- Constructions on this term abound. They include `happy
- hacking' (a farewell), `how's hacking?' (a friendly greeting
- among hackers) and `hack, hack' (a fairly content-free but
- friendly comment, often used as a temporary farewell). For more on
- the meaning of hack see appendix A. See also {neat hack},
- {real hack}.
-
- hack attack: [poss. by analogy with `Big Mac Attack' from ads
- for the McDonald's fast-food chain; the variant `big hack attack'
- is reported] n. Nearly synonymous with {hacking run}, though the
- latter more strongly implies an all-nighter.
-
- hack mode: n. 1. What one is in when hacking, of course. 2. More
- specifically, a Zen-like state of total focus on The Problem that
- may be achieved when one is hacking (this is why every good hacker
- is part mystic). Ability to enter such concentration at will
- correlates strongly with wizardliness; it is one of the most
- important skills learned during {larval stage}. Sometimes
- amplified as `deep hack mode'.
-
- Being yanked out of hack mode (see {priority interrupt}) may be
- experienced as a physical shock, and the sensation of being in it
- is more than a little habituating. The intensity of this
- experience is probably by itself sufficient explanation for the
- existence of hackers, and explains why many resist being promoted
- out of positions where they can code. See also {cyberspace}
- (sense 2).
-
- Some aspects of hackish etiquette will appear quite odd to an
- observer unaware of the high value placed on hack mode. For
- example, if someone appears at your door, it is perfectly okay to
- hold up a hand (without turning one's eyes away from the screen) to
- avoid being interrupted. One may read, type, and interact with the
- computer for quite some time before further acknowledging the
- other's presence (of course, he or she is reciprocally free to
- leave without a word). The understanding is that you might be in
- {hack mode} with a lot of delicate {state} (sense 2) in your
- head, and you dare not {swap} that context out until you have
- reached a good point to pause. See also {juggling eggs}.
-
- hack on: vt. To {hack}; implies that the subject is some
- pre-existing hunk of code that one is evolving, as opposed to
- something one might {hack up}.
-
- hack together: vt. To throw something together so it will work.
- Unlike `kluge together' or {cruft together}, this does not
- necessarily have negative connotations.
-
- hack up: vt. To {hack}, but generally implies that the result is
- a hack in sense 1 (a quick hack). Contrast this with {hack on}.
- To `hack up on' implies a {quick-and-dirty} modification to an
- existing system. Contrast {hacked up}; compare {kluge up},
- {monkey up}, {cruft together}.
-
- hack value: n. Often adduced as the reason or motivation for
- expending effort toward a seemingly useless goal, the point being
- that the accomplished goal is a hack. For example, MacLISP had
- features for reading and printing Roman numerals, which were
- installed purely for hack value. See {display hack} for one
- method of computing hack value, but this cannot really be
- explained. As a great artist once said of jazz: "If you hafta ask,
- you ain't never goin' to find out."
-
- hack-and-slay: v. (also `hack-and-slash') 1. To play a {MUD}
- or go mudding, especially with the intention of {berserking} for
- pleasure. 2. To undertake an all-night programming/hacking
- session, interspersed with stints of mudding as a change of pace.
- This term arose on the British academic network amongst students
- who worked nights and logged onto Essex University's MUDs during
- public-access hours (2 A.M. to 7 A.M.). Usually more
- mudding than work was done in these sessions.
-
- hacked off: [analogous to `pissed off'] adj. Said of system
- administrators who have become annoyed, upset, or touchy owing to
- suspicions that their sites have been or are going to be victimized
- by crackers, or used for inappropriate, technically illegal, or
- even overtly criminal activities. For example, having unreadable
- files in your home directory called `worm', `lockpick', or `goroot'
- would probably be an effective (as well as impressively obvious and
- stupid) way to get your sysadmin hacked off at you.
-
- hacked up: adj. Sufficiently patched, kluged, and tweaked that the
- surgical scars are beginning to crowd out normal tissue (compare
- {critical mass}). Not all programs that are hacked become
- `hacked up'; if modifications are done with some eye to coherence
- and continued maintainability, the software may emerge better for
- the experience. Contrast {hack up}.
-
- hacker: [originally, someone who makes furniture with an axe] n.
- 1. A person who enjoys exploring the details of programmable
- systems and how to stretch their capabilities, as opposed to most
- users, who prefer to learn only the minimum necessary. 2. One who
- programs enthusiastically (even obsessively) or who enjoys
- programming rather than just theorizing about programming. 3. A
- person capable of appreciating {hack value}. 4. A person who is
- good at programming quickly. 5. An expert at a particular program,
- or one who frequently does work using it or on it; as in `a UNIX
- hacker'. (Definitions 1 through 5 are correlated, and people who fit
- them congregate.) 6. An expert or enthusiast of any kind. One
- might be an astronomy hacker, for example. 7. One who enjoys the
- intellectual challenge of creatively overcoming or circumventing
- limitations. 8. [deprecated] A malicious meddler who tries to
- discover sensitive information by poking around. Hence `password
- hacker', `network hacker'. See {cracker}.
-
- It is better to be described as a hacker by others than to describe
- oneself that way. Hackers consider themselves something of an
- elite (a meritocracy based on ability), though one to which new
- members are gladly welcome. There is thus a certain ego
- satisfaction to be had in identifying yourself as a hacker (but if
- you claim to be one and are not, you'll quickly be labeled
- {bogus}).
-
- hacking run: [analogy with `bombing run' or `speed run'] n. A
- hack session extended long outside normal working times, especially
- one longer than 12 hours. May cause you to `change phase the hard
- way' (see {phase}).
-
- Hacking X for Y: [ITS] n. The information ITS made publicly
- available about each user (the INQUIR record) was a sort of form in
- which the user could fill out fields. On display, two of these
- fields were combined into a project description of the form
- "Hacking X for Y" (e.g., `"Hacking perceptrons for
- Minsky"'). This form of description became traditional and has
- since been carried over to other systems with more general
- facilities for self-advertisement (such as UNIX {plan file}s).
-
- Hackintosh: n. 1. An Apple Lisa that has been hacked into emulating a
- Macintosh (also called a `Mac XL'). 2. A Macintosh assembled
- from parts theoretically belonging to different models in the line.
-
- hackish: /hak'ish/ adj. (also {hackishness} n.) 1. Said of
- something that is or involves a hack. 2. Of or pertaining to
- hackers or the hacker subculture. See also {true-hacker}.
-
- hackishness: n. The quality of being or involving a hack. This
- term is considered mildly silly. Syn. {hackitude}.
-
- hackitude: n. Syn. {hackishness}; this word is considered sillier.
-
- hair: [back-formation from {hairy}] n. The complications that
- make something hairy. "Decoding {TECO} commands requires a
- certain amount of hair." Often seen in the phrase `infinite
- hair', which connotes extreme complexity. Also in `hairiferous'
- (tending to promote hair growth): "GNUMACS Elisp encourages lusers
- to write complex editing modes." "Yeah, it's pretty hairiferous
- all right." (or just: "Hair squared!")
-
- hairy: adj. 1. Annoyingly complicated. "{DWIM} is incredibly
- hairy." 2. Incomprehensible. "{DWIM} is incredibly hairy."
- 3. Of people, high-powered, authoritative, rare, expert, and/or
- incomprehensible. Hard to explain except in context: "He knows
- this hairy lawyer who says there's nothing to worry about." See
- also {hirsute}.
-
- HAKMEM: /hak'mem/ n. MIT AI Memo 239 (February 1972). A
- legendary collection of neat mathematical and programming hacks
- contributed by many people at MIT and elsewhere. (The title of the
- memo really is "HAKMEM", which is a 6-letterism for `hacks
- memo'.) Some of them are very useful techniques, powerful
- theorems, or interesting unsolved problems, but most fall into the
- category of mathematical and computer trivia. Here is a sampling
- of the entries (with authors), slightly paraphrased:
-
- Item 41 (Gene Salamin): There are exactly 23,000 prime numbers less
- than 2^18.
-
- Item 46 (Rich Schroeppel): The most *probable* suit
- distribution in bridge hands is 4-4-3-2, as compared to 4-3-3-3,
- which is the most *evenly* distributed. This is because the
- world likes to have unequal numbers: a thermodynamic effect saying
- things will not be in the state of lowest energy, but in the state
- of lowest disordered energy.
-
- Item 81 (Rich Schroeppel): Count the magic squares of order 5
- (that is, all the 5-by-5 arrangements of the numbers from 1 to 25
- such that all rows, columns, and diagonals add up to the same
- number). There are about 320 million, not counting those that
- differ only by rotation and reflection.
-
- Item 154 (Bill Gosper): The myth that any given programming language is
- machine independent is easily exploded by computing the sum of
- powers of 2. If the result loops with period = 1 with
- sign +, you are on a sign-magnitude machine. If the result
- loops with period = 1 at -1, you are on a
- twos-complement machine. If the result loops with period greater
- than 1, including the beginning, you are on a ones-complement
- machine. If the result loops with period greater than 1, not
- including the beginning, your machine isn't binary --- the pattern
- should tell you the base. If you run out of memory, you are on a
- string or bignum system. If arithmetic overflow is a fatal error,
- some fascist pig with a read-only mind is trying to enforce machine
- independence. But the very ability to trap overflow is machine
- dependent. By this strategy, consider the universe, or, more
- precisely, algebra: Let X = the sum of many powers of 2 =
- ...111111. Now add X to itself:
- X + X = ...111110 Thus, 2X = X - 1, so
- X = -1. Therefore algebra is run on a machine (the
- universe) that is two's-complement.
-
- Item 174 (Bill Gosper and Stuart Nelson): 21963283741 is the only
- number such that if you represent it on the {PDP-10} as both an
- integer and a floating-point number, the bit patterns of the two
- representations are identical.
-
- Item 176 (Gosper): The "banana phenomenon" was encountered when
- processing a character string by taking the last 3 letters typed
- out, searching for a random occurrence of that sequence in the
- text, taking the letter following that occurrence, typing it out,
- and iterating. This ensures that every 4-letter string output
- occurs in the original. The program typed BANANANANANANANA.... We
- note an ambiguity in the phrase, "the Nth occurrence of." In one
- sense, there are five 00's in 0000000000; in another, there are
- nine. The editing program TECO finds five. Thus it finds only the
- first ANA in BANANA, and is thus obligated to type N next. By
- Murphy's Law, there is but one NAN, thus forcing A, and thus a
- loop. An option to find overlapped instances would be useful,
- although it would require backing up N - 1 characters before
- seeking the next N-character string.
-
- Note: This last item refers to a {Dissociated Press}
- implementation. See also {banana problem}.
-
- HAKMEM also contains some rather more complicated mathematical and
- technical items, but these examples show some of its fun flavor.
-
- hakspek: /hak'speek/ n. A shorthand method of spelling found on
- many British academic bulletin boards and {talker system}s.
- Syllables and whole words in a sentence are replaced by single
- ASCII characters the names of which are phonetically similar or
- equivalent, while multiple letters are usually dropped. Hence,
- `for' becomes `4'; `two', `too', and `to' become `2'; `ck'
- becomes `k'. "Before I see you tomorrow" becomes "b4 i c u
- 2moro". First appeared in London about 1986, and was probably
- caused by the slowness of available talker systems, which
- operated on archaic machines with outdated operating systems and
- no standard methods of communication. Has become rarer since.
- See also {talk mode}.
-
- hamster: n. 1. [Fairchild] A particularly slick little piece of code
- that does one thing well; a small, self-contained hack. The image
- is of a hamster happily spinning its exercise wheel. 2. [UK] Any item
- of hardware made by Amstrad, a company famous for its cheap
- plastic PC-almost-compatibles.
-
- hand-hacking: n. 1. The practice of translating {hot spot}s from
- an {HLL} into hand-tuned assembler, as opposed to trying to
- coerce the compiler into generating better code. Both the term and
- the practice are becoming uncommon. See {tune}, {bum}, {by
- hand}; syn. with v. {cruft}. 2. More generally, manual
- construction or patching of data sets that would normally be
- generated by a translation utility and interpreted by another
- program, and aren't really designed to be read or modified by
- humans.
-
- handshaking: n. Hardware or software activity designed to start or
- keep two machines or programs in synchronization as they {do
- protocol}. Often applied to human activity; thus, a hacker might
- watch two people in conversation nodding their heads to indicate
- that they have heard each others' points and say "Oh, they're
- handshaking!". See also {protocol}.
-
- handwave: [poss. from gestures characteristic of stage magicians]
- 1. v. To gloss over a complex point; to distract a listener; to
- support a (possibly actually valid) point with blatantly faulty
- logic. 2. n. The act of handwaving. "Boy, what a handwave!"
-
- If someone starts a sentence with "Clearly..." or
- "Obviously..." or "It is self-evident that...", it is
- a good bet he is about to handwave (alternatively, use of these
- constructions in a sarcastic tone before a paraphrase of someone
- else's argument suggests that it is a handwave). The theory behind
- this term is that if you wave your hands at the right moment, the
- listener may be sufficiently distracted to not notice that what you
- have said is {bogus}. Failing that, if a listener does object,
- you might try to dismiss the objection with a wave of your hand.
-
- The use of this word is often accompanied by gestures: both hands
- up, palms forward, swinging the hands in a vertical plane pivoting
- at the elbows and/or shoulders (depending on the magnitude of the
- handwave); alternatively, holding the forearms in one position
- while rotating the hands at the wrist to make them flutter. In
- context, the gestures alone can suffice as a remark; if a speaker
- makes an outrageously unsupported assumption, you might simply wave
- your hands in this way, as an accusation, far more eloquent than
- words could express, that his logic is faulty.
-
- hang: v. 1. To wait for an event that will never occur. "The
- system is hanging because it can't read from the crashed drive".
- See {wedged}, {hung}. 2. To wait for some event to occur; to
- hang around until something happens. "The program displays a menu
- and then hangs until you type a character." Compare {block}.
- 3. To attach a peripheral device, esp. in the construction `hang
- off': "We're going to hang another tape drive off the file
- server." Implies a device attached with cables, rather than
- something that is strictly inside the machine's chassis.
-
- Hanlon's Razor: prov. A corollary of {Finagle's Law}, similar to
- Occam's Razor, that reads "Never attribute to malice that which can
- be adequately explained by stupidity." The derivation of the
- common title Hanlon's Razor is unknown; a similar epigram has been
- attributed to William James. Quoted here because it seems to be a
- particular favorite of hackers, often showing up in {fortune
- cookie} files and the login banners of BBS systems and commercial
- networks. This probably reflects the hacker's daily experience of
- environments created by well-intentioned but short-sighted people.
-
- happily: adv. Of software, used to emphasize that a program is
- unaware of some important fact about its environment, either
- because it has been fooled into believing a lie, or because it
- doesn't care. The sense of `happy' here is not that of elation,
- but rather that of blissful ignorance. "The program continues to
- run, happily unaware that its output is going to /dev/null."
-
- hard boot: n. See {boot}.
-
- hardcoded: adj. 1. Said of data inserted directly into a program,
- where it cannot be easily modified, as opposed to data in some
- {profile}, resource (see {de-rezz} sense 2), or environment
- variable that a {user} or hacker can easily modify. 2. In C,
- this is esp. applied to use of a literal instead of a
- `#define' macro (see {magic number}).
-
- hardwarily: /hard-weir'*-lee/ adv. In a way pertaining to
- hardware. "The system is hardwarily unreliable." The adjective
- `hardwary' is *not* traditionally used, though it has recently
- been reported from the U.K. See {softwarily}.
-
- hardwired: adj. 1. In software, syn. for {hardcoded}. 2. By
- extension, anything that is not modifiable, especially in the sense
- of customizable to one's particular needs or tastes.
-
- has the X nature: [seems to derive from Zen Buddhist koans of the
- form "Does an X have the Buddha-nature?"] adj. Common hacker
- construction for `is an X', used for humorous emphasis. "Anyone
- who can't even use a program with on-screen help embedded in it
- truly has the {loser} nature!" See also {the X that can be Y
- is not the true X}.
-
- hash bucket: n. A notional receptacle into which more than one
- thing accessed by the same key or short code might be dropped.
- When you look up a name in the phone book (for example), you
- typically hash it by extracting its first letter; the hash buckets
- are the alphabetically ordered letter sections. This is used as
- techspeak with respect to code that uses actual hash functions; in
- jargon, it is used for human associative memory as well. Thus, two
- things `in the same hash bucket' may be confused with each other.
- "If you hash English words only by length, you get too many common
- grammar words in the first couple of hash buckets." Compare {hash
- collision}.
-
- hash collision: [from the technical usage] n. (var. `hash
- clash') When used of people, signifies a confusion in associative
- memory or imagination, especially a persistent one (see
- {thinko}). True story: One of us [ESR] was once on the phone
- with a friend about to move out to Berkeley. When asked what he
- expected Berkeley to be like, the friend replied: "Well, I have
- this mental picture of naked women throwing Molotov cocktails, but
- I think that's just a collision in my hash tables." Compare
- {hash bucket}.
-
- hat: n. Common (spoken) name for the circumflex (`^', ASCII
- 1011110) character. See {ASCII} for other synonyms.
-
- HCF: /H-C-F/ n. Mnemonic for `Halt and Catch Fire', any of
- several undocumented and semi-mythical machine instructions with
- destructive side-effects, supposedly included for test purposes on
- several well-known architectures going as far back as the IBM 360.
- The MC6800 microprocessor was the first for which the HCF opcode
- became widely known. This instruction caused the processor to
- {toggle} a subset of the bus lines as rapidly as it could; in
- some configurations this can actually cause lines to burn
- up.
-
- heads down: [Sun] adj. Concentrating, usually so heavily and for so
- long that everything outside the focus area is missed. See also
- {hack mode} and {larval stage}, although it is not confined to
- fledgling hackers.
-
- heartbeat: n. 1. The signal emitted by a Level 2 Ethernet
- transceiver at the end of every packet to show that the
- collision-detection circuit is still connected. 2. A periodic
- synchronization signal used by software or hardware, such as a bus
- clock or a periodic interrupt. 3. The `natural' oscillation
- frequency of a computer's clock crystal, before frequency division
- down to the machine's clock rate. 4. A signal emitted at regular
- intervals by software to demonstrate that it is still alive.
- Sometimes hardware is designed to reboot the machine if it stops
- hearing a heartbeat. See also {breath-of-life packet}.
-
- heavy metal: [Cambridge] n. Syn. {big iron}.
-
- heavy wizardry: n. Code or designs that trade on a particularly
- intimate knowledge or experience of a particular operating system
- or language or complex application interface. Distinguished from
- {deep magic}, which trades more on arcane *theoretical*
- knowledge. Writing device drivers is heavy wizardry; so is
- interfacing to {X} (sense 2) without a toolkit. Esp. found in
- comments similar to "Heavy wizardry begins here ...". Compare
- {voodoo programming}.
-
- heavyweight: adj. High-overhead; {baroque}; code-intensive;
- featureful, but costly. Esp. used of communication protocols,
- language designs, and any sort of implementation in which maximum
- generality and/or ease of implementation has been pushed at the
- expense of mundane considerations such as speed, memory utilization,
- and startup time. {EMACS} is a heavyweight editor; {X} is an
- *extremely* heavyweight window system. This term isn't
- pejorative, but one man's heavyweight is another's {elephantine}
- and a third's {monstrosity}. Oppose `lightweight'.
-
- heisenbug: /hi:'zen-buhg/ [from Heisenberg's Uncertainty
- Principle in quantum physics] n. A bug that disappears or alters
- its behavior when one attempts to probe or isolate it. Antonym of
- {Bohr bug}; see also {mandelbug}. In C, nine out of ten heisenbugs
- result from either {fandango on core} phenomena (esp. lossage
- related to corruption of the malloc {arena}) or errors that
- {smash the stack}.
-
- Helen Keller mode: n. State of a hardware or software system that
- is deaf, dumb, and blind, i.e., accepting no input and generating no
- output, usually due to an infinite loop or some other excursion
- into {deep space}. (Unfair to the real Helen Keller, whose
- success at learning speech was triumphant.) See also
- {go flatline}, {catatonic}.
-
- hello, sailor!: interj. Occasional West Coast equivalent of
- {hello, world}; seems to have originated at SAIL, later
- associated with the game {Zork} (which also included "hello,
- aviator" and "hello, implementor"). Originally from the
- traditional hooker's greeting to a swabbie fresh off the boat, of
- course.
-
- hello, wall!: excl. See {wall}.
-
- hello, world: interj. 1. The canonical minimal test message in the
- C/UNIX universe. 2. Any of the minimal programs that emit this
- message. Traditionally, the first program a C coder is supposed to
- write in a new environment is one that just prints "hello, world"
- to standard output (and indeed it is the first example program
- in {K&R}). Environments that generate an unreasonably large
- executable for this trivial test or which require a {hairy}
- compiler-linker invocation to generate it are considered to
- {lose} (see {X}). 3. Greeting uttered by a hacker making an
- entrance or requesting information from anyone present. "Hello,
- world! Is the {VAX} back up yet?"
-
- hex: n. 1. Short for {{hexadecimal}}, base 16. 2. A 6-pack
- of anything (compare {quad}, sense 2). Neither usage has
- anything to do with {magic} or {black art}, though the pun is
- appreciated and occasionally used by hackers. True story: As a
- joke, some hackers once offered some surplus ICs for sale to be
- worn as protective amulets against hostile magic. The chips were,
- of course, hex inverters.
-
- hexadecimal:: n. Base 16. Coined in the early 1960s to replace
- earlier `sexadecimal', which was too racy and amusing for stuffy
- IBM, and later adopted by the rest of the industry.
-
- Actually, neither term is etymologically pure. If we take `binary'
- to be paradigmatic, the most etymologically correct term for
- base 10, for example, is `denary', which
- comes from `deni' (ten at a time, ten each), a Latin `distributive'
- number; the corresponding term for base-16 would be something like
- `sendenary'. `Decimal' is from an ordinal number; the
- corresponding prefix for 6 would imply something like
- `sextidecimal'. The `sexa-' prefix is Latin but incorrect in this
- context, and `hexa-' is Greek. The word `octal' is similarly
- incorrect; a correct form would be `octaval' (to go with decimal),
- or `octonary' (to go with binary). If anyone ever implements a
- base-3 computer, computer scientists will be faced with the
- unprecedented dilemma of a choice between two *correct* forms;
- both `ternary' and `trinary' have a claim to this throne.
-
- hexit: /hek'sit/ n. A hexadecimal digit (0--9, and A--F or a--f).
- Used by people who claim that there are only *ten* digits,
- dammit; sixteen-fingered human beings are rather rare, despite what
- some keyboard designs might seem to imply (see {space-cadet
- keyboard}).
-
- hidden flag: [scientific computation] n. An extra option added to a
- routine without changing the calling sequence. For example,
- instead of adding an explicit input variable to instruct a routine
- to give extra diagnostic output, the programmer might just add a
- test for some otherwise meaningless feature of the existing inputs,
- such as a negative mass. Liberal use of hidden flags can make a
- program very hard to debug and understand.
-
- high bit: [from `high-order bit'] n. 1. The most significant
- bit in a byte. 2. By extension, the most significant part of
- something other than a data byte: "Spare me the whole {saga},
- just give me the high bit." See also {meta bit}, {hobbit},
- {dread high-bit disease}, and compare the mainstream slang
- `bottom line'.
-
- high moby: /hi:' mohb'ee/ n. The high half of a 512K {PDP-10}'s
- physical address space; the other half was of course the low moby. This
- usage has been generalized in a way that has outlasted the
- {PDP-10}; for example, at the 1990 Washington D.C. Area Science
- Fiction Conclave (Disclave), when a miscommunication resulted in two
- separate wakes being held in commemoration of the shutdown of MIT's
- last {{ITS}} machines, the one on the upper floor was dubbed the
- `high moby' and the other the `low moby'. All parties involved
- {grok}ked this instantly. See {moby}.
-
- highly: [scientific computation] adv. The preferred modifier for
- overstating an understatement. As in: `highly nonoptimal', the
- worst possible way to do something; `highly nontrivial', either
- impossible or requiring a major research project; `highly
- nonlinear', completely erratic and unpredictable; `highly
- nontechnical', drivel written for {luser}s, oversimplified to the
- point of being misleading or incorrect (compare {drool-proof
- paper}). In other computing cultures, postfixing of {in the
- extreme} might be preferred.
-
- hirsute: adj. Occasionally used humorously as a synonym for {hairy}.
-
- HLL: /H-L-L/ n. [High-Level Language (as opposed to assembler)]
- Found primarily in email and news rather than speech. Rarely, the
- variants `VHLL' and `MLL' are found. VHLL stands for `Very-High-Level
- Language' and is used to describe a {bondage-and-discipline
- language} that the speaker happens to like; Prolog and Backus's FP
- are often called VHLLs. `MLL' stands for `Medium-Level Language' and is
- sometimes used half-jokingly to describe {C}, alluding to its
- `structured-assembler' image. See also {languages of choice}.
-
- hobbit: n. 1. The High Order Bit of a byte; same as the {meta
- bit} or {high bit}. 2. The non-ITS name of vad@ai.mit.edu
- (*Hobbit*), master of lasers.
-
- hog: n.,vt. 1. Favored term to describe programs or hardware that
- seem to eat far more than their share of a system's resources,
- esp. those which noticeably degrade interactive response.
- *Not* used of programs that are simply extremely large or
- complex or that are merely painfully slow themselves (see {pig,
- run like a}). More often than not encountered in qualified forms,
- e.g., `memory hog', `core hog', `hog the processor', `hog
- the disk'. "A controller that never gives up the I/O bus
- gets killed after the bus-hog timer expires." 2. Also said
- of *people* who use more than their fair share of resources
- (particularly disk, where it seems that 10% of the people use 90%
- of the disk, no matter how big the disk is or how many people use
- it). Of course, once disk hogs fill up one filesystem, they
- typically find some other new one to infect, claiming to the
- sysadmin that they have an important new project to complete.
-
- holy wars: [from {USENET}, but may predate it] n. {flame
- war}s over {religious issues}. The paper by Danny Cohen that
- popularized the terms {big-endian} and {little-endian} in
- connection with the LSB-first/MSB-first controversy was entitled
- "On Holy Wars and a Plea for Peace". Other perennial Holy
- Wars have included {EMACS} vs. {vi}, my personal computer vs.
- everyone else's personal computer, {{ITS}} vs. {{UNIX}},
- {{UNIX}} vs. {VMS}, {BSD} UNIX vs. {USG UNIX}, {C} vs.
- {{Pascal}}, {C} vs. {LISP}, etc., ad nauseam. The
- characteristic that distinguishes {holy wars} from normal
- technical disputes is that in a holy wars most of the participants
- spend their time trying to pass off personal value choices and
- cultural attachments as objective technical evaluations. See also
- {theology}.
-
- home box: n. A hacker's personal machine, especially one he or she
- owns. "Yeah? Well, *my* home box runs a full 4.2 BSD, so
- there!"
-
- hook: n. A software or hardware feature included in order to
- simplify later additions or changes by a user. For example,
- a simple program that prints numbers might always print them in
- base 10, but a more flexible version would let a variable
- determine what base to use; setting the variable to 5 would make
- the program print numbers in base 5. The variable is a simple
- hook. An even more flexible program might examine the variable
- and treat a value of 16 or less as the base to use, but treat any
- other number as the address of a user-supplied routine for printing
- a number. This is a {hairy} but powerful hook; one can then write a
- routine to print numbers as Roman numerals, say, or as Hebrew
- characters, and plug it into the program through the hook. Often
- the difference between a good program and a superb one is that the
- latter has useful hooks in judiciously chosen places. Both may do
- the original job about equally well, but the one with the hooks is
- much more flexible for future expansion of capabilities ({EMACS},
- for example, is *all* hooks). The term `user exit' is
- synonymous but much more formal and less hackish.
-
- hop: n. One file transmission in a series required to get a file
- from point A to point B on a store-and-forward network. On such
- networks (including {UUCPNET} and {FidoNet}), the important
- inter-machine metric is the number of hops in the shortest path
- between them, rather than their geographical separation. See
- {bang path}.
-
- hose: 1. vt. To make non-functional or greatly degraded in
- performance. "That big ray-tracing program really hoses the
- system." See {hosed}. 2. n. A narrow channel through which
- data flows under pressure. Generally denotes data paths that
- represent performance bottlenecks. 3. n. Cabling, especially
- thick Ethernet cable. This is sometimes called `bit hose' or
- `hosery' (play on `hosiery') or `etherhose'. See also
- {washing machine}.
-
- hosed: adj. Same as {down}. Used primarily by UNIX hackers.
- Humorous: also implies a condition thought to be relatively easy to
- reverse. Probably derived from the Canadian slang `hoser'
- popularized by the Bob and Doug Mackenzie skits on SCTV. See
- {hose}. It is also widely used of people in the mainstream sense
- of `in an extremely unfortunate situation'.
-
- Once upon a time, a Cray that had been experiencing periodic
- difficulties crashed, and it was announced to have been hosed.
- It was discovered that the crash was due to the disconnection of
- some coolant hoses. The problem was corrected, and users were then
- assured that everything was OK because the system had been rehosed.
- See also {dehose}.
-
- hot spot: n. 1. [primarily used by C/UNIX programmers, but
- spreading] It is received wisdom that in most programs, less than
- 10% of the code eats 90% of the execution time; if one were to
- graph instruction visits versus code addresses, one would typically
- see a few huge spikes amidst a lot of low-level noise. Such spikes
- are called `hot spots' and are good candidates for heavy
- optimization or {hand-hacking}. The term is especially used of
- tight loops and recursions in the code's central algorithm, as
- opposed to (say) initial set-up costs or large but infrequent I/O
- operations. See {tune}, {bum}, {hand-hacking}. 2. The
- active location of a cursor on a bit-map display. "Put the
- mouse's hot spot on the `ON' widget and click the left button."
- 3. In a massively parallel computer with shared memory, the one
- location that all 10,000 processors are trying to read or
- write at once (perhaps because they are all doing a {busy-wait}
- on the same lock).
-
- house wizard: [prob. from ad-agency lingo, `house freak'] n. A
- hacker occupying a technical-specialist, R&D, or systems position
- at a commercial shop. A really effective house wizard can have
- influence out of all proportion to his/her ostensible rank and
- still not have to wear a suit. Used esp. of UNIX wizards. The
- term `house guru' is equivalent.
-
- HP-SUX: /H-P suhks/ n. Unflattering hackerism for HP-UX,
- Hewlett-Packard's UNIX port. Features some truly unique bogosities
- in the filesystem internals and elsewhere which occasionally create
- portability problems. HP-UX is often referred to as `hockey-pux'
- inside HP, and one respondent claims that the proper pronunciation
- is /H-P ukkkhhhh/ as though one were about to spit. Another such
- alternate spelling and pronunciation is "H-PUX" /H-puhks/.
- Hackers at HP/Apollo (the former Apollo Computers which was swallowed
- by HP in 1989) have been heard to complain that Mr. Packard should
- have pushed to have his name first, if for no other reason than the
- greater eloquence of the resulting acronym. Compare {buglix}.
- See also {Telerat}, {sun-stools}, {terminak}.
-
- huff: v. To compress data using a Huffman code. Various programs
- that use such methods have been called `HUFF' or some variant
- thereof. Oppose {puff}. Compare {crunch}, {compress}.
-
- humma: // excl. A filler word used on various `chat' and
- `talk' programs when you had nothing to say but felt that it was
- important to say something. The word apparently originated (at
- least with this definition) on the MECC Timeshare System (MTS, a
- now-defunct educational time-sharing system running in Minnesota
- during the 1970s and the early 1980s) but was later sighted on
- early UNIX systems.
-
- Humor, Hacker:: n. A distinctive style of shared intellectual humor
- found among hackers, having the following distinctive
- characteristics:
-
- 1. Fascination with form-vs.-content jokes, paradoxes, and humor
- having to do with confusion of metalevels (see {meta}). One way
- to make a hacker laugh: hold a red index card in front of him/her
- with "GREEN" written on it, or vice-versa (note, however, that
- this is funny only the first time).
-
- 2. Elaborate deadpan parodies of large intellectual constructs, such
- as specifications (see {write-only memory}), standards documents,
- language descriptions (see {INTERCAL}), and even entire scientific
- theories (see {quantum bogodynamics}, {computron}).
-
- 3. Jokes that involve screwily precise reasoning from bizarre,
- ludicrous, or just grossly counter-intuitive premises.
-
- 4. Fascination with puns and wordplay.
-
- 5. A fondness for apparently mindless humor with subversive
- currents of intelligence in it --- for example, old Warner Brothers
- and Rocky & Bullwinkle cartoons, the Marx brothers, the early
- B-52s, and Monty Python's Flying Circus. Humor that combines this
- trait with elements of high camp and slapstick is especially
- favored.
-
- 6. References to the symbol-object antinomies and associated ideas
- in Zen Buddhism and (less often) Taoism. See {has the X nature},
- {Discordianism}, {zen}, {ha ha only serious}, {AI koans}.
-
- See also {filk}, {retrocomputing}, and appendix B. If you have an
- itchy feeling that all 6 of these traits are really aspects of
- one thing that is incredibly difficult to talk about exactly, you
- are (a) correct and (b) responding like a hacker. These traits are
- also recognizable (though in a less marked form) throughout
- {{science-fiction fandom}}.
-
- hung: [from `hung up'] adj. Equivalent to {wedged}, but more
- common at UNIX/C sites. Not generally used of people. Syn. with
- {locked up}, {wedged}; compare {hosed}. See also {hang}.
- A hung state is distinguished from {crash}ed or {down}, where the
- program or system is also unusable but because it is not running
- rather than because it is waiting for something. However, the
- recovery from both situations is often the same.
-
- hungry puppy: n. Syn. {slopsucker}.
-
- hungus: /huhng'g*s/ [perhaps related to slang `humongous'] adj.
- Large, unwieldy, usually unmanageable. "TCP is a hungus piece of
- code." "This is a hungus set of modifications."
-
- hyperspace: /hi:'per-spays/ n. A memory location that is *far*
- away from where the program counter should be pointing, often
- inaccessible because it is not even mapped in. "Another core
- dump --- looks like the program jumped off to hyperspace
- somehow." (Compare {jump off into never-never land}.) This
- usage is from the SF notion of a spaceship jumping `into
- hyperspace', that is, taking a shortcut through higher-dimensional
- space --- in other words, bypassing this universe. The variant
- `east hyperspace' is recorded among CMU and Bliss hackers.
-
- = I =
-
- I didn't change anything!: interj. An aggrieved cry often heard as
- bugs manifest during a regression test. The {canonical} reply to
- this assertion is "Then it works just the same as it did before,
- doesn't it?" See also {one-line fix}. This is also heard from
- applications programmers trying to blame an obvious applications
- problem on an unrelated systems software change, for example a
- divide-by-0 fault after terminals were added to a network.
- Usually, their statement is found to be false. Upon close
- questioning, they will admit some major restructuring of the
- program that shouldn't have broken anything, in their opinion,
- but which actually {hosed} the code completely.
-
- I see no X here.: Hackers (and the interactive computer games they
- write) traditionally favor this slightly marked usage over other
- possible equivalents such as "There's no X here!" or "X is
- missing." or "Where's the X?". This goes back to the original
- PDP-10 {ADVENT}, which would respond in this wise if you asked
- it to do something involving an object not present at your location
- in the game.
-
- i14y: // n. Abbrev. for `interoperability', with the `14'
- replacing fourteen letters. Used in the {X} (windows)
- community. Refers to portability and compatibility of data formats
- (even binary ones) between different programs or implementations of
- the same program on different machines.
-
- i18n: // n. Abbrev. for `internationali{z,s}ation', with the 18
- replacing 18 letters. Used in the {X} (windows) community.
-
- IBM: /I-B-M/ Inferior But Marketable; It's Better Manually;
- Insidious Black Magic; It's Been Malfunctioning; Incontinent Bowel
- Movement; and a near-{infinite} number of even less complimentary
- expansions, including `International Business Machines'. See
- {TLA}. These abbreviations illustrate the considerable
- antipathy most hackers have long felt toward the `industry leader'
- (see {fear and loathing}).
-
- What galls hackers about most IBM machines above the PC level isn't
- so much that they are underpowered and overpriced (though that does
- count against them), but that the designs are incredibly archaic,
- {crufty}, and {elephantine} ... and you can't *fix* them
- --- source code is locked up tight, and programming tools are
- expensive, hard to find, and bletcherous to use once you've found
- them. With the release of the UNIX-based RIOS family this may have
- begun to change --- but then, we thought that when the PC-RT came
- out, too.
-
- In the spirit of universal peace and brotherhood, this lexicon now
- includes a number of entries attributed to `IBM'; these derive from some
- rampantly unofficial jargon lists circulated within IBM's own
- beleaguered hacker underground.
-
- IBM discount: n. A price increase. Outside IBM, this derives from
- the common perception that IBM products are generally overpriced
- (see {clone}); inside, it is said to spring from a belief that
- large numbers of IBM employees living in an area cause prices to
- rise.
-
- ice: [coined by USENETter Tom Maddox, popularized by William
- Gibson's cyberpunk SF novels: acronym for `Intrusion
- Countermeasure Electronics'] Security software (in Gibson's novels,
- software that responds to intrusion by attempting to literally kill
- the intruder). Also, `icebreaker': a program designed for
- cracking security on a system. Neither term is in serious use yet
- as of mid-1991, but many hackers find the metaphor attractive, and
- each may develop a denotation in the future.
-
- ifdef out: /if'def owt/ v. Syn. for {condition out}, specific
- to {C}.
-
- ill-behaved: adj. 1. [numerical analysis] Said of an algorithm or
- computational method that tends to blow up because of accumulated
- roundoff error or poor convergence properties. 2. Software that
- bypasses the defined {OS} interfaces to do things (like screen,
- keyboard, and disk I/O) itself, often in a way that depends on the
- hardware of the machine it is running on or which is nonportable or
- incompatible with other pieces of software. In the IBM PC/MS-DOS
- world, there is a folk theorem (nearly true) to the effect that
- (owing to gross inadequacies and performance penalties in the OS
- interface) all interesting applications are ill-behaved. See also
- {bare metal}. Oppose {well-behaved}, compare {PC-ism}. See
- {mess-dos}.
-
- IMHO: // [from SF fandom via USENET; acronym for `In My Humble
- Opinion'] "IMHO, mixed-case C names should be avoided, as
- mistyping something in the wrong case can cause hard-to-detect
- errors --- and they look too Pascalish anyhow." Also seen in
- variant forms such as IMNSHO (In My Not-So-Humble Opinion) and IMAO
- (In My Arrogant Opinion).
-
- in the extreme: adj. A preferred superlative suffix for many hackish
- terms. See, for example, `obscure in the extreme' under {obscure},
- and compare {highly}.
-
- incantation: n. Any particularly arbitrary or obscure command that
- one must mutter at a system to attain a desired result. Not used
- of passwords or other explicit security features. Especially used
- of tricks that are so poorly documented they must be learned from a
- {wizard}. "This compiler normally locates initialized data
- in the data segment, but if you {mutter} the right incantation they
- will be forced into text space."
-
- include: vt. [USENET] 1. To duplicate a portion (or whole) of
- another's message (typically with attribution to the source) in a
- reply or followup, for clarifying the context of one's response.
- See the the discussion of inclusion styles under "Hacker
- Writing Style". 2. [from {C}] `#include <disclaimer.h>'
- has appeared in {sig block}s to refer to a notional `standard
- disclaimer file'.
-
- include war: n. Excessive multi-leveled including within a
- discussion {thread}, a practice that tends to annoy readers. In
- a forum with high-traffic newsgroups, such as USENET, this can lead
- to {flame}s and the urge to start a {kill file}.
-
- indent style: [C programmers] n. The rules one uses to indent code
- in a readable fashion; a subject of {holy wars}. There are four
- major C indent styles, described below; all have the aim of
- making it easier for the reader to visually track the scope of
- control constructs. The significant variable is the placement of
- `{' and `}' with respect to the statement(s) they
- enclose and the guard or controlling statement (`if',
- `else', `for', `while', or `do') on the block,
- if any.
-
- `K&R style' --- Named after Kernighan & Ritchie, because the
- examples in {K&R} are formatted this way. Also called `kernel
- style' because the UNIX kernel is written in it, and the `One True
- Brace Style' (abbrev. 1TBS) by its partisans. The basic indent
- shown here is eight spaces (or one tab) per level; four or are
- occasionally seen, but are much less common.
-
- if (cond) {
- <body>
- }
-
- `Allman style' --- Named for Eric Allman, a Berkeley hacker who
- wrote a lot of the BSD utilities in it (it is sometimes called
- `BSD style'). Resembles normal indent style in Pascal and Algol.
- Basic indent per level shown here is eight spaces, but four is just
- as common (esp. in C++ code).
-
- if (cond)
- {
- <body>
- }
-
- `Whitesmiths style' --- popularized by the examples that came
- with Whitesmiths C, an early commercial C compiler. Basic indent
- per level shown here is eight spaces, but four is occasionally seen.
-
- if (cond)
- {
- <body>
- }
-
- `GNU style' --- Used throughout GNU EMACS and the Free Software
- Foundation code, and just about nowhere else. Indents are always
- four spaces per level, with `{' and `}' halfway between the
- outer and inner indent levels.
-
- if (cond)
- {
- <body>
- }
-
- Surveys have shown the Allman and Whitesmiths styles to be the most
- common, with about equal mind shares. K&R/1TBS used to be nearly
- universal, but is now much less common (the opening brace tends to
- get lost against the right paren of the guard part in an `if'
- or `while', which is a {Bad Thing}). Defenders of 1TBS
- argue that any putative gain in readability is less important than
- their style's relative economy with vertical space, which enables
- one to see more code on one's screen at once. Doubtless these
- issues will continue to be the subject of {holy wars}.
-
- index: n. See {coefficient}.
-
- infant mortality: n. It is common lore among hackers that the
- chances of sudden hardware failure drop off exponentially with a
- machine's time since power-up (that is, until the relatively
- distant time at which enough mechanical wear in I/O devices and
- thermal-cycling stress in components has accumulated for the
- machine to start going senile). Up to half of all chip and wire
- failures happen within a new system's first few weeks; such
- failures are often referred to as `infant mortality' problems
- (or, occasionally, as `sudden infant death syndrome'). See
- {bathtub curve}, {burn-in period}.
-
- infinite: adj. Consisting of a large number of objects; extreme.
- Used very loosely as in: "This program produces infinite
- garbage." "He is an infinite loser." The word most likely to
- follow `infinite', though, is {hair} (it has been pointed out
- that fractals are an excellent example of infinite hair). These
- uses are abuses of the word's mathematical meaning. The term
- `semi-infinite', denoting an immoderately large amount of some
- resource, is also heard. "This compiler is taking a semi-infinite
- amount of time to optimize my program." See also {semi}.
-
- infinite loop: n. One that never terminates (that is, the machine
- {spin}s or {buzz}es forever; the usual symptom is
- {catatonia}). There is a standard joke that has been made about
- each generation's exemplar of the ultra-fast machine: "The Cray-3
- is so fast it can execute an infinite loop in under 2 seconds!"
-
- infinity: n. 1. The largest value that can be represented in a
- particular type of variable (register, memory location, data type,
- whatever). 2. `minus infinity': The smallest such value, not
- necessarily or even usually the simple negation of plus infinity.
- In N-bit twos-complement arithmetic, infinity is
- 2^{N-1} - 1 but minus infinity is - (2^{N-1}),
- not -(2^{N-1} - 1). Note also that this is different from
- "time T equals minus infinity", which is closer to a
- mathematician's usage of infinity.
-
- insanely great: adj. [Mac community, from Steve Jobs; also BSD UNIX
- people via Bill Joy] Something so incredibly {elegant} that it is
- imaginable only to someone possessing the most puissant of
- {hacker}-natures.
-
- INTERCAL: /in't*r-kal/ [said by the authors to stand for
- `Compiler Language With No Pronounceable Acronym'] n. A
- computer language designed by Don Woods and James Lyon in 1972.
- INTERCAL is purposely different from all other computer
- languages in all ways but one; it is purely a written language,
- being totally unspeakable. An excerpt from the INTERCAL Reference
- Manual will make the style of the language clear:
-
- It is a well-known and oft-demonstrated fact that a person whose
- work is incomprehensible is held in high esteem. For example, if
- one were to state that the simplest way to store a value of 65536
- in a 32-bit INTERCAL variable is:
-
- DO :1 <- #0$#256
-
- any sensible programmer would say that that was absurd. Since this
- is indeed the simplest method, the programmer would be made to look
- foolish in front of his boss, who would of course have happened to
- turn up, as bosses are wont to do. The effect would be no less
- devastating for the programmer having been correct.
-
- INTERCAL has many other peculiar features designed to make it even
- more unspeakable. The Woods-Lyons implementation was actually used
- by many (well, at least several) people at Princeton. The language
- has been recently reimplemented as C-INTERCAL and is consequently
- enjoying an unprecedented level of unpopularity; there is even an
- alt.lang.intercal newsgroup devoted to the study and ...
- appreciation of the language on USENET.
-
- interesting: adj. In hacker parlance, this word has strong
- connotations of `annoying', or `difficult', or both. Hackers
- relish a challenge, and enjoy wringing all the irony possible out
- of the ancient Chinese curse "May you live in interesting times".
- Oppose {trivial}, {uninteresting}.
-
- Internet address:: n. 1. [techspeak] An absolute network address of
- the form foo@bar.baz, where foo is a user name, bar is a
- {sitename}, and baz is a `domain' name, possibly including
- periods itself. Contrast with {bang path}; see also {network,
- the} and {network address}. All Internet machines and most UUCP
- sites can now resolve these addresses, thanks to a large amount of
- behind-the-scenes magic and PD software written since 1980 or so.
- See also {bang path}, {domainist}. 2. More loosely, any
- network address reachable through Internet; this includes {bang
- path} addresses and some internal corporate and government
- networks.
-
- Reading Internet addresses is something of an art. Here are the
- four most important top-level functional Internet domains followed
- by a selection of geographical domains:
-
- com
- commercial organizations
- edu
- educational institutions
- gov
- U.S. government civilian sites
- mil
- U.S. military sites
-
- Note that most of the sites in the com and edu domains are in
- the U.S. or Canada.
-
- us
- sites in the U.S. outside the functional domains
- su
- sites in the Soviet Union (see {kremvax}).
- uk
- sites in the United Kingdom
-
- Within the us domain, there are subdomains for the fifty
- states, each generally with a name identical to the state's postal
- abbreviation. Within the uk domain, there is an ac subdomain for
- academic sites and a co domain for commercial ones. Other
- top-level domains may be divided up in similar ways.
-
- interrupt: 1. [techspeak] n. On a computer, an event that
- interrupts normal processing and temporarily diverts
- flow-of-control through an "interrupt handler" routine. See also
- {trap}. 2. interj. A request for attention from a hacker.
- Often explicitly spoken. "Interrupt --- have you seen Joe
- recently?" See {priority interrupt}. 3. Under MS-DOS, the
- term `interrupt' is nearly synonymous with `system call', because
- the OS and BIOS routines are both called using the INT instruction
- (see {{interrupt list, the}}) and because programmers so often have
- to bypass the OS (going directly to a BIOS interrupt) to get
- reasonable performance.
-
- interrupt list, the:: [MS-DOS] n. The list of all known software
- interrupt calls (both documented and undocumented) for IBM PCs and
- compatibles, maintained and made available for free redistribution
- by Ralf Brown (ralf@cs.cmu.edu). As of early 1991, it had grown to
- approximately a megabyte in length.
-
- interrupts locked out: When someone is ignoring you. In a
- restaurant, after several fruitless attempts to get the waitress's
- attention, a hacker might well observe "She must have interrupts
- locked out". The synonym `interrupts disabled' is also common.
- Variations of this abound; "to have one's interrupt mask bit set"
- or "interrupts masked out" is also heard. See also {spl}.
-
- iron: n. Hardware, especially older and larger hardware of
- {mainframe} class with big metal cabinets housing relatively
- low-density electronics (but the term is also used of modern
- supercomputers). Often in the phrase {big iron}. Oppose
- {silicon}. See also {dinosaur}.
-
- Iron Age: n. In the history of computing, 1961--1971 --- the
- formative era of commercial {mainframe} technology, when {big
- iron} {dinosaur}s ruled the earth. These began with the delivery
- of the first PDP-1, coincided with the dominance of ferrite
- {core}, and ended with the introduction of the first commercial
- microprocessor (the Intel 4004) in 1971. See also {Stone Age};
- compare {elder days}.
-
- iron box: [UNIX/Internet] n. A special environment set up to trap
- a {cracker} logging in over remote connections long enough to be
- traced. May include a modified {shell} restricting the hacker's
- movements in unobvious ways, and `bait' files designed to keep him
- interested and logged on. See also {back door}, {firewall
- machine}, {Venus flytrap}, and Clifford Stoll's account in
- `The Cuckoo's Egg' of how he made and used one (see
- the Bibliography). Compare {padded cell}.
-
- ironmonger: [IBM] n. Derogatory. A hardware specialist. Compare
- {sandbender}, {polygon pusher}.
-
- ITS:: /I-T-S/ n. 1. Incompatible Time-sharing System, an
- influential but highly idiosyncratic operating system written for
- PDP-6s and PDP-10s at MIT and long used at the MIT AI Lab. Much
- AI-hacker jargon derives from ITS folklore, and to have been `an
- ITS hacker' qualifies one instantly as an old-timer of the most
- venerable sort. ITS pioneered many important innovations,
- including transparent file sharing between machines and
- terminal-independent I/O. After about 1982, most actual work was
- shifted to newer machines, with the remaining ITS boxes run
- essentially as a hobby and service to the hacker community. The
- shutdown of the lab's last ITS machine in May 1990 marked the end
- of an era and sent old-time hackers into mourning nationwide (see
- {high moby}). The Royal Institute of Technology in Sweden is
- maintaining one `live' ITS site at its computer museum (right next
- to the only TOPS-10 system still on the Internet), so ITS is still
- alleged to hold the record for OS in longest continuous use
- (however, {{WAITS}} is a credible rival for this palm). See
- appendix A. 2. A mythical image of operating-system perfection
- worshiped by a bizarre, fervent retro-cult of old-time hackers and
- ex-users (see {troglodyte}, sense 2). ITS worshipers manage
- somehow to continue believing that an OS maintained by
- assembly-language hand-hacking that supported only monocase
- 6-character filenames in one directory per account remains superior
- to today's state of commercial art (their venom against UNIX is
- particularly intense). See also {holy wars},
- {Weenix}.
-
- IWBNI: // [acronym] `It Would Be Nice If'. Compare {WIBNI}.
-
- IYFEG: // [USENET] Abbreviation for `Insert Your Favorite Ethnic
- Group'. Used as a meta-name when telling racist jokes on the net to
- avoid offending anyone. See {JEDR}.
-
- = J =
-
- J. Random: /J rand'm/ n. [generalized from {J. Random Hacker}]
- Arbitrary; ordinary; any one; any old. `J. Random' is often
- prefixed to a noun to make a name out of it. It means roughly
- `some particular' or `any specific one'. "Would you let
- J. Random Loser marry your daughter?" The most common uses are
- `J. Random Hacker', `J. Random Loser', and `J. Random Nerd'
- ("Should J. Random Loser be allowed to {gun} down other
- people?"), but it can be used simply as an elaborate version of
- {random} in any sense.
-
- J. Random Hacker: [MIT] /J rand'm hak'r/ n. A mythical figure
- like the Unknown Soldier; the archetypal hacker nerd. See
- {random}, {Suzie COBOL}. This may originally have been
- inspired or influenced by `J. Fred Muggs', a show-biz chimpanzee
- whose name was a household word back in the early days of {TMRC}.
-
- jaggies: /jag'eez/ n. The `stairstep' effect observable when an
- edge (esp. a linear edge of very shallow or steep slope) is
- rendered on a pixel device (as opposed to a vector display).
-
- JCL: /J-C-L/ n. 1. IBM's supremely {rude} Job Control
- Language. JCL is the script language used to control the execution
- of programs in IBM's batch systems. JCL has a very {fascist}
- syntax, and some versions will, for example, {barf} if two
- spaces appear where it expects one. Most programmers confronted
- with JCL simply copy a working file (or card deck), changing the
- file names. Someone who actually understands and generates unique
- JCL is regarded with the mixed respect one gives to someone who
- memorizes the phone book. It is reported that hackers at IBM
- itself sometimes sing "Who's the breeder of the crud that mangles
- you and me? I-B-M, J-C-L, M-o-u-s-e" to the tune of the
- "Mickey Mouse Club" theme to express their opinion of the
- beast. 2. A comparative for any very {rude} software that a
- hacker is expected to use. "That's as bad as JCL." As with
- {COBOL}, JCL is often used as an archetype of ugliness even by
- those who haven't experienced it. See also {IBM}, {fear and
- loathing}.
-
- JEDR: // n. Synonymous with {IYFEG}. At one time, people in
- the USENET newsgroup rec.humor.funny tended to use `JEDR'
- instead of {IYFEG} or `<ethnic>'; this stemmed from a public
- attempt to suppress the group once made by a loser with initials
- JEDR after he was offended by an ethnic joke posted there. (The
- practice was {retcon}ned by the expanding these initials as
- `Joke Ethnic/Denomination/Race'.) After much sound and fury JEDR
- faded away; this term appears to be doing likewise. JEDR's only
- permanent effect on the net.culture was to discredit
- `sensitivity' arguments for censorship so thoroughly that more
- recent attempts to raise them have met with immediate and
- near-universal rejection.
-
- JFCL: /jif'kl/, /jaf'kl/, /j*-fi'kl/ vt., obs. (alt.
- `jfcl') To cancel or annul something. "Why don't you jfcl that
- out?" The fastest do-nothing instruction on older models of the
- PDP-10 happened to be JFCL, which stands for "Jump if Flag set and
- then CLear the flag"; this does something useful, but is a very
- fast no-operation if no flag is specified. Geoff Goodfellow, one
- of the jargon-1 co-authors, has long had JFCL on the license plate
- of his BMW. Usage: rare except among old-time PDP-10 hackers.
-
- jiffy: n. 1. The duration of one tick of the system clock on the
- computer (see {tick}). Often one AC cycle time (1/60 second in
- the U.S. and Canada, 1/50 most other places), but more recently
- 1/100 sec has become common. "The swapper runs every 6 jiffies" means
- that the virtual memory management routine is executed once for
- every 6 ticks of the clock, or about ten times a second.
- 2. Confusingly, the term is sometimes also used for a 1-millisecond
- {wall time} interval. 3. Indeterminate time from a few seconds
- to forever. "I'll do it in a jiffy" means certainly not now and
- possibly never. This is a bit contrary to the more widespread use
- of the word. Oppose {nano}. See also {Real Soon Now}.
-
- job security: n. When some piece of code is written in a
- particularly {obscure} fashion, and no good reason (such as time
- or space optimization) can be discovered, it is often said that the
- programmer was attempting to increase his job security (i.e., by
- making himself indispensable for maintenance). This sour joke
- seldom has to be said in full; if two hackers are looking over some
- code together and one points at a section and says "job security",
- the other one may just nod.
-
- jock: n. 1. A programmer who is characterized by large and somewhat
- brute-force programs. See {brute force}. 2. When modified by
- another noun, describes a specialist in some particular computing
- area. The compounds `compiler jock' and `systems jock' seem to be
- the best-established examples of this.
-
- joe code: /joh' kohd`/ n. 1. Code that is overly {tense} and
- unmaintainable. "{Perl} may be a handy program, but if you look
- at the source, it's complete joe code." 2. Badly written,
- possibly buggy code.
-
- Correspondents wishing to remain anonymous have fingered a
- particular Joe at the Lawrence Berkeley Laboratory and observed
- that usage has drifted slightly; the original sobriquet `Joe code'
- was intended in sense 1.
-
- JR[LN]: /J-R-L/, /J-R-N/ n. The names JRL and JRN
- were sometimes used as example names when discussing a kind of user
- ID used under {{TOPS-10}}; they were understood to be the initials
- of (fictitious) programmers named `J. Random Loser' and `J. Random
- Nerd' (see {J. Random}). For example, if one said "To log
- in, type log one comma jay are en" (that is, "log 1,JRN"), the
- listener would have understood that he should use his own computer
- ID in place of `JRN'.
-
- JRST: /jerst/ [based on the PDP-10 jump instruction] v.,obs. To
- suddenly change subjects, with no intention of returning to the
- previous topic. Usage: rather rare except among PDP-10 diehards, and
- considered silly. See also {AOS}.
-
- juggling eggs: vi. Keeping a lot of {state} in your head while
- modifying a program. "Don't bother me now, I'm juggling eggs",
- means that an interrupt is likely to result in the program's being
- scrambled. In the classic first-contact SF novel `The Mote in
- God's Eye', by Larry Niven and Jerry Pournelle, an alien describes a
- very difficult task by saying "We juggle priceless eggs in
- variable gravity." That is a very hackish use of language. See
- also {hack mode}.
-
- jump off into never-never land: [from J. M. Barrie's `Peter
- Pan'] v. Same as {branch to Fishkill}, but more common in
- technical cultures associated with non-IBM computers that use the
- term `jump' rather than `branch'. Compare {hyperspace}.
-
- = K =
-
- K: /K/ [from {kilo-}] n. A kilobyte. This is used both as a
- spoken word and a written suffix (like {meg} and {gig} for
- megabyte and gigabyte). See {{quantifiers}}.
-
- K&R: [Kernighan and Ritchie] n. Brian Kernighan and Dennis Ritchie's
- book `The C Programming Language', esp. the classic and influential
- first edition (Prentice-Hall 1978; ISBN 0-113-110163-3). Syn.
- {White Book}, {Old Testament}. See also {New Testament}.
-
- kahuna: /k*-hoo'nuh/ [IBM: from the Hawaiian title for a shaman] n.
- Synonym for {wizard}, {guru}.
-
- kamikaze packet: n. The `official' jargon for what is more commonly
- called a {Christmas tree packet}. RFC-1025, `TCP and IP Bake Off'
- says:
-
- 10 points for correctly being able to process a "Kamikaze"
- packet (AKA nastygram, christmas tree packet, lamp test
- segment, et al.). That is, correctly handle a segment with the
- maximum combination of features at once (e.g., a SYN URG PUSH
- FIN segment with options and data).
-
- See also {Chernobyl packet}.
-
- kangaroo code: n. Syn. {spaghetti code}.
-
- ken: /ken/ n. 1. [UNIX] Ken Thompson, principal inventor of
- UNIX. In the early days he used to hand-cut distribution tapes,
- often with a note that read "Love, ken". Old-timers still use
- his first name (sometimes uncapitalized, because it's a login name
- and mail address) in third-person reference; it is widely
- understood (on USENET, in particular) that without a last name
- `Ken' refers only to Ken Thompson. Similarly, Dennis without last
- name means Dennis Ritchie (and he is often known as dmr). See
- also {demigod}, {{UNIX}}. 2. A flaming user. This was
- originated by the Software Support group at Symbolics because the
- two greatest flamers in the user community were both named Ken.
-
- kgbvax: /K-G-B'vaks/ n. See {kremvax}.
-
- kill file: [USENET] n. (alt. `KILL file') Per-user file(s) used
- by some {USENET} reading programs (originally Larry Wall's
- `rn(1)') to discard summarily (without presenting for reading)
- articles matching some particularly uninteresting (or unwanted)
- patterns of subject, author, or other header lines. Thus to add
- a person (or subject) to one's kill file is to arrange for that
- person to be ignored by one's newsreader in future. By extension,
- it may be used for a decision to ignore the person or subject in
- other media. See also {plonk}.
-
- killer micro: [popularized by Eugene Brooks] n. A
- microprocessor-based machine that infringes on mini, mainframe, or
- supercomputer performance turf. Often heard in "No one will
- survive the attack of the killer micros!", the battle cry of the
- downsizers. Used esp. of RISC architectures.
-
- The popularity of the phrase `attack of the killer micros' is
- doubtless reinforced by the movie title "Attack Of The Killer
- Tomatoes" (one of the {canonical} examples of
- so-bad-it's-wonderful among hackers). This has even more flavor
- now that killer micros have gone on the offensive not just
- individually (in workstations) but in hordes (within massively
- parallel computers).
-
- killer poke: n. A recipe for inducing hardware damage on a machine
- via insertion of invalid values (see {poke}) in a memory-mapped
- control register; used esp. of various fairly well-known tricks
- on {bitty box}es without hardware memory management (such as the
- IBM PC and Commodore PET) that can overload and trash analog
- electronics in the monitor. See also {HCF}.
-
- kilo-: [SI] pref. See {{quantifiers}}.
-
- KIPS: /kips/ [acronym, by analogy with {MIPS} using {K}] n.
- Thousands (*not* 1024s) of Instructions Per Second. Usage:
- rare.
-
- KISS Principle: /kis' prin'si-pl/ n. "Keep It Simple, Stupid".
- A maxim often invoked when discussing design to fend off
- {creeping featurism} and control development complexity.
- Possibly related to the {marketroid} maxim on sales
- presentations, "Keep It Short and Simple".
-
- kit: [USENET] n. A source software distribution that has been
- packaged in such a way that it can (theoretically) be unpacked and
- installed according to a series of steps using only standard UNIX
- tools, and entirely documented by some reasonable chain of
- references from the top-level {README file}. The more general
- term {distribution} may imply that special tools or more
- stringent conditions on the host environment are required.
-
- klone: /klohn/ n. See {clone}, sense 4.
-
- kludge: /kluhj/ n. Common (but incorrect) variant of {kluge}, q.v.
-
- kluge: /klooj/ [from the German `klug', clever] 1. n. A Rube
- Goldberg (or Heath Robinson) device, whether in hardware or
- software. (A long-ago `Datamation' article by Jackson Granholme
- said: "An ill-assorted collection of poorly matching parts,
- forming a distressing whole.") 2. n. A clever programming trick
- intended to solve a particular nasty case in an expedient, if not
- clear, manner. Often used to repair bugs. Often involves
- {ad-hockery} and verges on being a {crock}. In fact, the
- TMRC Dictionary defined `kludge' as "a crock that works". 3. n.
- Something that works for the wrong reason. 4. vt. To insert a
- kluge into a program. "I've kluged this routine to get around
- that weird bug, but there's probably a better way." 5. [WPI] n. A
- feature that is implemented in a {rude} manner.
-
- Nowadays this term is often encountered in the variant spelling
- `kludge'. Reports from {old fart}s are consistent that `kluge'
- was the original spelling, and that `kludge' arose by mutation
- sometime in the early 1970s. Some people who encountered the word
- first in print or on-line jumped to the reasonable but incorrect
- conclusion that the word should be pronounced /kluhj/ (rhyming
- with `sludge'). The result of this tangled history is a mess; in
- 1991, many (perhaps even most) hackers pronounce the word correctly
- as /klooj/ but spell it incorrectly as `kludge' (compare the
- pronunciation drift of {mung}). Some observers consider this
- appropriate in view of its meaning.
-
- kluge around: vt. To avoid a bug or difficult condition by
- inserting a {kluge}. Compare {workaround}.
-
- kluge up: vt. To lash together a quick hack to perform a task; this
- is milder than {cruft together} and has some of the connotations
- of {hack up} (note, however, that the construction `kluge on'
- corresponding to {hack on} is never used). "I've kluged up this
- routine to dump the buffer contents to a safe place."
-
- Knights of the Lambda Calculus: n. A semi-mythical organization of
- wizardly LISP and Scheme hackers. The name refers to a
- mathematical formalism invented by Alonzo Church, with which LISP is
- intimately connected. There is no enrollment list and the criteria
- for induction are unclear, but one well-known LISPer has been known
- to give out buttons and, in general, the *members* know who
- they are....
-
- Knuth: [Donald E. Knuth's `The Art of Computer Programming']
- n. Mythically, the reference that answers all questions about data
- structures or algorithms. A safe answer when you do not know:
- "I think you can find that in Knuth." Contrast {literature,
- the}. See also {bible}.
-
- kremvax: /krem-vaks/ [from the then large number of {USENET}
- {VAXen} with names of the form foovax] n. Originally, a
- fictitious USENET site at the Kremlin, announced on April 1, 1984
- in a posting ostensibly originated there by Soviet leader
- Konstantin Chernenko. The posting was actually forged by Piet
- Beertema as an April Fool's joke. Other fictitious sites mentioned in the
- hoax were moskvax and {kgbvax}, which now seems to be the one by
- which it is remembered. This was probably the funniest of the many
- April Fool's forgeries perpetrated on USENET (which has negligible
- security against them), because the notion that USENET might ever
- penetrate the Iron Curtain seemed so totally absurd at the time.
-
- In fact, it was only six years later that the first genuine site in
- Moscow, demos.su, joined USENET. Some readers needed
- convincing that the postings from it weren't just another prank.
- Vadim Antonov (avg@hq.demos.su), the major poster from there
- up to at least the end of 1990, was quite aware of all this,
- referred to it frequently in his own postings, and at one point
- twitted some credulous readers by blandly asserting that he
- *was* a hoax!
-
- Eventually he even arranged to have the domain's gateway site
- *named* kremvax, thus neatly turning fiction into truth
- and demonstrating that the hackish sense of humor transcends
- cultural barriers. [Mr. Antonov also contributed the
- Russian-language material for this lexicon. --- ESR]
-
- = L =
-
- lace card: n. obs. A {{punched card}} with all holes punched (also
- called a `whoopee card'). Card readers jammed when they got to
- one of these, as the resulting card had too little structural
- strength to avoid buckling inside the mechanism. Card punches
- could also jam trying to produce these things owing to power-supply
- problems. When some practical joker fed a lace card through the
- reader, you needed to clear the jam with a `card knife' ---
- which you used on the joker first.
-
- language lawyer: n. A person, usually an experienced or senior
- software engineer, who is intimately familiar with many or most of
- the numerous restrictions and features (both useful and esoteric)
- applicable to one or more computer programming languages. A
- language lawyer is distinguished by the ability to show you the
- five sentences scattered through a 200-plus-page manual that
- together imply the answer to your question "if only you had
- thought to look there". Compare {wizard}, {legal},
- {legalese}.
-
- languages of choice: n. {C} and {LISP}. Nearly every hacker
- knows one of these, and most good ones are fluent in both. Smalltalk
- and Prolog are also popular in small but influential communities.
-
- There is also a rapidly dwindling category of older hackers with
- FORTRAN, or even assembler, as their language of choice. They
- often prefer to be known as {real programmer}s, and other hackers
- consider them a bit odd (see "The Story of Mel, a Real Programmer"
- in appendix A). Assembler is generally no longer considered
- interesting or appropriate for anything but {HLL} implementation,
- {glue}, and a few time-critical and hardware-specific uses in systems
- programs. FORTRAN occupies a shrinking niche in scientific
- programming.
-
- Most hackers tend to frown on languages like {{Pascal}} and
- {{Ada}}, which don't give them the near-total freedom considered
- necessary for hacking (see {bondage-and-discipline language}), and
- to regard everything that's even remotely connected with {COBOL}
- or other traditional {card walloper} languages as a total
- and unmitigated {loss}.
-
- larval stage: n. Describes a period of monomaniacal concentration
- on coding apparently passed through by all fledgling hackers.
- Common symptoms include the perpetration of more than one 36-hour
- {hacking run} in a given week; neglect of all other activities
- including usual basics like food, sleep, and personal hygiene; and
- a chronic case of advanced bleary-eye. Can last from 6 months to 2
- years, the apparent median being around 18 months. A few so
- afflicted never resume a more `normal' life, but the ordeal
- seems to be necessary to produce really wizardly (as opposed to
- merely competent) programmers. See also {wannabee}. A less
- protracted and intense version of larval stage (typically lasting
- about a month) may recur when one is learning a new {OS} or
- programming language.
-
- lase: /layz/ vt. To print a given document via a laser printer.
- "OK, let's lase that sucker and see if all those graphics-macro
- calls did the right things."
-
- laser chicken: n. Kung Pao Chicken, a standard Chinese dish
- containing chicken, peanuts, and hot red peppers in a spicy
- pepper-oil sauce. Many hackers call it `laser chicken' for
- two reasons: It can {zap} you just like a laser, and the
- sauce has a red color reminiscent of some laser beams.
-
- In a variation on this theme, it is reported that some Australian
- hackers have redesignated the common dish `lemon chicken' as
- `Chernobyl Chicken'. The name is derived from the color of the
- sauce, which is considered bright enough to glow in the dark (as,
- mythically, do some of the inhabitants of Chernobyl).
-
- laundromat: n. Syn. {disk farm}; see {washing machine}.
-
- LDB: /l*'d*b/ [from the PDP-10 instruction set] vt. To extract
- from the middle. "LDB me a slice of cake, please." This usage
- has been kept alive by Common LISP's function of the same name.
- Considered silly. See also {DPB}.
-
- leaf site: n. A machine that merely originates and reads USENET
- news or mail, and does not relay any third-party traffic. Often
- uttered in a critical tone; when the ratio of leaf sites to
- backbone, rib, and other relay sites gets too high, the network
- tends to develop bottlenecks. Compare {backbone site}, {rib
- site}.
-
- leak: n. With qualifier, one of a class of resource-management bugs
- that occur when resources are not freed properly after operations
- on them are finished, so they effectively disappear (leak out).
- This leads to eventual exhaustion as new allocation requests come
- in. {memory leak} and {fd leak} have their own entries; one
- might also refer, to, say, a `window handle leak' in a window
- system.
-
- leaky heap: [Cambridge] n. An {arena} with a {memory leak}.
-
- legal: adj. Loosely used to mean `in accordance with all the
- relevant rules', esp. in connection with some set of constraints
- defined by software. "The older =+ alternate for += is no longer
- legal syntax in ANSI C." "This parser processes each line of
- legal input the moment it sees the trailing linefeed." Hackers
- often model their work as a sort of game played with the
- environment in which the objective is to maneuver through the
- thicket of `natural laws' to achieve a desired objective. Their
- use of `legal' is flavored as much by this game-playing sense as by
- the more conventional one having to do with courts and lawyers.
- Compare {language lawyer}, {legalese}.
-
- legalese: n. Dense, pedantic verbiage in a language description,
- product specification, or interface standard; text that seems
- designed to obfuscate and requires a {language lawyer} to
- {parse} it. Though hackers are not afraid of high information
- density and complexity in language (indeed, they rather enjoy
- both), they share a deep and abiding loathing for legalese; they
- associate it with deception, {suit}s, and situations in which
- hackers generally get the short end of the stick.
-
- LER: /L-E-R/ [TMRC, from `Light-Emitting Diode] n. A
- light-emitting resistor (that is, one in the process of burning
- up). Ohm's law was broken. See {SED}.
-
- LERP: /lerp/ vi.,n. Quasi-acronym for Linear Interpolation, used as a
- verb or noun for the operation. E.g., Bresenham's algorithm lerps
- incrementally between the two endpoints of the line.
-
- let the smoke out: v. To fry hardware (see {fried}). See
- {magic smoke} for the mythology behind this.
-
- letterbomb: n. A piece of {email} containing {live data}
- intended to do nefarious things to the recipient's machine or
- terminal. It is possible, for example, to send letterbombs that
- will lock up some specific kinds of terminals when they are viewed,
- so thoroughly that the user must {cycle power} to unwedge them.
- Under UNIX, a letterbomb can also try to get part of its contents
- interpreted as a shell command to the mailer. The results of this
- could range from silly to tragic. See also {Trojan horse};
- compare {nastygram}.
-
- lexer: /lek'sr/ n. Common hacker shorthand for `lexical
- analyzer', the input-tokenizing stage in the parser for a language
- (the part that breaks it into word-like pieces). "Some C lexers
- get confused by the old-style compound ops like `=-'."
-
- lexiphage: /lek'si-fayj`/ n. A notorious word {chomper} on
- ITS. See {bagbiter}.
-
- life: n. 1. A cellular-automata game invented by John Horton
- Conway and first introduced publicly by Martin Gardner (`Scientific
- American', October 1970). Many hackers pass through a stage of
- fascination with it, and hackers at various places contributed
- heavily to the mathematical analysis of this game (most notably
- Bill Gosper at MIT, who even implemented life in {TECO}!; see
- {Gosperism}). When a hacker mentions `life', he is much more
- likely to mean this game than the magazine, the breakfast cereal,
- or the human state of existence. 2. The opposite of {USENET}.
- As in {Get a life!}
-
- light pipe: n. Fiber optic cable. Oppose {copper}.
-
- like kicking dead whales down the beach: adj. Describes a slow,
- difficult, and disgusting process. First popularized by a famous
- quote about the difficulty of getting work done under one of IBM's
- mainframe OSes. "Well, you *could* write a C compiler in
- COBOL, but it would be like kicking dead whales down the beach."
- See also {fear and loathing}
-
- like nailing jelly to a tree: adj. Used to describe a task thought
- to be impossible, esp. one in which the difficulty arises from
- poor specification or inherent slipperiness in the problem domain.
- "Trying to display the `prettiest' arrangement of nodes and arcs
- that diagrams a given graph is like nailing jelly to a tree,
- because nobody's sure what `prettiest' means algorithmically."
-
- line eater, the: [USENET] n. 1. A bug in some now-obsolete
- versions of the netnews software that used to eat up to BUFSIZ
- bytes of the article text. The bug was triggered by having the
- text of the article start with a space or tab. This bug was
- quickly personified as a mythical creature called the `line
- eater', and postings often included a dummy line of `line eater
- food'. Ironically, line eater `food' not beginning with a space or
- tab wasn't actually eaten, since the bug was avoided; but if there
- *was* a space or tab before it, then the line eater would eat
- the food *and* the beginning of the text it was supposed to be
- protecting. The practice of `sacrificing to the line eater'
- continued for some time after the bug had been {nailed to the
- wall}, and is still humorously referred to. The bug itself is
- still (in mid-1991) occasionally reported to be lurking in some
- mail-to-netnews gateways. 2. See {NSA line eater}.
-
- line starve: [MIT] 1. vi. To feed paper through a printer the wrong
- way by one line (most printers can't do this). On a display
- terminal, to move the cursor up to the previous line of the screen.
- "To print `X squared', you just output `X', line starve,
- `2', line feed." (The line starve causes the `2' to appear on the
- line above the `X', and the line feed gets back to the original
- line.) 2. n. A character (or character sequence) that causes a
- terminal to perform this action. Unlike `line feed', `line starve'
- is *not* standard {{ASCII}} terminology. Even among hackers
- it is considered a bit silly. 3. [proposed] A sequence such as \c
- (used in System V echo, as well as nroff/troff) that suppresses a
- {newline} or other character(s) that would normally be emitted.
-
- link farm: [UNIX] n. A directory tree that contains many links to
- files in a master directory tree of files. Link farms save space
- when (for example) one is maintaining several nearly identical
- copies of the same source tree, e.g., when the only difference is
- architecture-dependent object files. "Let's freeze the source and
- then rebuild the FROBOZZ-3 and FROBOZZ-4 link farms." Link farms
- may also be used to get around restrictions on the number of
- `-I' (include-file directory) arguments on older
- C preprocessors.
-
- link-dead: [MUD] adj. Said of a {MUD} character who has frozen in
- place because of a dropped Internet connection.
-
- lint: [from UNIX's `lint(1)', named perhaps for the bits of
- fluff it picks from programs] 1. vt. To examine a program closely
- for style, language usage, and portability problems, esp. if
- in C, esp. if via use of automated analysis tools, most esp. if
- the UNIX utility `lint(1)' is used. This term used to be
- restricted to use of `lint(1)' itself, but (judging by
- references on USENET) it has become a shorthand for {desk check}
- at some non-UNIX shops, even in languages other than C. Also as
- v. {delint}. 2. n. Excess verbiage in a document, as in "this
- draft has too much lint".
-
- lion food: [IBM] n. Middle management or HQ staff (by extension,
- administrative drones in general). From an old joke about two
- lions who, escaping from the zoo, split up to increase their
- chances but agreed to meet after 2 months. When they finally
- meet, one is skinny and the other overweight. The thin one says:
- "How did you manage? I ate a human just once and they turned out
- a small army to chase me --- guns, nets, it was terrible. Since
- then I've been reduced to eating mice, insects, even grass." The
- fat one replies: "Well, *I* hid near an IBM office and ate a
- manager a day. And nobody even noticed!"
-
- Lions Book: n. `Source Code and Commentary on UNIX level 6',
- by John Lions. The two parts of this book contained (1) the entire
- source listing of the UNIX Version 6 kernel, and (2) a commentary
- on the source discussing the algorithms. These were circulated
- internally at the University of New South Wales beginning 1976--77,
- and were for years after the *only* detailed kernel
- documentation available to anyone outside Bell Labs. Because
- Western Electric wished to maintain trade secret status on the
- kernel, the Lions book was never formally published and was only
- supposed to be distributed to affiliates of source licensees. In
- spite of this, it soon spread by samizdat to a good many of the
- early UNIX hackers.
-
- LISP: [from `LISt Processing language', but mythically from
- `Lots of Irritating Superfluous Parentheses'] n. The name of AI's
- mother tongue, a language based on the ideas of (a) variable-length
- lists and trees as fundamental data types, and (b) the
- interpretation of code as data and vice-versa. Invented by John
- McCarthy at MIT in the late 1950s, it is actually older than any
- other {HLL} still in use except FORTRAN. Accordingly, it has
- undergone considerable adaptive radiation over the years; modern
- variants are quite different in detail from the original LISP 1.5.
- The dominant HLL among hackers until the early 1980s, LISP now
- shares the throne with {C}. See {languages of choice}.
-
- All LISP functions and programs are expressions that return
- values; this, together with the high memory utilization of LISPs,
- gave rise to Alan Perlis's famous quip (itself a take on an Oscar
- Wilde quote) that "LISP programmers know the value of everything
- and the cost of nothing".
-
- One significant application for LISP has been as a proof by example
- that most newer languages, such as {COBOL} and {Ada}, are full
- of unnecessary {crock}s. When the {Right Thing} has already
- been done once, there is no justification for {bogosity} in newer
- languages.
-
- literature, the: n. Computer-science journals and other
- publications, vaguely gestured at to answer a question that the
- speaker believes is {trivial}. Thus, one might answer an
- annoying question by saying "It's in the literature." Oppose
- {Knuth}, which has no connotation of triviality.
-
- little-endian: adj. Describes a computer architecture in which,
- within a given 16- or 32-bit word, bytes at lower addresses have
- lower significance (the word is stored `little-end-first'). The
- PDP-11 and VAX families of computers and Intel microprocessors and
- a lot of communications and networking hardware are little-endian.
- See {big-endian}, {middle-endian}, {NUXI problem}. The term
- is sometimes used to describe the ordering of units other than
- bytes; most often these are bits within a byte.
-
- live data: n. 1. Data that is written to be interpreted and takes
- over program flow when triggered by some un-obvious operation, such
- as viewing it. One use of such hacks is to break security. For
- example, some smart terminals have commands that allow one to
- download strings to program keys; this can be used to write live
- data that, when listed to the terminal, infects it with a
- security-breaking {virus} that is triggered the next time a
- hapless user strikes that key. For another, there are some
- well-known bugs in {vi} that allow certain texts to send
- arbitrary commands back to the machine when they are simply viewed.
- 2. In C code, data that includes pointers to function {hook}s
- (executable code). 3. An object, such as a {trampoline}, that is
- constructed on the fly by a program and intended to be executed as
- code. 4. Actual real-world data, as opposed to `test data'.
- For example, "I think I have the record deletion module
- finished." "Have you tried it out on live data?" It usually
- carries the connotation that live data is more fragile and must not
- be corrupted, else bad things will happen. So a possible alternate
- response to the above claim might be: "Well, make sure it works
- perfectly before we throw live data at it." The implication here
- is that record deletion is something pretty significant, and a
- haywire record-deletion module running amok on live data would
- cause great harm and probably require restoring from backups.
-
- Live Free Or Die!: imp. 1. The state motto of New Hampshire, which
- appears on that state's automobile license plates. 2. A slogan
- associated with UNIX in the romantic days when UNIX aficionados saw
- themselves as a tiny, beleaguered underground tilting against the
- windmills of industry. The "free" referred specifically to
- freedom from the {fascist} design philosophies and crufty
- misfeatures common on commercial operating systems. Armando
- Stettner, one of the early UNIX developers, used to give out fake
- license plates bearing this motto under a large UNIX, all in New
- Hampshire colors of green and white. These are now valued
- collector's items.
-
- livelock: /li:v'lok/ n. A situation in which some critical stage
- of a task is unable to finish because its clients perpetually
- create more work for it to do after they have been serviced but
- before it can clear its queue. Differs from {deadlock} in that
- the process is not blocked or waiting for anything, but has a
- virtually infinite amount of work to do and can never catch up.
-
- liveware: /li:v'weir/ n. 1. Synonym for {wetware}. Less
- common. 2. [Cambridge] Vermin. "Waiter, there's some liveware in my
- salad..."
-
- lobotomy: n. 1. What a hacker subjected to formal management
- training is said to have undergone. At IBM and elsewhere this term
- is used by both hackers and low-level management; the latter
- doubtless intend it as a joke. 2. The act of removing the
- processor from a microcomputer in order to replace or upgrade it.
- Some very cheap {clone} systems are sold in `lobotomized' form
- --- everything but the brain.
-
- locked and loaded: [from military slang for an M-16 rifle with
- magazine inserted and prepared for firing] adj. Said of a removable
- disk volume properly prepared for use --- that is, locked into the
- drive and with the heads loaded. Ironically, because their heads
- are `loaded' whenever the power is up, this description is never
- used of {{Winchester}} drives (which are named after a rifle).
-
- locked up: adj. Syn. for {hung}, {wedged}.
-
- logic bomb: n. Code surreptitiously inserted in an application or
- OS that causes it to perform some destructive or
- security-compromising activity whenever specified conditions are
- met. Compare {back door}.
-
- logical: [from the technical term `logical device', wherein a
- physical device is referred to by an arbitrary `logical' name]
- adj. Having the role of. If a person (say, Les Earnest at SAIL)
- who had long held a certain post left and were replaced, the
- replacement would for a while be known as the `logical' Les
- Earnest. (This does not imply any judgment on the replacement.)
- Compare {virtual}.
-
- At Stanford, `logical' compass directions denote a coordinate
- system in which `logical north' is toward San Francisco,
- `logical west' is toward the ocean, etc., even though logical
- north varies between physical (true) north near San Francisco and
- physical west near San Jose. (The best rule of thumb here is that,
- by definition, El Camino Real always runs logical north-and-south.)
- In giving directions, one might say: "To get to Rincon Tarasco
- restaurant, get onto {El Camino Bignum} going logical north."
- Using the word `logical' helps to prevent the recipient from
- worrying about that the fact that the sun is setting almost
- directly in front of him. The concept is reinforced by North
- American highways which are almost, but not quite, consistently
- labeled with logical rather than physical directions. A similar
- situation exists at MIT. Route 128 (famous for the electronics
- industry that has grown up along it) is a 3-quarters circle
- surrounding Boston at a radius of 10 miles, terminating near the
- coastline at each end. It would be most precise to describe the
- two directions along this highway as `clockwise' and
- `counterclockwise', but the road signs all say "north" and
- "south", respectively. A hacker might describe these directions
- as `logical north' and `logical south', to indicate that they
- are conventional directions not corresponding to the usual
- denotation for those words. (If you went logical south along the
- entire length of route 128, you would start out going northwest,
- curve around to the south, and finish headed due east!)
-
- loop through: vt. To process each element of a list of things.
- "Hold on, I've got to loop through my paper mail." Derives from
- the computer-language notion of an iterative loop; compare `cdr
- down' (under {cdr}), which is less common among C and UNIX
- programmers. ITS hackers used to say `IRP over' after an
- obscure pseudo-op in the MIDAS PDP-10 assembler.
-
- lord high fixer: [primarily British, from Gilbert & Sullivan's
- `lord high executioner'] n. The person in an organization who knows
- the most about some aspect of a system. See {wizard}.
-
- lose: [MIT] vi. 1. To fail. A program loses when it encounters
- an exceptional condition or fails to work in the expected manner.
- 2. To be exceptionally unesthetic or crocky. 3. Of people, to
- be obnoxious or unusually stupid (as opposed to ignorant). See
- also {deserves to lose}. 4. n. Refers to something that is
- {losing}, especially in the phrases "That's a lose!" and "What
- a lose!"
-
- lose lose: interj. A reply to or comment on an undesirable
- situation. "I accidentally deleted all my files!" "Lose,
- lose."
-
- loser: n. An unexpectedly bad situation, program, programmer, or
- person. Someone who habitually loses. (Even winners can lose
- occasionally.) Someone who knows not and knows not that he knows
- not. Emphatic forms are `real loser', `total loser', and
- `complete loser' (but not *`moby loser', which would be a
- contradiction in terms). See {luser}.
-
- losing: adj. Said of anything that is or causes a {lose} or
- {lossage}.
-
- loss: n. Something (not a person) that loses; a situation in which
- something is losing. Emphatic forms include `moby loss', and
- `total loss', `complete loss'. Common interjections are
- "What a loss!" and "What a moby loss!" Note that `moby loss'
- is OK even though `moby loser' is not used; applied to an abstract
- noun, moby is simply a magnifier, whereas when applied to a person
- it implies substance and has positive connotations. Compare
- {lossage}.
-
- lossage: /los'*j/ n. The result of a bug or malfunction. This
- is a mass or collective noun. "What a loss!" and "What
- lossage!" are nearly synonymous. The former is slightly more
- particular to the speaker's present circumstances; the latter
- implies a continuing {lose} of which the speaker is currently
- a victim. Thus (for example) a temporary hardware failure is a loss,
- but bugs in an important tool (like a compiler) are serious
- lossage.
-
- lost in the noise: adj. Syn. {lost in the underflow}. This term
- is from signal processing, where signals of very small amplitude
- cannot be separated from low-intensity noise in the system. Though
- popular among hackers, it is not confined to hackerdom; physicists,
- engineers, astronomers, and statisticians all use it.
-
- lost in the underflow: adj. Too small to be worth considering;
- more specifically, small beyond the limits of accuracy or
- measurement. This is a reference to `floating underflow', a
- condition that can occur when a floating-point arithmetic processor
- tries to handle quantities smaller than its limit of magnitude. It
- is also a pun on `undertow' (a kind of fast, cold current that
- sometimes runs just offshore and can be dangerous to swimmers).
- "Well, sure, photon pressure from the stadium lights alters the
- path of a thrown baseball, but that effect gets lost in the
- underflow." See also {overflow bit}.
-
- lots of MIPS but no I/O: adj. Used to describe a person who is
- technically brilliant but can't seem to communicate with human
- beings effectively. Technically it describes a machine that has
- lots of processing power but is bottlenecked on input-output (in
- 1991, the IBM Rios, a.k.a. RS/6000, is a notorious recent
- example).
-
- low-bandwidth: [from communication theory] adj. Used to indicate a
- talk that, although not {content-free}, was not terribly
- informative. "That was a low-bandwidth talk, but what can you
- expect for an audience of {suit}s!" Compare {zero-content},
- {bandwidth}, {math-out}.
-
- LPT: /L-P-T/ or /lip'it/ or /lip-it'/ [MIT, via DEC] n. Line
- printer, of course. Rare under UNIX, commoner in hackers with
- MS-DOS or CP/M background. The printer device is called
- `LPT:' on those systems that, like ITS, were strongly
- influenced by early DEC conventions.
-
- lunatic fringe: [IBM] n. Customers who can be relied upon to accept
- release 1 versions of software.
-
- lurker: n. One of the `silent majority' in a electronic forum;
- one who posts occasionally or not at all but is known to read the
- group's postings regularly. This term is not pejorative and indeed
- is casually used reflexively: "Oh, I'm just lurking." Often used
- in `the lurkers', the hypothetical audience for the group's
- {flamage}-emitting regulars.
-
- luser: /loo'zr/ n. A {user}; esp. one who is also a {loser}.
- ({luser} and {loser} are pronounced identically.) This word
- was coined around 1975 at MIT. Under ITS, when you first walked up
- to a terminal at MIT and typed Control-Z to get the computer's
- attention, it printed out some status information, including how
- many people were already using the computer; it might print
- "14 users", for example. Someone thought it would be a great joke to
- patch the system to print "14 losers" instead. There ensued a
- great controversy, as some of the users didn't particularly want to
- be called losers to their faces every time they used the computer.
- For a while several hackers struggled covertly, each changing the
- message behind the back of the others; any time you logged into the
- computer it was even money whether it would say "users" or
- "losers". Finally, someone tried the compromise "lusers", and it
- stuck. Later one of the ITS machines supported `luser' as a
- request-for-help command. ITS died the death in mid-1990, except
- as a museum piece; the usage lives on, however, and the term
- `luser' is often seen in program comments.
-
- = M =
-
- M: [SI] pref. (on units) suff. (on numbers) See {{quantifiers}}.
-
- macdink: /mak'dink/ [from the Apple Macintosh, which is said to
- encourage such behavior] vt. To make many incremental and
- unnecessary cosmetic changes to a program or file. Often the
- subject of the macdinking would be better off without them.
- "When I left at 11 P.M. last night, he was still macdinking the
- slides for his presentation." See also {fritterware}.
-
- machinable: adj. Machine-readable. Having the {softcopy} nature.
-
- machoflops: /mach'oh-flops/ [pun on `megaflops', a coinage for
- `millions of FLoating-point Operations Per Second'] n. Refers to
- artificially inflated performance figures often quoted by computer
- manufacturers. Real applications are lucky to get half the quoted
- speed. See {Your mileage may vary}, {benchmark}.
-
- Macintoy: /mak'in-toy/ n. The Apple Macintosh, considered as a
- {toy}. Less pejorative than {Macintrash}.
-
- Macintrash: /mak'in-trash`/ n. The Apple Macintosh, as described
- by a hacker who doesn't appreciate being kept away from the
- *real computer* by the interface. The term {maggotbox} has
- been reported in regular use in the Research Triangle area of North
- Carolina. Compare {Macintoy}. See also {beige toaster},
- {WIMP environment}, {drool-proof paper}, {user-friendly}.
-
- macro: /mak'roh/ [techspeak] n. A name (possibly followed by a
- formal {arg} list) that is equated to a text or symbolic
- expression to which it is to be expanded (possibly with the
- substitution of actual arguments) by a macro expander. This
- definition can be found in any technical dictionary; what those
- won't tell you is how the hackish connotations of the term have
- changed over time.
-
- The term `macro' originated in early assemblers, which encouraged
- the use of macros as a structuring and information-hiding device.
- During the early 1970s, macro assemblers became ubiquitous, and
- sometimes quite as powerful and expensive as {HLL}s, only to fall
- from favor as improving compiler technology marginalized assembler
- programming (see {languages of choice}). Nowadays the term is
- most often used in connection with the C preprocessor, LISP, or one
- of several special-purpose languages built around a macro-expansion
- facility (such as TeX or UNIX's [nt]roff suite).
-
- Indeed, the meaning has drifted enough that the collective
- `macros' is now sometimes used for code in any special-purpose
- application control language (whether or not the language is
- actually translated by text expansion), and for macro-like entities
- such as the `keyboard macros' supported in some text editors
- (and PC TSR or Macintosh INIT/CDEV keyboard enhancers).
-
- macro-: pref. Large. Opposite of {micro-}. In the mainstream
- and among other technical cultures (for example, medical people)
- this competes with the prefix {mega-}, but hackers tend to
- restrict the latter to quantification.
-
- macrology: /mak-rol'*-jee/ n. 1. Set of usually complex or crufty
- macros, e.g., as part of a large system written in {LISP},
- {TECO}, or (less commonly) assembler. 2. The art and science
- involved in comprehending a macrology in sense 1. Sometimes
- studying the macrology of a system is not unlike archeology,
- ecology, or {theology}, hence the sound-alike construction. See
- also {boxology}.
-
- macrotape: /ma'kroh-tayp/ n. An industry-standard reel of tape, as
- opposed to a {microtape}.
-
- maggotbox: /mag'*t-boks/ n. See {Macintrash}. This is even
- more derogatory.
-
- magic: adj. 1. As yet unexplained, or too complicated to explain;
- compare {automagically} and (Arthur C.) Clarke's Third Law:
- "Any sufficiently advanced technology is indistinguishable from
- magic." "TTY echoing is controlled by a large number of magic
- bits." "This routine magically computes the parity of an 8-bit
- byte in three instructions." 2. Characteristic of something that
- works although no one really understands why (this is especially called
- {black magic}). 3. [Stanford] A feature not generally
- publicized that allows something otherwise impossible, or a feature
- formerly in that category but now unveiled. Compare {black
- magic}, {wizardly}, {deep magic}, {heavy wizardry}.
-
- For more about hackish `magic', see appendix A.
-
- magic cookie: [UNIX] n. 1. Something passed between routines or
- programs that enables the receiver to perform some operation; a
- capability ticket or opaque identifier. Especially used of small
- data objects that contain data encoded in a strange or
- intrinsically machine-dependent way. E.g., on non-UNIX OSes with a
- non-byte-stream model of files, the result of `ftell(3)' may
- be a magic cookie rather than a byte offset; it can be passed to
- `fseek(3)', but not operated on in any meaningful way. The
- phrase `it hands you a magic cookie' means it returns a result
- whose contents are not defined but which can be passed back to the
- same or some other program later. 2. An in-band code for
- changing graphic rendition (e.g., inverse video or underlining) or
- performing other control functions. Some older terminals would
- leave a blank on the screen corresponding to mode-change magic
- cookies; this was also called a {glitch}. See also {cookie}.
-
- magic number: [UNIX/C] n. 1. In source code, some non-obvious
- constant whose value is significant to the operation of a program
- and that is inserted inconspicuously in-line ({hardcoded}),
- rather than expanded in by a symbol set by a commented
- `#define'. Magic numbers in this sense are bad style. 2. A
- number that encodes critical information used in an algorithm in
- some opaque way. The classic examples of these are the numbers
- used in hash or CRC functions, or the coefficients in a linear
- congruential generator for pseudo-random numbers. This sense
- actually predates and was ancestral to the more common sense 1.
- 3. Special data located at the beginning of a binary data file to
- indicate its type to a utility. Under UNIX, the system and various
- applications programs (especially the linker) distinguish between
- types of executable file by looking for a magic number. Once upon
- a time, these magic numbers were PDP-11 branch instructions that
- skipped over header data to the start of executable code; the 0407,
- for example, was octal for `branch 16 bytes relative'. Nowadays
- only a {wizard} knows the spells to create magic numbers. How do
- you choose a fresh magic number of your own? Simple --- you pick
- one at random. See? It's magic!
-
- magic smoke: n. A substance trapped inside IC packages that enables
- them to function (also called `blue smoke'; this is similar to
- the archaic `phlogiston' hypothesis about combustion). Its
- existence is demonstrated by what happens when a chip burns up ---
- the magic smoke gets let out, so it doesn't work any more. See
- {smoke test}, {let the smoke out}.
-
- USENETter Jay Maynard tells the following story: "Once, while
- hacking on a dedicated Z80 system, I was testing code by blowing
- EPROMs and plugging them in the system, then seeing what happened.
- One time, I plugged one in backwards. I only discovered that
- *after* I realized that Intel didn't put power-on lights under
- the quartz windows on the tops of their EPROMs --- the die was
- glowing white-hot. Amazingly, the EPROM worked fine after I erased
- it, filled it full of zeros, then erased it again. For all I know,
- it's still in service. Of course, this is because the magic smoke
- didn't get let out." Compare the original phrasing of {Murphy's
- Law}.
-
- mailing list: n. (often shortened in context to `list') 1. An
- {email} address that is an alias (or {macro}, though that word
- is never used in this connection) for many other email addresses.
- Some mailing lists are simple `reflectors', redirecting mail sent
- to them to the list of recipients. Others are filtered by humans
- or programs of varying degrees of sophistication; lists filtered by
- humans are said to be `moderated'. 2. The people who receive
- your email when you send it to such an address.
-
- Mailing lists are one of the primary forms of hacker interaction,
- along with {USENET}. They predate USENET, having originated
- with the first UUCP and ARPANET connections. They are often used
- for private information-sharing on topics that would be too
- specialized for or inappropriate to public USENET groups. Though
- some of these maintain purely technical content (such as the
- Internet Engineering Task Force mailing list), others (like the
- `sf-lovers' list maintained for many years by Saul Jaffe) are
- recreational, and others are purely social. Perhaps the most
- infamous of the social lists was the eccentric bandykin
- distribution; its latter-day progeny, lectroids and
- tanstaafl, still include a number of the oddest and most
- interesting people in hackerdom.
-
- Mailing lists are easy to create and (unlike USENET) don't tie up a
- significant amount of machine resources. Thus, they are often
- created temporarily by working groups, the members of which can
- then collaborate on a project without ever needing to meet
- face-to-face. Much of the material in this book was criticized and
- polished on just such a mailing list (called `jargon-friends'),
- which included all the co-authors of Steele-1983.
-
- main loop: n. Software tools are often written to perform some
- actions repeatedly on whatever input is handed to them, terminating
- when there is no more input or they are explicitly told to go away.
- In such programs, the loop that gets and processes input is called
- the `main loop'. See also {driver}.
-
- mainframe: n. This term originally referred to the cabinet
- containing the central processor unit or `main frame' of a
- room-filling {Stone Age} batch machine. After the emergence of
- smaller `minicomputer' designs in the early 1970s, the
- traditional {big iron} machines were described as `mainframe
- computers' and eventually just as mainframes. The term carries the
- connotation of a machine designed for batch rather than interactive
- use, though possibly with an interactive timesharing operating
- system retrofitted onto it; it is especially used of machines built
- by IBM, Unisys, and the other great {dinosaur}s surviving from
- computing's {Stone Age}.
-
- It is common wisdom among hackers that the mainframe architectural
- tradition is essentially dead (outside of the tiny market for
- {number-crunching} supercomputers (see {cray})), having been
- swamped by the recent huge advances in IC technology and low-cost
- personal computing. As of 1991, corporate America hasn't quite
- figured this out yet, though the wave of failures, takeovers, and
- mergers among traditional mainframe makers are certainly straws in
- the wind (see {dinosaurs mating}).
-
- management: n. 1. Corporate power elites distinguished primarily by
- their distance from actual productive work and their chronic
- failure to manage (see also {suit}). Spoken derisively, as in
- "*Management* decided that ...". 2. Mythically, a vast
- bureaucracy responsible for all the world's minor irritations.
- Hackers' satirical public notices are often signed `The Mgt'; this
- derives from the `Illuminatus' novels (see the Bibliography).
-
- mandelbug: /mon'del-buhg/ [from the Mandelbrot set] n. A bug
- whose underlying causes are so complex and obscure as to make its
- behavior appear chaotic or even non-deterministic. This term
- implies that the speaker thinks it is a {Bohr bug}, rather than a
- {heisenbug}.
-
- manged: /monjd/ [probably from the French `manger' or Italian
- `mangiare', to eat; perhaps influenced by English n. `mange',
- `mangy'] adj. Refers to anything that is mangled or damaged,
- usually beyond repair. "The disk was manged after the electrical
- storm." Compare {mung}.
-
- mangle: vt. Used similarly to {mung} or {scribble}, but more violent
- in its connotations; something that is mangled has been
- irreversibly and totally trashed.
-
- mangler: [DEC] n. A manager. Compare {mango}; see also
- {management}. Note that {system mangler} is somewhat different
- in connotation.
-
- mango: /mang'go/ [orig. in-house jargon at Symbolics] n. A manager.
- Compare {mangler}. See also {devo} and {doco}.
-
- marbles: [from mainstream "lost all his/her marbles"] pl.n. The
- minimum needed to build your way further up some hierarchy of tools
- or abstractions. After a bad system crash, you need to determine
- if the machine has enough marbles to come up on its own, or enough
- marbles to allow a rebuild from backups, or if you need to rebuild
- from scratch. "This compiler doesn't even have enough marbles to
- compile `Hello World'."
-
- marginal: adj. 1. Extremely small. "A marginal increase in
- {core} can decrease {GC} time drastically." In everyday
- terms, this means that it is a lot easier to clean off your desk if
- you have a spare place to put some of the junk while you sort
- through it. 2. Of extremely small merit. "This proposed new
- feature seems rather marginal to me." 3. Of extremely small
- probability of {win}ning. "The power supply was rather marginal
- anyway; no wonder it fried."
-
- Marginal Hacks: n. Margaret Jacks Hall, a building into which the
- Stanford AI Lab was moved near the beginning of the 1980s (from the
- {D. C. Power Lab}).
-
- marginally: adv. Slightly. "The ravs here are only marginally
- better than at Small Eating Place." See {epsilon}.
-
- marketroid: /mar'k*-troyd/ alt. `marketing slime',
- `marketing droid', `marketeer' n. A member of a company's
- marketing department, esp. one who promises users that the next
- version of a product will have features that are not actually
- scheduled for inclusion, are extremely difficult to implement,
- and/or are in violation of the laws of physics; and/or one who
- describes existing features (and misfeatures) in ebullient,
- buzzword-laden adspeak. Derogatory. Compare {droid}.
-
- Mars: n. A legendary tragic failure, the archetypal Hacker Dream
- Gone Wrong. Mars was the code name for a family of PDP-10
- compatible computers built by Systems Concepts (now, The SC Group);
- the multi-processor SC-30M, the small uniprocessor SC-25M, and the
- never-built superprocessor SC-40M. These machines were marvels of
- engineering design; although not much slower than the unique
- {Foonly} F-1, they were physically smaller and consumed less
- power than the much slower DEC KS10 or Foonly F-2, F-3, or F-4
- machines. They were slso completely compatible with the DEC KL10,
- and ran all KL10 binaries, including the operating system, with no
- modifications at about 2--3 times faster than a KL10.
-
- 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 in 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 at you 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: [poss. from `white-out' (the blizzard variety)] n. 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: [FidoNet] n. 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}).
- Some people refer to the totality of present networks this way.
-
- Mbogo, Dr. Fred: /*m-boh'goh, dok'tr fred/ [Stanford] n. 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. See also
- {fred}.
-
- meatware: n. Synonym for {wetware}. Less common.
-
- meeces: /mees'*z/ [TMRC] n. 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*/ [SI] pref. 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 this term 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/ [coined on analogy with `gene' by Richard
- Dawkins] n. 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/ [from {meme}] The study of memes. As of
- mid-1991, 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 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}. See {aliasing bug}, {fandango on
- core}, {smash the stack}, {precedence lossage}, {overrun
- screw}, {leaky heap}, {leak}.
-
- 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*/ [from
- analytic philosophy] adj.,pref. One level of description up.
- A meta-syntactic 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 {{Humor,
- Hacker}}.
-
- 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}.
-
- MFTL: /M-F-T-L/ [acronym: `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 prosyletic 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* be used to write
- its own compiler is beneath contempt...
-
- 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.
-
-
- 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. About 1.2 sec. 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. See {bogosity}.
-
- microReid: /mi:'kroh-reed/ n. See {bogosity}.
-
- 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 386. 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 drivers for today's {macrotape}s, microtape
- drivers allow 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.
-
- 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}.
-
- milliLampson: /mil'*-lamp`sn/ n. A unit of talking speed,
- abbreviated mL. Most people run about 200 milliLampsons. 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/ [acronym] n. 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/ [MIT] n. 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 which has evolved. It is not the same as a bug,
- because fixing it involves a substantial philosophical change to
- the structure of the system involved. A misfeature is different
- from a simple unforeseen side effect; the term implies that the
- misfeature was actually carefully planned to be that way, but
- its future consequences or circumstances just weren't predicted
- accurately. This is different from just not having thought ahead
- about it at all. Many misfeatures (especially in user-interface
- design) arise because the designers/implementors mistook their
- personal tastes for laws of nature. Often a former feature becomes
- a misfeature because a tradeoff was made whose parameters
- subsequently changed (possibly only in the judgment of the
- implementors). "Well, yeah, it is kind of a misfeature that file
- names are limited to 6 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}.
-
- miswart: /mis-wort/ [from {wart} by analogy with {misbug}] n.
- 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 two characters on either side of the cursor 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 appendix A). 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 2): 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.
-
- 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 popular 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).
-
- 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".
-
- 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: /mo'dyu-loh/ prep. Except for. From mathematical
- terminology; one can consider saying that 4 = 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/ [University of Illinois] n. A shield
- to prevent tripping of some {Big Red Switch} by clumsy or
- ignorant hands. Originally used of some 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. Development by {gang bang}
- (poss. from the Sixties counterculture expression `Mongolian
- clusterfuck' for a public orgy). 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}, {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. The
- quality of being monstrous (see `Overgeneralization' in the discussion
- of jargonification). See also {baroque}.
-
- Moof: /moof/ [MAC users] n. The Moof or `dogcow' is a
- semi-legendary creature that lurks in the depths of the Macintosh
- Technical Notes Hypercard stack V3.1; specifically, the full story
- of the dogcow is told in technical note #31 (the particular Moof
- illustrated is properly named `Clarus'). Option-shift-click will
- cause it to emit a characteristic `Moof!' or `!fooM' sound.
- *Getting* to tech note 31 is the hard part; to discover how
- to do that, one must needs examine the stack script with a hackerly
- eye. Clue: {rot13} is involved. A dogcow also appears if you
- choose `Page Setup...' with a LaserWriter selected and click on
- the `Options' button.
-
- 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^{(n - 1962)}; that is, the
- amount of information storable in one square inch of silicon has
- roughly doubled yearly every year since the technology was
- invented. See also {Parkinson's Law of Data}.
-
- 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. Extremely
- addictive and a major consumer of time better used for hacking.
-
- MOTAS: /moh-toz/ [USENET: Member Of The Appropriate Sex, after
- {MOTOS} and {MOTSS}] n. A potential or (less often) actual sex
- partner. See also {SO}.
-
- MOTOS: /moh-tohs/ [acronym from the 1970 U.S. census forms via
- USENET: Member Of The Opposite Sex] n. 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/ [from the 1970 U.S. census forms
- via USENET, Member Of The Same Sex] n. 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. Also see {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: [MS-DOS] n. 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/ [MicroSoft Disk Operating System] n. A
- {clone} of {{CP/M}} for the 8088 crufted together in 6 weeks by
- hacker Tim Paterson, who is said to have regretted it ever since.
- Numerous features, including vaguely UNIX-like but rather broken
- support for subdirectories, I/O redirection, and pipelines, were
- hacked into 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 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). 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 (see the Bibliography), 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' (pointer in the
- Bibliography).
-
- MUD: /muhd/ [acronym, Multi-User Dungeon; alt. Multi-User
- Dimension] 1. n. 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 (see {hack-and-slay}). 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 an AI experiment 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 (see {BartleMUD}).
- The title `MUD' is still 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 did not stop
- students on the European academic networks from copying and improving
- on the MUD concept, from which sprung several new MUDs (VAXMUD,
- AberMUD, LPMUD). Many of these had associated bulletin-board
- systems for social interaction. Because USENET feeds have been
- spotty and difficult to get in the U.K. and the British JANET
- network doesn't support {FTP} or remote login via telnet, the
- MUDs became 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. In 1991, over
- 50% of MUD sites are of a third major variety, LPMUD, which
- synthesizes the combat/puzzle aspects of AberMUD and older systems
- with the extensibility of TinyMud. 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.
- There is now (early 1991) a move afoot to deprecate the term
- {MUD} itself, as newer designs exhibit an exploding variety of
- names corresponding to the different simulation styles being
- explored. See also {BartleMUD}, {berserking}, {bonk/oif},
- {brand brand brand}, {FOD}, {hack-and-slay}, {link-dead},
- {mudhead}, {posing}, {talk mode}, {tinycrud}.
-
- mudhead: n. Commonly used to refer to a {MUD} player who
- sleeps, breathes, and eats 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, all a mudhead
- will talk about is two topics: the tactic, character, or wizard
- that is supposedly always unfairly stopping him/her from becoming a
- wizard or beating a favorite MUD, and the MUD he or she is writing
- or going to write because all existing MUDs are so dreadful! See
- also {wannabee}.
-
- multician: /muhl-ti'shn/ [coined at Honeywell, ca. 1970] n.
- 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. 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. Sometimes used as
- an expression of disagreement. "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'). 3. Yet another
- metasyntactic variable, like {foo}. 4. When used as a question
- ("Mumble?") means "I didn't understand you". 5. 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."
-
- munch: [often confused with {mung}, q.v.] vt. 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/ [from the squeaky-voiced little people in
- L. Frank Baum's `The Wizard of Oz'] n. 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: [from SF fandom] n. 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/ alt. `munge' /muhnj/ [in 1960 at MIT, `Mash
- Until No Good'; sometime after that the derivation from the
- {{recursive acronym}} `Mung Until No Good' became standard] vt.
- 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 of which the sprouts are used
- in Chinese food. (That's their real name! Mung beans! Really!)
-
- 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 lusers. 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. 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 sometimes 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, Spirogyra,
- Scott Joplin, Tangerine Dream, King Sunny Ade, The Pretenders, or
- Bach's 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.) 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}.
-
- nailed to the wall: [like a trophy] adj. Said of a bug finally
- eliminated after protracted, and even heroic, effort.
-
- nailing jelly: vi. See {like nailing jelly to a tree}.
-
- na"ive: 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 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'.
-
- na"ive 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/ [from the ASCII mnemonic for 0010101] interj.
- 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/ [CMU: from `nanosecond'] n. 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-: [SI: the next quantifier below {micro-}; meaning *
- 10^{-9}] pref. 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 whose switching
- elements are molecular in size. 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: [Adelaide University] n. 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 are taking place
- now (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', 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}.
-
- 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}. 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 appendix A). See {hack}.
-
- neep-neep: /neep neep/ [onomatopoeic, from New York SF fandom] n.
- One who is fascinated by computers. More general than {hacker},
- as it need not imply more skill than is required to boot games on a
- PC. The derived noun `neep-neeping' applies specifically to
- the long conversations about computers that tend to develop in the
- corners at most SF-convention parties. 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 trait of 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}}.
-
- 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. Used to refer 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}.
-
- nethack: /net'hak/ [UNIX] n. 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 mid-1991) is
- nethack-bugs@linc.cis.upenn.edu.
-
- netiquette: /net'ee-ket/ or /net'i-ket/ [portmanteau from "network
- etiquette"] n. Conventions of politeness recognized on {USENET},
- such as avoidance of cross-posting to inappropriate groups or
- refraining from commercial pluggery on the net.
-
- 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/ [IBM] n. A {flame}; used esp. on VNET,
- IBM's internal corporate network.
-
- network address: n. (also `net address') As used by hackers,
- means an address on `the' network (see {network, the}; this is
- almost always a {bang path} or {{Internet address}}). Such an
- 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}.
-
- 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, the: n. 1. The union of all the major noncommercial,
- academic, and hacker-oriented networks, such as Internet, the old
- ARPANET, NSFnet, {BITNET}, and the virtual UUCP and {USENET}
- `networks', plus the corporate in-house networks and commercial
- time-sharing services (such as CompuServe) 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 {bang path}, {{Internet address}},
- {network address}. 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: [primarily Stanford/Silicon Valley] adj. 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}.
-
- 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 {BIFF}.
-
- newgroup wars: /n[y]oo'groop wohrz/ [USENET] n. 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. 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/ [acronym; the
- `Network Window System'] n. 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: // [USENET] n. Silly synonym for {newsgroup},
- originally a typo but now in regular use on USENET's talk.bizarre
- and other lunatic-fringe groups.
-
- newsgroup: [USENET] n. 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-lovers (for science-fiction
- fans), and talk.politics.misc (miscellaneous political
- discussions and {flamage}).
-
- nickle: /ni'kl/ [from `nickel', common name for the U.S.
- 5-cent coin] n. 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}.
-
- 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 snowballs very fast, and
- soon the entire network of machines is frozen --- the user can't
- even abort the file access that started the problem! (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/ [from LISP terminology for `false'] No. Used
- in reply to a question, particularly one asked using the
- `-P' convention. See {T}.
-
- 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{88,[1234]}86. In contrast
- with a {priority interrupt} (which might be ignored, although
- that is unlikely), an NMI is *never* ignored.
-
- no-op: /noh'op/ alt. NOP /nop/ [no operation] n. 1. (also v.)
- 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/ [UK: from the children's books] adj.
- 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}.
-
- NOMEX underwear: /noh'meks uhn'-der-weir/ [USENET] n. 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.
-
- 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. 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}.
-
- notwork: /not'werk/ n. A network, when it is acting {flaky} or is
- {down}. Compare {nyetwork}. Said at IBM to have orig.
- 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' (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.) "Getting this algorithm to perform
- correctly in every case is NP-annoying." This is generalized from
- the computer-science terms `NP-hard' and `NP-complete'. 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.
-
- NSA line eater: n. The National Security Agency trawling
- program sometimes assumed to be reading {USENET} 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 (1991), 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.
-
- nuke: 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: [scientific computation] n. 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. This 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') [from v. `nibble' by analogy
- with `bite' => `byte'] n. Four bits; one {hex} digit;
- a half-byte. Though `byte' is now techspeak, this useful relative
- is still jargon. Compare {{byte}}, {crumb}, {tayste},
- {dynner}; see also {bit}, {nickle}, {deckle}. Apparently
- this spelling is uncommon in Commonwealth Hackish, as British
- orthography suggests the pronunciation /ni:'bl/.
-
- nyetwork: /nyet'werk/ [from Russian `nyet' = no] n. 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 your Obs are more
- interesting than other people's whole postings.
-
- Obfuscated C Contest: n. 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()
- {
- _-_-_-_
- _-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_-_-_-_-_
- _-_-_-_-_-_-_-_
- _-_-_-_
- }
-
- See also {hello, world}.
-
- obi-wan error: /oh'bee-won` er'*r/ [RPI, from `off-by-one' and
- the Obi-Wan Kenobi character in "Star Wars"] n. 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 it 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 taken off a public newsgroup to email.
-
- 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-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}). 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.
-
- 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/ [from Dr. Seuss's `Bartholomew and the
- Oobleck'] n. 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.
-
- 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 switch: [IBM: prob. from railroading] n. An unresolved
- question, issue, or problem.
-
- operating system:: [techspeak] n. (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).
-
- Orange Book: n. The U.S. Government's standards document
- `Trusted Computer System Evaluation Criteria, DOD standard
- 5200.28-STD, December, 1985' which characterize secure computing
- architectures and defines levels A1 (most secure) through D (least).
- Stock UNIXes are roughly C2, and can be upgraded to about C1
- without excessive pain. See also {{book titles}}.
-
- oriental food:: n. Hackers display an intense tropism towards
- oriental cuisine, especially Chinese, and especially of the spicier
- varieties such as Szechuan and Hunan. This phenomenon (which has
- also been observed in subcultures that overlap heavily with
- hackerdom, most notably science-fiction fandom) has never been
- satisfactorily explained, but is sufficiently intense that one can
- assume the target of a hackish dinner expedition to be the best
- local Chinese place and be right at least three times out of four.
- See also {ravs}, {great-wall}, {stir-fried random},
- {laser chicken}, {Yu-Shiang Whole Fish}. Thai, Indian,
- Korean, and Vietnamese cuisines are also quite popular.
-
- orphan: [UNIX] n. A process whose parent has died; one inherited by
- `init(1)'. Compare {zombie}.
-
- orphaned i-node: /or'f*nd i:'nohd/ [UNIX] n. 1. [techspeak] A
- file that retains storage but no longer appears in the directories
- of a filesystem. 2. By extension, a pejorative for any person
- serving no useful function within some organization, esp.
- {lion food} without subordinates.
-
- orthogonal: [from mathematics] adj. Mutually independent; well
- separated; sometimes, irrelevant to. Used in a generalization of
- its mathematical meaning to describe sets of primitives or
- capabilities that, like a vector basis in geometry, span the
- entire `capability space' of the system and are in some sense
- non-overlapping or mutually independent. For example, in
- architectures such as the PDP-11 or VAX where all or nearly all
- registers can be used interchangeably in any role with respect to
- any instruction, the register set is said to be orthogonal. Or, in
- logic, the set of operators `not' and `or' is orthogonal,
- but the set `nand', `or', and `not' is not (because any
- one of these can be expressed in terms of the others). Also used
- in comments on human discourse: "This may be orthogonal to the
- discussion, but...."
-
- OS: /O-S/ 1. [Operating System] n. An acronym heavily used in email,
- occasionally in speech. 2. n.,obs. On ITS, an output spy. See
- appendix A.
-
- OS/2: /O S too/ n. The anointed successor to MS-DOS for Intel
- 286- and 386-based micros; proof that IBM/Microsoft couldn't get it
- right the second time, either. Mentioning it is usually good for a
- cheap laugh among hackers --- the design was so {baroque}, and
- the implementation of 1.x so bad, that 3 years after introduction
- you could still count the major {app}s shipping for it on the
- fingers of two hands --- in unary. Often called `Half-an-OS'. On
- January 28, 1991, Microsoft announced that it was dropping its OS/2
- development to concentrate on Windows, leaving the OS entirely in
- the hands of IBM; on January 29 they claimed the media had got the
- story wrong, but were vague about how. It looks as though OS/2 is
- moribund. See {vaporware}, {monstrosity}, {cretinous},
- {second-system effect}.
-
- out-of-band: [from telecommunications and network theory] adj.
- 1. In software, describes values of a function which are not in its
- `natural' range of return values, but are rather signals that
- some kind of exception has occurred. Many C functions, for
- example, return either a nonnegative integral value, or indicate
- failure with an out-of-band return value of -1. Compare
- {hidden flag}, {green bytes}. 2. Also sometimes used to
- describe what communications people call `shift characters',
- like the ESC that leads control sequences for many terminals, or
- the level shift indicators in the old 5-bit Baudot codes. 3. In
- personal communication, using methods other than email, such as
- telephones or {snail-mail}.
-
- overflow bit: n. 1. [techspeak] On some processors, an attempt to
- calculate a result too large for a register to hold causes a
- particular {flag} called an {overflow bit} to be set.
- 2. Hackers use the term of human thought too. "Well, the {{Ada}}
- description was {baroque} all right, but I could hack it OK until
- they got to the exception handling ... that set my overflow bit."
- 3. The hypothetical bit that will be set if a hacker doesn't get to
- make a trip to the Room of Porcelain Fixtures: "I'd better process
- an internal interrupt before the overflow bit gets set".
-
- overrun: n. 1. [techspeak] Term for a frequent consequence of data
- arriving faster than it can be consumed, esp. in serial line
- communications. For example, at 9600 baud there is almost exactly
- one character per millisecond, so if your {silo} can hold only
- two characters and the machine takes longer than 2 msec to get to
- service the interrupt, at least one character will be lost. 2. Also
- applied to non-serial-I/O communications. "I forgot to pay my
- electric bill due to mail overrun." "Sorry, I got four phone
- calls in 3 minutes last night and lost your message to
- overrun." When {thrash}ing at tasks, the next person to make a
- request might be told "Overrun!" 3. More loosely, may refer to a
- {buffer overflow} not necessarily related to processing time (as
- in {overrun screw}).
-
- overrun screw: [C programming] n. A variety of {fandango on core}
- produced by scribbling past the end of an array (C has no checks
- for this). This is relatively benign and easy to spot if the array
- is static; if it is auto, the result may be to {smash the stack}
- --- often resulting in {heisenbug}s of the most diabolical
- subtlety. The term `overrun screw' is used esp. of scribbles
- beyond the end of arrays allocated with `malloc(3)'; this
- typically trashes the allocation header for the next block in the
- {arena}, producing massive lossage within malloc and often
- a core dump on the next operation to use `stdio(3)' or
- `malloc(3)' itself. See {spam}, {overrun}; see also
- {memory leak}, {aliasing bug}, {precedence lossage},
- {fandango on core}, {secondary damage}.
-
- = P =
-
- P.O.D.: /P-O-D/ Acronym for `Piece Of Data' (as opposed to a
- code section). Usage: pedantic and rare. See also {pod}.
-
- padded cell: n. Where you put {luser}s so they can't hurt
- anything. A program that limits a luser to a carefully restricted
- subset of the capabilities of the host system (for example, the
- `rsh(1)' utility on USG UNIX). Note that this is different
- from an {iron box} because it is overt and not aimed at
- enforcing security so much as protecting others (and the luser)
- from the consequences of the luser's boundless na"ivet'e (see
- {na"ive}). Also `padded cell environment'.
-
- page in: [MIT] vi. 1. To become aware of one's surroundings again after
- having paged out (see {page out}). Usually confined to the sarcastic
- comment: "Eric pages in. Film at 11." See {film at 11}.
- 2. Syn. `swap in'; see {swap}.
-
- page out: [MIT] vi. 1. To become unaware of one's surroundings
- temporarily, due to daydreaming or preoccupation. "Can you repeat
- that? I paged out for a minute." See {page in}. Compare
- {glitch}, {thinko}. 2. Syn. `swap out'; see {swap}.
-
- pain in the net: n. A {flamer}.
-
- paper-net: n. Hackish way of referring to the postal service,
- analogizing it to a very slow, low-reliability network. USENET
- {sig block}s not uncommonly include a "Paper-Net:" header just
- before the sender's postal address; common variants of this are
- "Papernet" and "P-Net". Compare {voice-net}, {snail-mail}.
-
- param: /p*-ram'/ n. Shorthand for `parameter'. See also
- {parm}; Compare {arg}, {var}.
-
- parent message: n. See {followup}.
-
- parity errors: pl.n. Little lapses of attention or (in more severe
- cases) consciousness, usually brought on by having spent all night
- and most of the next day hacking. "I need to go home and crash;
- I'm starting to get a lot of parity errors." Derives from a
- relatively common but nearly always correctable transient error in
- RAM hardware.
-
- Parkinson's Law of Data: prov. "Data expands to fill the space
- available for storage"; buying more memory encourages the use of
- more memory-intensive techniques. It has been observed over the
- last 10 years that the memory usage of evolving systems tends to
- double roughly once every 18 months. Fortunately, memory density
- available for constant dollars tends to double about once every
- 12 months (see {Moore's Law}); unfortunately, the laws of
- physics guarantee that the latter cannot continue indefinitely.
-
- parm: /parm/ n. Further-compressed form of {param}. This term
- is an IBMism, and written use is almost unknown outside IBM
- shops; spoken /parm/ is more widely distributed, but the synonym
- {arg} is favored among hackers. Compare {arg}, {var}.
-
- parse: [from linguistic terminology] vt. 1. To determine the
- syntactic structure of a sentence or other utterance (close to the
- standard English meaning). "That was the one I saw you." "I
- can't parse that." 2. More generally, to understand or
- comprehend. "It's very simple; you just kretch the glims and then
- aos the zotz." "I can't parse that." 3. Of fish, to have to
- remove the bones yourself. "I object to parsing fish", means "I
- don't want to get a whole fish, but a sliced one is okay". A
- `parsed fish' has been deboned. There is some controversy over
- whether `unparsed' should mean `bony', or also mean
- `deboned'.
-
- Pascal:: n. An Algol-descended language designed by Niklaus Wirth
- on the CDC 6600 around 1967--68 as an instructional tool for
- elementary programming. This language, designed primarily to keep
- students from shooting themselves in the foot and thus extremely
- restrictive from a general-purpose-programming point of view, was
- later promoted as a general-purpose tool and, in fact, became the
- ancestor of a large family of languages including Modula-2 and
- {{Ada}} (see also {bondage-and-discipline language}). The
- hackish point of view on Pascal was probably best summed up by a
- devastating (and, in its deadpan way, screamingly funny) 1981 paper
- by Brian Kernighan (of {K&R} fame) entitled "Why Pascal is
- Not My Favorite Programming Language", which was never formally
- published but has circulated widely via photocopies. Part of his
- discussion is worth repeating here, because its criticisms are
- still apposite to Pascal itself after ten years of improvement and
- could also stand as an indictment of many other
- bondage-and-discipline languages. At the end of a summary of the
- case against Pascal, Kernighan wrote:
-
- 9. There is no escape
-
- This last point is perhaps the most important. The language is
- inadequate but circumscribed, because there is no way to escape its
- limitations. There are no casts to disable the type-checking when
- necessary. There is no way to replace the defective run-time
- environment with a sensible one, unless one controls the compiler that
- defines the "standard procedures". The language is closed.
-
- People who use Pascal for serious programming fall into a fatal trap.
- Because the language is impotent, it must be extended. But each group
- extends Pascal in its own direction, to make it look like whatever
- language they really want. Extensions for separate compilation,
- FORTRAN-like COMMON, string data types, internal static variables,
- initialization, octal numbers, bit operators, etc., all add to the
- utility of the language for one group but destroy its portability to
- others.
-
- I feel that it is a mistake to use Pascal for anything much beyond its
- original target. In its pure form, Pascal is a toy language, suitable
- for teaching but not for real programming.
-
- Pascal has since been almost entirely displaced (by {C}) from the
- niches it had acquired in serious applications and systems
- programming, but retains some popularity as a hobbyist language in
- the MS-DOS and Macintosh worlds.
-
- patch: 1. n. A temporary addition to a piece of code, usually as a
- {quick-and-dirty} remedy to an existing bug or misfeature. A
- patch may or may not work, and may or may not eventually be
- incorporated permanently into the program. Distinguished from a
- {diff} or {mod} by the fact that a patch is generated by more
- primitive means than the rest of the program; the classical
- examples are instructions modified by using the front panel
- switches, and changes made directly to the binary executable of a
- program originally written in an {HLL}. Compare {one-line
- fix}. 2. vt. To insert a patch into a piece of code. 3. [in the
- UNIX world] n. A {diff} (sense 2). 4. A set of modifications to
- binaries to be applied by a patching program. IBM operating
- systems often receive updates to the operating system in the form
- of absolute hexadecimal patches. If you have modified your OS, you
- have to disassemble these back to the source. The patches might
- later be corrected by other patches on top of them (patches were
- said to "grow scar tissue"). The result was often a convoluted
- {patch space} and headaches galore.
-
- There is a classic story of a {tiger team} penetrating a secure
- military computer that illustrates the danger inherent in binary
- patches (or, indeed, any that you can't --- or don't --- inspect
- and examine before installing). They couldn't find any {trap
- door}s or any way to penetrate security of IBM's OS, so they made a
- site visit to an IBM office (remember, these were official military
- types who were purportedly on official business), swiped some IBM
- stationery, and created a fake patch. The patch was actually the
- trapdoor they needed. The patch was distributed at about the right
- time for an IBM patch, had official stationery and all accompanying
- documentation, and was dutifully installed. The installation
- manager very shortly thereafter learned something about proper
- procedures.
-
- patch space: n. An unused block of bits left in a binary so that
- it can later be modified by insertion of machine-language
- instructions there (typically, the patch space is modified to
- contain new code, and the superseded code is patched to contain a
- jump or call to the patch space). The widening use of HLLs has
- made this term rare; it is now primarily historical outside IBM
- shops. See {patch} (sense 4), {zap} (sense 4), {hook}.
-
- path: n. 1. A {bang path} or explicitly routed {{Internet
- address}}; a node-by-node specification of a link between two
- machines. 2. [UNIX] A filename, fully specified relative to the
- root directory (as opposed to relative to the current directory;
- the latter is sometimes called a `relative path'). This is also
- called a `pathname'. 3. [UNIX and MS-DOS] The `search
- path', an environment variable specifying the directories in which
- the {shell} (COMMAND.COM, under MS-DOS) should look for commands.
- Other, similar constructs abound under UNIX (for example, the
- C preprocessor has a `search path' it uses in looking for
- `#include' files).
-
- pathological: adj. 1. [scientific computation] Used of a data set
- that is grossly atypical of normal expected input, esp. one that
- exposes a weakness or bug in whatever algorithm one is using. An
- algorithm that can be broken by pathological inputs may still be
- useful if such inputs are very unlikely to occur in practice.
- 2. When used of test input, implies that it was purposefully
- engineered as a worst case. The implication in both senses is that
- the data is spectacularly ill-conditioned or that someone had to
- explicitly set out to break the algorithm in order to come up with
- such a crazy example. 3. Also said of an unlikely collection of
- circumstances. "If the network is down and comes up halfway
- through the execution of that command by root, the system may
- just crash." "Yes, but that's a pathological case." Often used
- to dismiss the case from discussion, with the implication that the
- consequences are acceptable since that they will happen so
- infrequently (if at all) that there is no justification for
- going to extra trouble to handle that case (see sense 1).
-
- payware: /pay'weir/ n. Commercial software. Oppose {shareware}
- or {freeware}.
-
- PBD: /P-B-D/ [abbrev. of `Programmer Brain Damage'] n. Applied
- to bug reports revealing places where the program was obviously
- broken by an incompetent or short-sighted programmer. Compare
- {UBD}; see also {brain-damaged}.
-
- PC-ism: /P-C-izm/ n. A piece of code or coding technique that
- takes advantage of the unprotected single-tasking environment in
- IBM PCs and the like, e.g., by busy-waiting on a hardware register,
- direct diddling of screen memory, or using hard timing loops.
- Compare {ill-behaved}, {vaxism}, {unixism}. Also,
- `PC-ware' n., a program full of PC-isms on a machine with a more
- capable operating system. Pejorative.
-
- PD: /P-D/ adj. Common abbreviation for `public domain', applied
- to software distributed over {USENET} and from Internet archive
- sites. Much of this software is not in fact public domain in
- the legal sense but travels under various copyrights granting
- reproduction and use rights to anyone who can {snarf} a copy. See
- {copyleft}.
-
- pdl: /pid'l/ or /puhd'l/ [acronym for `Push Down List'] 1. In
- ITS days, the preferred MITism for {stack}. 2. Dave Lebling, one
- of the co-authors of {Zork}; (his {network address} on the ITS
- machines was at one time pdl@dms). 3. `Program Design Language'.
- Any of a large class of formal and profoundly useless
- pseudo-languages in which {management} forces one to design
- programs. {Management} often expects it to be maintained in
- parallel with the code. See also {{flowchart}}. 4. To design
- using a program design language. "I've been pdling so long my
- eyes won't focus beyond 2 feet."
-
- PDP-10: [Programmed Data Processor model 10] n. The machine that
- made timesharing real. It looms large in hacker folklore because
- of its adoption in the mid-1970s by many university computing
- facilities and research labs, including the MIT AI Lab, Stanford,
- and CMU. Some aspects of the instruction set (most notably the
- bit-field instructions) are still considered unsurpassed. The 10
- was eventually eclipsed by the VAX machines (descendants of the
- PDP-11) when DEC recognized that the 10 and VAX product lines were
- competing with each other and decided to concentrate its software
- development effort on the more profitable VAX. The machine was
- finally dropped from DEC's line in 1983, following the failure of
- the Jupiter Project at DEC to build a viable new model. (Some
- attempts by other companies to market clones came to nothing; see
- {Foonly}) This event spelled the doom of {{ITS}} and the
- technical cultures that had spawned the original Jargon File, but
- by mid-1991 it had become something of a badge of honorable
- old-timerhood among hackers to have cut one's teeth on a PDP-10.
- See {{TOPS-10}}, {{ITS}}, {AOS}, {BLT}, {DDT}, {DPB},
- {EXCH}, {HAKMEM}, {JFCL}, {LDB}, {pop}, {push},
- appendix A.
-
- PDP-20: n. The most famous computer that never was. {PDP-10}
- computers running the {{TOPS-10}} operating system were labeled
- `DECsystem-10' as a way of differentiating them from the PDP-11.
- Later on, those systems running {TOPS-20} were labeled
- `DECSYSTEM-20' (the block capitals being the result of a lawsuit
- brought against DEC by Singer, which once made a computer called
- `system-10'), but contrary to popular lore there was never a
- `PDP-20'; the only difference between a 10 and a 20 was the
- operating system and the color of the paint. Most (but not all)
- machines sold to run TOPS-10 were painted `Basil Blue', whereas
- most TOPS-20 machines were painted `Chinese Red' (often mistakenly
- called orange).
-
- peek: n.,vt. (and {poke}) The commands in most microcomputer
- BASICs for directly accessing memory contents at an absolute
- address; often extended to mean the corresponding constructs in any
- {HLL} (peek reads memory, poke modifies it). Much hacking on
- small, non-MMU micros consists of {peek}ing around memory, more
- or less at random, to find the location where the system keeps
- interesting stuff. Long (and variably accurate) lists of such
- addresses for various computers circulate (see {{interrupt list,
- the}}). The results of {poke}s at these addresses may be highly
- useful, mildly amusing, useless but neat, or (most likely) total
- {lossage} (see {killer poke}).
-
- pencil and paper: n. An archaic information storage and
- transmission device that works by depositing smears of graphite on
- bleached wood pulp. More recent developments in paper-based
- technology include improved `write-once' update devices which use
- tiny rolling heads similar to mouse balls to deposit colored
- pigment. All these devices require an operator skilled at
- so-called `handwriting' technique. These technologies are
- ubiquitous outside hackerdom, but nearly forgotten inside it. Most
- hackers had terrible handwriting to begin with, and years of
- keyboarding tend to have encouraged it to degrade further. Perhaps
- for this reason, hackers deprecate pencil-and-paper technology and
- often resist using it in any but the most trivial contexts. See
- also appendix B.
-
- peon: n. A person with no special ({root} or {wheel})
- privileges on a computer system. "I can't create an account on
- *foovax* for you; I'm only a peon there."
-
- percent-S: /per-sent' es'/ [From the code in C's `printf(3)'
- library function used to insert an arbitrary string argument] n. An
- unspecified person or object. "I was just talking to some
- percent-s in administration." Compare {random}.
-
- perf: /perf/ n. See {chad} (sense 1). The term `perfory'
- /per'f*-ree/ is also heard.
-
- perfect programmer syndrome: n. Arrogance; the egotistical
- conviction that one is above normal human error. Most frequently
- found among programmers of some native ability but relatively
- little experience (especially new graduates; their perceptions may
- be distorted by a history of excellent performance at solving {toy
- problem}s). "Of course my program is correct, there is no need to
- test it." "Yes, I can see there may be a problem here, but
- *I'll* never type `rm -r /' while in {root}."
-
- Perl: /perl/ [Practical Extraction and Report Language, a.k.a
- Pathologically Eclectic Rubbish Lister] n. An interpreted language
- developed by Larry Wall (lwall@jpl.nasa.gov, author of
- `patch(1)' and `rn(1)') and distributed over USENET.
- Superficially resembles `awk(1)', but is much hairier (see
- {awk}). UNIX sysadmins, who are almost always incorrigible
- hackers, increasingly consider it one of the {languages of
- choice}. Perl has been described, in a parody of a famous remark
- about `lex(1)', as the "Swiss-Army chainsaw" of UNIX
- programming.
-
- pessimal: /pes'im-l/ [Latin-based antonym for `optimal'] adj.
- Maximally bad. "This is a pessimal situation." Also `pessimize'
- vt. To make as bad as possible. These words are the obvious
- Latin-based antonyms for `optimal' and `optimize', but for some
- reason they do not appear in most English dictionaries, although
- `pessimize' is listed in the OED.
-
- pessimizing compiler: /pes'*-mi:z`ing k*m-pi:l'r/ [antonym of
- `optimizing compiler'] n. A compiler that produces object code that
- is worse than the straightforward or obvious hand translation. The
- implication is that the compiler is actually trying to optimize the
- program, but through excessive cleverness is doing the opposite. A
- few pessimizing compilers have been written on purpose, however, as
- pranks or burlesques.
-
- peta-: /pe't*/ [SI] pref. See {{quantifiers}}.
-
- PETSCII: /pet'skee/ [abbreviation of PET ASCII] n. The variation
- (many would say perversion) of the {{ASCII}} character set used by
- the Commodore Business Machines PET series of personal computers
- and the later Commodore C64, C16, and C128 machines. The PETSCII
- set used left-arrow and up-arrow (as in old-style ASCII) instead of
- underscore and caret, placed the unshifted alphabet at positions
- 65--90, put the shifted alphabet at positions 193--218, and added
- graphics characters.
-
- phase: 1. n. The phase of one's waking-sleeping schedule with
- respect to the standard 24-hour cycle. This is a useful concept
- among people who often work at night and/or according to no fixed
- schedule. It is not uncommon to change one's phase by as much as 6
- hours per day on a regular basis. "What's your phase?" "I've
- been getting in about 8 P.M. lately, but I'm going to {wrap
- around} to the day schedule by Friday." A person who is roughly
- 12 hours out of phase is sometimes said to be in `night mode'.
- (The term `day mode' is also (but less frequently) used, meaning
- you're working 9 to 5 (or, more likely, 10 to 6).) The act of
- altering one's cycle is called `changing phase'; `phase
- shifting' has also been recently reported from Caltech.
- 2. `change phase the hard way': To stay awake for a very long
- time in order to get into a different phase. 3. `change phase
- the easy way': To stay asleep, etc. However, some claim that
- either staying awake longer or sleeping longer is easy, and that it
- is *shortening* your day or night that's hard (see {wrap
- around}). The `jet lag' that afflicts travelers who cross many
- time-zone boundaries may be attributed to two distinct causes: the
- strain of travel per se, and the strain of changing phase. Hackers
- who suddenly find that they must change phase drastically in a
- short period of time, particularly the hard way, experience
- something very like jet lag without traveling.
-
- phase of the moon: n. Used humorously as a random parameter on which
- something is said to depend. Sometimes implies unreliability of
- whatever is dependent, or that reliability seems to be dependent on
- conditions nobody has been able to determine. "This feature
- depends on having the channel open in mumble mode, having the foo
- switch set, and on the phase of the moon."
-
- True story: Once upon a time there was a bug that really did depend
- on the phase of the moon. There is a little subroutine that had
- traditionally been used in various programs at MIT to calculate an
- approximation to the moon's true phase. GLS incorporated this
- routine into a LISP program that, when it wrote out a file, would
- print a timestamp line almost 80 characters long. Very
- occasionally the first line of the message would be too long and
- would overflow onto the next line, and when the file was later read
- back in the program would {barf}. The length of the first line
- depended on both the precise date and time and the length of the
- phase specification when the timestamp was printed, and so the bug
- literally depended on the phase of the moon!
-
- The first paper edition of the Jargon File (Steele-1983) included
- an example of one of the timestamp lines that exhibited this bug, but
- the typesetter `corrected' it. This has since been described as
- the phase-of-the-moon-bug bug.
-
- phreaking: [from `phone phreak'] n. 1. The art and science of
- cracking the phone network (so as, for example, to make free
- long-distance calls). 2. By extension, security-cracking in any
- other context (especially, but not exclusively, on communications
- networks).
-
- At one time phreaking was a semi-respectable activity among
- hackers; there was a gentleman's agreement that phreaking as an
- intellectual game and a form of exploration was OK, but serious
- theft of services was taboo. There was significant crossover
- between the hacker community and the hard-core phone phreaks who
- ran semi-underground networks of their own through such media as
- the legendary `TAP Newsletter'. This ethos began to break
- down in the mid-1980s as wider dissemination of the techniques put
- them in the hands of less responsible phreaks. Around the same
- time, changes in the phone network made old-style technical
- ingenuity less effective as a way of hacking it, so phreaking came
- to depend more on overtly criminal acts such as stealing phone-card
- numbers. The crimes and punishments of gangs like the `414 group'
- turned that game very ugly. A few old-time hackers still phreak
- casually just to keep their hand in, but most these days have
- hardly even heard of `blue boxes' or any of the other
- paraphernalia of the great phreaks of yore.
-
- pico-: [SI: a quantifier
- meaning * 10^-12]
- pref. Smaller than {nano-}; used in the same rather loose
- connotative way as {nano-} and {micro-}. This usage is not yet
- common in the way {nano-} and {micro-} are, but should be
- instantly recognizable to any hacker. See also {{quantifiers}},
- {micro-}.
-
- pig, run like a: v. To run very slowly on given hardware, said of
- software. Distinct from {hog}.
-
- pilot error: [Sun: from aviation] n. A user's misconfiguration or
- misuse of a piece of software, producing apparently buglike results
- (compare {UBD}). "Joe Luser reported a bug in sendmail that
- causes it to generate bogus headers." "That's not a bug, that's
- pilot error. His `sendmail.cf' is hosed."
-
- ping: [from the TCP/IP acronym `Packet INternet Groper', prob.
- originally contrived to match the submariners' term for a sonar
- pulse] 1. n. Slang term for a small network message (ICMP ECHO)
- sent by a computer to check for the presence and aliveness of
- another. Occasionally used as a phone greeting. See {ACK},
- also {ENQ}. 2. vt. To verify the presence of. 3. vt. To get
- the attention of. From the UNIX command `ping(1)' that sends
- an ICMP ECHO packet to another host. 4. vt. To send a message to
- all members of a {mailing list} requesting an {ACK} (in order
- to verify that everybody's addresses are reachable). "We haven't
- heard much of anything from Geoff, but he did respond with an ACK
- both times I pinged jargon-friends."
-
- The funniest use of `ping' to date was described in January 1991 by
- Steve Hayman on the USENET group comp.sys.next. He was trying
- to isolate a faulty cable segment on a TCP/IP Ethernet hooked up to
- a NeXT machine, and got tired of having to run back to his console
- after each cabling tweak to see if the ping packets were getting
- through. So he used the sound-recording feature on the NeXT, then
- wrote a script that repeatedly invoked `ping(8)', listened for
- an echo, and played back the recording on each returned packet.
- Result? A program that caused the machine to repeat, over and
- over, "Ping ... ping ... ping ..." as long as the
- network was up. He turned the volume to maximum, ferreted through
- the building with one ear cocked, and found a faulty tee connector
- in no time.
-
- Pink-Shirt Book: `The Peter Norton Programmer's Guide to the IBM
- PC'. The original cover featured a picture of Peter Norton with a
- silly smirk on his face, wearing a pink shirt. Perhaps in
- recognition of this usage, the current edition has a different
- picture of Norton wearing a pink shirt. See also {{book titles}}.
-
- PIP: /pip/ [Peripheral Interchange Program] vt.,obs. To copy; from
- the program PIP on CP/M, RSX-11, RSTS/E, and OS/8 (derived from a
- utility on the PDP-6) that was used for file copying (and in OS/8
- and RT-11 for just about every other file operation you might want
- to do). It is said that when the program was originated, during the
- development of the PDP-6 in 1963, it was called ATLATL (`Anything,
- Lord, to Anything, Lord').
-
- pistol: [IBM] n. A tool that makes it all too easy for you to
- shoot yourself in the foot. "UNIX `rm *' makes such a nice
- pistol!"
-
- pizza box: [Sun] n. The largish thin box housing the electronics
- in (especially Sun) desktop workstations, so named because of its
- size and shape and the dimpled pattern that looks like air holes.
-
- Two meg single-platter removable disk packs used to be called pizzas,
- and the huge drive they were stuck into was referred to as a pizza
- oven. It's an index of progress that in the old days just the disk
- was pizza-sized, while now the entire computer is.
-
- pizza, ANSI standard: /an'see stan'd*rd peet'z*/ [CMU] Pepperoni
- and mushroom pizza. Coined allegedly because most pizzas ordered
- by CMU hackers during some period leading up to mid-1990 were of
- that flavor. See also {rotary debugger}; compare {tea, ISO
- standard cup of}.
-
- plain-ASCII: /playn-as'kee/ Syn. {flat-ASCII}.
-
- plan file: [UNIX] n. On systems that support {finger}, the
- `.plan' file in a user's home directory is displayed when the user
- is fingered. This feature was originally intended to be used to
- keep potential fingerers apprised of one's location and near-future
- plans, but has been turned almost universally to humorous and
- self-expressive purposes (like a {sig block}). See {Hacking X
- for Y}.
-
- platinum-iridium: adj. Standard, against which all others of the
- same category are measured. Usage: silly. The notion is that one
- of whatever it is has actually been cast in platinum-iridium alloy
- and placed in the vault beside the Standard Kilogram at the
- International Bureau of Weights and Measures near Paris. (From
- 1889 to 1960, the meter was defined to be the distance between two
- scratches in a platinum-iridium bar kept in that vault --- this
- replaced an earlier definition as 10^7 times the distance
- between the North Pole and the Equator along a meridian through
- Paris; unfortunately, this had been based on an inexact value of
- the circumference of the Earth. From 1960 to 1984 it was defined
- to be 1650763.73 wavelengths of the orange-red line of krypton-86
- propagating in a vacuum. It is now defined as the length of the
- path traveled by light in a vacuum in the time interval of
- 1/299,792,458 of a second. The kilogram is now the only unit of
- measure officially defined in terms of a unique artifact.) "This
- garbage-collection algorithm has been tested against the
- platinum-iridium cons cell in Paris." Compare {golden}.
-
- playpen: [IBM] n. A room where programmers work. Compare {salt
- mines}.
-
- playte: /playt/ 16 bits, by analogy with {nybble} and {{byte}}. Usage:
- rare and extremely silly. See also {dynner} and {crumb}.
-
- plingnet: /pling'net/ n. Syn. {UUCPNET}. Also see
- {{Commonwealth Hackish}}, which uses `pling' for {bang} (as in
- {bang path}).
-
- plokta: /plok't*/ [Acronym for `Press Lots Of Keys To Abort']
- v. To press random keys in an attempt to get some response from
- the system. One might plokta when the abort procedure for a
- program is not known, or when trying to figure out if the system is
- just sluggish or really hung. Plokta can also be used while trying
- to figure out any unknown key sequence for a particular operation.
- Someone going into `plokta mode' usually places both hands flat
- on the keyboard and presses down, hoping for some useful
- response.
-
- plonk: [USENET: possibly influenced by British slang `plonk' for
- cheap booze] The sound a {newbie} makes as he falls to the bottom
- of a {kill file}. Used almost exclusively in the {newsgroup}
- talk.bizarre, this term (usually written "*plonk*") is a
- form of public ridicule.
-
- plugh: /ploogh/ [from the {ADVENT} game] v. See {xyzzy}.
-
- plumbing: [UNIX] n. Term used for {shell} code, so called because
- of the prevalence of `pipelines' that feed the output of one
- program to the input of another. Under UNIX, user utilities can
- often be implemented or at least prototyped by a suitable
- collection of pipelines and temp-file grinding encapsulated in a
- shell script; this is much less effort than writing C every time,
- and the capability is considered one of UNIX's major winning
- features. Esp. used in the construction `hairy plumbing' (see
- {hairy}). "You can kluge together a basic spell-checker out of
- `sort(1)', `comm(1)', and `tr(1)' with a little
- plumbing." See also {tee}.
-
- PM: /P-M/ 1. v. (from `preventive maintenance') To bring
- down a machine for inspection or test purposes; see {scratch
- monkey}. 2. n. Abbrev. for `Presentation Manager', an
- {elephantine} OS/2 graphical user interface. See also
- {provocative maintenance}.
-
- pnambic: /p*-nam'bik/ [Acronym from the scene in the film
- version of `The Wizard of Oz' in which true nature of the
- wizard is first discovered: "Pay no attention to the man behind
- the curtain."] 1. A stage of development of a process or function
- that, owing to incomplete implementation or to the complexity of
- the system, requires human interaction to simulate or replace some
- or all of the actions, inputs, or outputs of the process or
- function. 2. Of or pertaining to a process or function whose
- apparent operations are wholly or partially falsified. 3. Requiring
- {prestidigitization}.
-
- The ultimate pnambic product was "Dan Bricklin's Demo", a program
- which supported flashy user-interface design prototyping. There is
- a related maxim among hackers: "Any sufficiently advanced
- technology is indistinguishable from a rigged demo." See
- {magic}, sense 1, for illumination of this point.
-
- pod: [allegedly from acronym POD for `Prince Of Darkness'] n. A
- Diablo 630 (or, latterly, any letter-quality impact printer). From
- the DEC-10 PODTYPE program used to feed formatted text to it.
- See also {P.O.D.}
-
- poke: n.,vt. See {peek}.
-
- poll: v.,n. 1. [techspeak] The action of checking the status of an
- input line, sensor, or memory location to see if a particular
- external event has been registered. 2. To repeatedly call or check
- with someone: "I keep polling him, but he's not answering his
- phone; he must be swapped out." 3. To ask. "Lunch? I poll for
- a takeout order daily."
-
- polygon pusher: n. A chip designer who spends most of his or her time at
- the physical layout level (which requires drawing *lots* of
- multi-colored polygons). Also `rectangle slinger'.
-
- POM: /P-O-M/ n. Common acronym for {phase of the moon}. Usage:
- usually in the phrase `POM-dependent', which means {flaky}.
-
- pop: [from the operation that removes the top of a stack, and the
- fact that procedure return addresses are saved on the stack] (also
- capitalized `POP' /pop/) 1. vt. To remove something from a
- {stack} or {pdl}. If a person says he/she has popped
- something from his stack, that means he/she has finally finished
- working on it and can now remove it from the list of things hanging
- overhead. 2. When a discussion gets to too deep a level of detail
- so that the main point of the discussion is being lost, someone
- will shout "Pop!", meaning "Get back up to a higher level!"
- The shout is frequently accompanied by an upthrust arm with a
- finger pointing to the ceiling.
-
- POPJ: /pop'J/ [from a {PDP-10} return-from-subroutine
- instruction] n.,v. To return from a digression. By verb doubling,
- "Popj, popj" means roughly "Now let's see, where were we?"
- See {RTI}.
-
- posing: n. On a {MUD}, the use of `:' or an equivalent
- command to announce to other players that one is taking a certain
- physical action that has no effect on the game (it may, however,
- serve as a social signal or propaganda device that induces other
- people to take game actions). For example, if one's character name
- is Firechild, one might type `: looks delighted at the idea and
- begins hacking on the nearest terminal' to broadcast a message that
- says "Firechild looks delighted at the idea and begins hacking on
- the nearest terminal". See {RL}.
-
- post: v. To send a message to a {mailing list} or {newsgroup}.
- Distinguished in context from `mail'; one might ask, for
- example: "Are you going to post the patch or mail it to known
- users?"
-
- posting: n. Noun corresp. to v. {post} (but note that
- {post} can be nouned). Distinguished from a `letter' or ordinary
- {email} message by the fact that it is broadcast rather than
- point-to-point. It is not clear whether messages sent to a small
- mailing list are postings or email; perhaps the best dividing line
- is that if you don't know the names of all the potential
- recipients, it is a posting.
-
- postmaster: n. The email contact and maintenance person at a site
- connected to the Internet or UUCPNET. Often, but not always, the
- same as the {admin}. It is conventional for each machine to have
- a `postmaster' address that is aliased to this person.
-
- pound on: vt. Syn. {bang on}.
-
- power cycle: vt. (also, `cycle power' or just `cycle') To
- power off a machine and then power it on immediately, with the
- intention of clearing some kind of {hung} or {gronk}ed state.
- Syn. {120 reset}; see also {Big Red Switch}. Compare
- {Vulcan nerve pinch}, {bounce}, and {boot}, and see the
- AI Koan in appendix A about Tom Knight and the novice.
-
- PPN: /P-P-N/, /pip'n/ [from `Project-Programmer Number'] n. A
- user-ID under {{TOPS-10}} and its various mutant progeny at SAIL,
- BBN, CompuServe, and elsewhere. Old-time hackers from the PDP-10
- era sometimes use this to refer to user IDs on other systems as
- well.
-
- precedence lossage: /pre's*-dens los'*j/ [C programmers] n. Coding
- error in an expression due to unexpected grouping of arithmetic or
- logical operators by the compiler. Used esp. of certain common
- coding errors in C due to the nonintuitively low precedence levels
- of `&', `|', `^', `<<', and `>>' (for this
- reason, experienced C programmers deliberately forget the
- language's {baroque} precedence hierarchy and parenthesize
- defensively). Can always be avoided by suitable use of
- parentheses. {LISP} fans enjoy pointing out that this can't
- happen in *their* favorite language, which eschews precedence
- entirely, requiring one to use explicit parentheses everywhere.
- See {aliasing bug}, {memory leak}, {smash the stack},
- {fandango on core}, {overrun screw}.
-
- prepend: /pree`pend'/ [by analogy with `append'] vt. To
- prefix. As with `append' (but not `prefix' or `suffix' as a
- verb), the direct object is always the thing being added and not
- the original word (or character string, or whatever). "If you
- prepend a semicolon to the line, the translation routine will pass
- it through unaltered."
-
- prestidigitization: /pres`t*-di`j*-ti:-zay'sh*n/ n. 1. The act
- of putting something into digital notation via sleight of hand.
- 2. Data entry through legerdemain.
-
- pretty pictures: n. [scientific computation] The next step up from
- {numbers}. Interesting graphical output from a program that may
- not have any sensible relationship to the system the program is
- intended to model. Good for showing to {management}.
-
- prettyprint: /prit'ee-print/ (alt. `pretty-print') v. 1. To
- generate `pretty' human-readable output from a {hairy} internal
- representation; esp. used for the process of {grind}ing (sense 2)
- LISP code. 2. To format in some particularly slick and
- nontrivial way.
-
- pretzel key: [Mac users] n. See {command key}.
-
- prime time: [from TV programming] n. Normal high-usage hours on a
- timesharing system; the day shift. Avoidance of prime time is a
- major reason for {night mode} hacking.
-
- priority interrupt: [from the hardware term] n. Describes any
- stimulus compelling enough to yank one right out of {hack mode}.
- Classically used to describe being dragged away by an {SO} for
- immediate sex, but may also refer to more mundane interruptions
- such as a fire alarm going off in the near vicinity. Also called
- an {NMI} (non-maskable interrupt), especially in PC-land.
-
- profile: n. 1. A control file for a program, esp. a text file
- automatically read from each user's home directory and intended to
- be easily modified by the user in order to customize the program's
- behavior. Used to avoid {hardcoded} choices. 2. [techspeak] A
- report on the amounts of time spent in each routine of a program,
- used to find and {tune} away the {hot spot}s in it. This sense
- is often verbed. Some profiling modes report units other than time
- (such as call counts) and/or report at granularities other than
- per-routine, but the idea is similar.
-
- proglet: /prog'let/ [UK] n. A short extempore program written
- to meet an immediate, transient need. Often written in BASIC,
- rarely more than a dozen lines long, and contains no subroutines.
- The largest amount of code that can be written off the top of one's
- head, that does not need any editing, and that runs correctly the
- first time (this amount varies significantly according to the
- language one is using). Compare {toy program}, {noddy},
- {one-liner wars}.
-
- program: n. 1. A magic spell cast over a computer allowing it to
- turn one's input into error messages. 2. An exercise in
- experimental epistemology. 3. A form of art, ostensibly intended
- for the instruction of computers, which is nevertheless almost
- inevitably a failure if other programmers can't understand it.
-
- Programmer's Cheer: "Shift to the left! Shift to the right! Pop
- up, push down! Byte! Byte! Byte!" A joke so old it has hair on
- it.
-
- programming: n. 1. The art of debugging a blank sheet of paper (or,
- in these days of on-line editing, the art of debugging an empty
- file). 2. n. A pastime similar to banging one's head against a
- wall, but with fewer opportunities for reward. 3. n. The most fun
- you can have with your clothes on (although clothes are not
- mandatory).
-
- propeller head: n. Used by hackers, this is syn. with {computer
- geek}. Non-hackers sometimes use it to describe all techies.
- Prob. derives from SF fandom's tradition (originally invented by
- old-time fan Ray Faraday Nelson) of propeller beanies as fannish
- insignia (though nobody actually wears them except as a joke).
-
- propeller key: [Mac users] n. See {command key}.
-
- proprietary: adj. 1. In {marketroid}-speak, superior; implies a
- product imbued with exclusive magic by the unmatched brilliance of
- the company's hardware or software designers. 2. In the language
- of hackers and users, inferior; implies a product not conforming to
- open-systems standards, and thus one that puts the customer at the
- mercy of a vendor able to gouge freely on service and upgrade
- charges after the initial sale has locked the customer in (that's
- assuming it wasn't too expensive in the first place).
-
- protocol: n. As used by hackers, this never refers to niceties
- about the proper form for addressing letters to the Papal Nuncio or
- the order in which one should use the forks in a Russian-style
- place setting; hackers don't care about such things. It is used
- instead to describe any set of rules that allow different machines
- or pieces of software to coordinate with each other without
- ambiguity. So, for example, it does include niceties about the
- proper form for addressing packets on a network or the order in
- which one should use the forks in the Dining Philosophers Problem.
- It implies that there is some common message format and an accepted set
- of primitives or commands that all parties involved understand, and
- that transactions among them follow predictable logical sequences.
- See also {handshaking}, {do protocol}.
-
- provocative maintenance: [common ironic mutation of `preventive
- maintenance'] n. Actions performed upon a machine at regularly
- scheduled intervals to ensure that the system remains in a usable
- state. So called because it is all too often performed by a
- {field servoid} who doesn't know what he is doing; this results
- in the machine's remaining in an *un*usable state for an
- indeterminate amount of time. See also {scratch monkey}.
-
- prowler: [UNIX] n. A {daemon} that is run periodically (typically
- once a week) to seek out and erase {core} files, truncate
- administrative logfiles, nuke `lost+found' directories, and
- otherwise clean up the {cruft} that tends to pile up in the
- corners of a file system. See also {GFR}, {reaper},
- {skulker}.
-
- pseudo: /soo'doh/ [USENET: truncation of `pseudonym'] n. 1. An
- electronic-mail or {USENET} persona adopted by a human for
- amusement value or as a means of avoiding negative repercussions of
- one's net.behavior; a `nom de USENET', often associated with
- forged postings designed to conceal message origins. Perhaps the
- best-known and funniest hoax of this type is {BIFF}.
- 2. Notionally, a {flamage}-generating AI program simulating a
- USENET user. Many flamers have been accused of actually being such
- entities, despite the fact that no AI program of the required
- sophistication yet exists. However, in 1989 there was a famous
- series of forged postings that used a phrase-frequency-based
- travesty generator to simulate the styles of several well-known
- flamers; it was based on large samples of their back postings
- (compare {Dissociated Press}). A significant number of people
- were fooled by the forgeries, and the debate over their
- authenticity was settled only when the perpetrator came forward to
- publicly admit the hoax.
-
- pseudoprime: n. A backgammon prime (six consecutive occupied
- points) with one point missing. This term is an esoteric pun
- derived from a mathematical method that, rather than determining
- precisely whether a number is prime (has no divisors), uses a
- statistical technique to decide whether the number is `probably'
- prime. A number that passes this test is called a pseudoprime.
- The hacker backgammon usage stems from the idea that a pseudoprime
- is almost as good as a prime: it does the job of a prime until
- proven otherwise, and that probably won't happen.
-
- pseudosuit: /soo'doh-s[y]oot`/ n. A {suit} wannabee; a hacker
- who has decided that he wants to be in management or administration
- and begins wearing ties, sport coats, and (shudder!) suits
- voluntarily. It's his funeral. See also {lobotomy}.
-
- psychedelicware: /si:`k*-del'-ik-weir/ [UK] n. Syn.
- {display hack}. See also {smoking clover}.
-
- psyton: /si:'ton/ [TMRC] n. The elementary particle carrying the
- sinister force. The probability of a process losing is
- proportional to the number of psytons falling on it. Psytons are
- generated by observers, which is why demos are more likely to fail
- when lots of people are watching. [This term appears to have been
- largely superseded by {bogon}; see also {quantum bogodynamics}.
- --- ESR]
-
- pubic directory: [NYU] (also `pube directory' /pyoob'
- d*-rek't*-ree/) n. The `pub' (public) directory on a machine that
- allows {FTP} access. So called because it is the default
- location for {SEX} (sense 1). "I'll have the source in the
- pube directory by Friday."
-
- puff: vt. To decompress data that has been crunched by Huffman
- coding. At least one widely distributed Huffman decoder program
- was actually *named* `PUFF', but these days it is usually
- packaged with the encoder. Oppose {huff}.
-
- punched card:: alt. `punch card' [techspeak] n.obs. The signature
- medium of computing's {Stone Age}, now obsolescent outside of
- some IBM shops. The punched card actually predated computers
- considerably, originating in 1801 as a control device for
- mechanical looms. The version patented by Hollerith and used with
- mechanical tabulating machines in the 1890 U.S. Census was a piece
- of cardboard about 90 mm by 215 mm, designed to fit exactly in the
- currency trays used for that era's larger dollar bills.
-
- IBM (which originated as a tabulating-machine manufacturer) married
- the punched card to computers, encoding binary information as
- patterns of small rectangular holes; one character per column,
- 80 columns per card. Other coding schemes, sizes of card, and
- hole shapes were tried at various times.
-
- The 80-column width of most character terminals is a legacy of the
- IBM punched card; so is the size of the quick-reference cards
- distributed with many varieties of computers even today. See
- {chad}, {chad box}, {eighty-column mind}, {green card},
- {dusty deck}, {lace card}, {card walloper}.
-
- punt: [from the punch line of an old joke referring to American
- football: "Drop back 15 yards and punt!"] v. 1. To give up,
- typically without any intention of retrying. "Let's punt the
- movie tonight." "I was going to hack all night to get this
- feature in, but I decided to punt" may mean that you've decided
- not to stay up all night, and may also mean you're not ever even
- going to put in the feature. 2. More specifically, to give up on
- figuring out what the {Right Thing} is and resort to an
- inefficient hack. 3. A design decision to defer solving a
- problem, typically because one cannot define what is desirable
- sufficiently well to frame an algorithmic solution. "No way to
- know what the right form to dump the graph in is --- we'll punt
- that for now." 4. To hand a tricky implementation problem off
- to some other section of the design. "It's too hard to get the
- compiler to do that; let's punt to the runtime system."
-
- Purple Book: n. The `System V Interface Definition'. The covers
- of the first editions were an amazingly nauseating shade of
- off-lavender. See also {{book titles}}.
-
- push: [from the operation that puts the current information on a
- stack, and the fact that procedure return addresses are saved on
- a stack] Also PUSH /push/ or PUSHJ /push'J/ (the latter based
- on the PDP-10 procedure call instruction). 1. To put something
- onto a {stack} or {pdl}. If one says that something has been
- pushed onto one's stack, it means that the Damoclean list of things
- hanging over ones's head has grown longer and heavier yet. This may
- also imply that one will deal with it *before* other pending
- items; otherwise one might say that the thing was `added to my queue'.
- 2. vi. To enter upon a digression, to save the current discussion
- for later. Antonym of {pop}; see also {stack}, {pdl}.
-
- = Q =
-
- quad: n. 1. Two bits; syn. for {quarter}, {crumb},
- {tayste}. 2. A four-pack of anything (compare {hex}, sense 2).
- 3. The rectangle or box glyph used in the APL language for various
- arcane purposes mostly related to I/O. Former Ivy-Leaguers and
- Oxbridge types are said to associate it with nostalgic memories of
- dear old University.
-
- quadruple bucky: n., obs. 1. On an MIT {space-cadet keyboard},
- use of all four of the shifting keys (control, meta, hyper, and
- super) while typing a character key. 2. On a Stanford or MIT
- keyboard in {raw mode}, use of four shift keys while typing a
- fifth character, where the four shift keys are the control and meta
- keys on *both* sides of the keyboard. This was very difficult
- to do! One accepted technique was to press the left-control and
- left-meta keys with your left hand, the right-control and
- right-meta keys with your right hand, and the fifth key with your
- nose.
-
- Quadruple-bucky combinations were very seldom used in practice,
- because when one invented a new command one usually assigned it to
- some character that was easier to type. If you want to imply that
- a program has ridiculously many commands or features, you can say
- something like: "Oh, the command that makes it spin the tapes while
- whistling Beethoven's Fifth Symphony is quadruple-bucky-cokebottle."
- See {double bucky}, {bucky bits}, {cokebottle}.
-
- quantifiers:: In techspeak and jargon, the standard metric
- prefixes used in the SI (Syst`eme International) conventions for
- scientific measurement have dual uses. With units of time or
- things that come in powers of 10, such as money, they retain their
- usual meanings of multiplication by powers of 1000 = 10^3.
- But when used with bytes or other things that naturally come in
- powers of 2, they usually denote multiplication by powers of
- 1024 = 2^{10}. Here are the magnifying prefixes in jargon
- use:
-
- prefix decimal binary
- kilo- 1000^1 1024^1 = 2^10 = 1,024
- mega- 1000^2 1024^2 = 2^20 = 1,048,576
- giga- 1000^3 1024^3 = 2^30 = 1,073,741,824
- tera- 1000^4 1024^4 = 2^40 = 1,099,511,627,776
- peta- 1000^5 1024^5 = 2^50 = 1,125,899,906,842,624
- exa- 1000^6 1024^6 = 2^60 = 1,152,921,504,606,846,976
-
- Here are the fractional prefixes:
-
- *prefix decimal jargon usage*
- milli- 1000^-1 (seldom used in jargon)
- micro- 1000^-2 small or human-scale (see {micro-})
- nano- 1000^-3 even smaller (see {nano-})
- pico- 1000^-4 even smaller yet (see {pico-})
- femto- 1000^-5 (not used in jargon---yet)
- atto- 1000^-6 (not used in jargon---yet)
-
- The binary peta- and exa- loadings are not in common use---yet,
- and the prefix milli-, denoting multiplication by 1000^{-1},
- has always been rare (there is, however, a standard joke about the
- `millihelen' --- notionally, the amount of beauty required to
- launch one ship). See the entries on {micro-}, {pico-}, and
- {nano-} for more information on connotative jargon use of these
- terms. `Femto' and `atto' (which, interestingly, derive not
- from Greek but from Danish) have not yet acquired jargon loadings,
- though it is easy to predict what those will be once computing
- technology enters the required realms of magnitude (however, see
- {attoparsec}).
-
- There are, of course, some standard unit prefixes for powers of
- 10. In the following table, the `prefix' column is the
- international standard suffix for the appropriate power of ten; the
- `binary' column lists jargon abbreviations and words for the
- corresponding power of 2. The B-suffixed forms are commonly used
- for byte quantities; the words `meg' and `gig' are nouns which may
- (but do not always) pluralize with `s'.
-
- prefix decimal binary pronunciation
- kilo- k K, KB, /kay/
- mega- M M, MB, meg /meg/
- giga- G G, GB, gig /gig/,/jig/
-
- Confusingly, hackers often use K as though it were a suffix or
- numeric multiplier rather than a prefix; thus "2K dollars". This
- is also true (though less commonly) of G and M.
-
- Note that the formal SI metric prefix for 1000 is `k'; some use
- this strictly, reserving `K' for multiplication by 1024 (KB is
- `kilobytes').
-
- K, M, and G used alone refer to quantities of bytes; thus, 64G is
- 64 gigabytes and `a K' is a kilobyte (compare mainstream use of `a G'
- as short for `a grand', that is, $1000). Whether one pronounces
- `gig' with hard or soft `g' depends on what one thinks the proper
- pronunciation of `giga-' is.
-
- Confusing 1000 and 1024 (or other powers of 2 and 10 close in
- magnitude) --- for example, describing a memory in units of
- 500K or 524K instead of 512K --- is a sure sign of the
- {marketroid}.
-
- quantum bogodynamics: /kwon'tm boh`goh-di:-nam'iks/ n. A theory
- that characterizes the universe in terms of bogon sources (such as
- politicians, used-car salesmen, TV evangelists, and {suit}s in
- general), bogon sinks (such as taxpayers and computers), and
- bogosity potential fields. Bogon absorption, of course, causes
- human beings to behave mindlessly and machines to fail (and may
- also cause both to emit secondary bogons); however, the precise
- mechanics of the bogon-computron interaction are not yet understood
- and remain to be elucidated. Quantum bogodynamics is most often
- invoked to explain the sharp increase in hardware and software
- failures in the presence of suits; the latter emit bogons, which
- the former absorb. See {bogon}, {computron}, {suit},
- {psyton}.
-
- quarter: n. Two bits. This in turn comes from the `pieces of
- eight' famed in pirate movies --- Spanish gold pieces that could be
- broken into eight pie-slice-shaped `bits' to make change. Early
- in American history the Spanish coin was considered equal to a
- dollar, so each of these `bits' was considered worth 12.5 cents.
- Syn. {tayste}, {crumb}, {quad}. Usage: rare. See also
- {nickle}, {nybble}, {{byte}}, {dynner}.
-
- ques: /kwes/ 1. n. The question mark character (`?', ASCII
- 0111111). 2. interj. What? Also frequently verb-doubled as
- "Ques ques?" See {wall}.
-
- quick-and-dirty: adj. Describes a {crock} put together under time
- or user pressure. Used esp. when you want to convey that you think
- the fast way might lead to trouble further down the road. "I can
- have a quick-and-dirty fix in place tonight, but I'll have to
- rewrite the whole module to solve the underlying design problem."
- See also {kluge}.
-
- quote chapter and verse: [by analogy with the mainstream phrase] v.
- To reproduce a relevant excerpt from an appropriate {bible}.
- "I don't care if `rn' gets it wrong; `Followup-To: poster' is
- explicitly permitted by RFC-1036. I'll quote chapter and
- verse if you don't believe me."
-
- quotient: n. See {coefficient}.
-
- quux: /kwuhks/ Mythically, from the Latin semi-deponent verb
- quuxo, quuxare, quuxandum iri; noun form variously `quux' (plural
- `quuces', anglicized to `quuxes') and `quuxu' (genitive
- plural is `quuxuum', for four u-letters out of seven in all,
- using up all the `u' letters in Scrabble).] 1. Originally, a
- metasyntactic variable like {foo} and {foobar}. Invented by
- Guy Steele for precisely this purpose when he was young and na"ive
- and not yet interacting with the real computing community. Many
- people invent such words; this one seems simply to have been lucky
- enough to have spread a little. In an eloquent display of poetic
- justice, it has returned to the originator in the form of a
- nickname. 2. interj. See {foo}; however, denotes very little
- disgust, and is uttered mostly for the sake of the sound of it.
- 3. Guy Steele in his persona as `The Great Quux', which is somewhat
- infamous for light verse and for the `Crunchly' cartoons. 4. In
- some circles, quux is used as a punning opposite of `crux'.
- "Ah, that's the quux of the matter!" implies that the point is
- *not* crucial (compare {tip of the ice-cube}). 5. quuxy:
- adj. Of or pertaining to a quux.
-
- qux: /kwuhks/ The fourth of the standard metasyntactic
- variables, after {baz} and before the quu(u...)x series.
- See {foo}, {bar}, {baz}, {quux}. This appears to be a
- recent mutation from {quux}, and many versions of the
- standard series just run {foo}, {bar}, {baz}, {quux},
- ....
-
- QWERTY: /kwer'tee/ [from the keycaps at the upper left] adj.
- Pertaining to a standard English-language typewriter keyboard
- (sometimes called the Sholes keyboard after its inventor), as
- opposed to Dvorak or foreign-language layouts or a {space-cadet
- keyboard} or APL keyboard.
-
- Historical note: The QWERTY layout is a fine example of a {fossil}.
- It is sometimes said that it was designed to slow down the typist,
- but this is wrong; it was designed to allow *faster* typing
- --- under a constraint now long obsolete. In early typewriters,
- fast typing using nearby type-bars jammed the mechanism. So Sholes
- fiddled the layout to separate the letters of many common digraphs
- (he did a far from perfect job, though; `th', `tr', `ed', and `er',
- for example, each use two nearby keys). Also, putting the letters
- of `typewriter' on one line allowed it to be typed with particular
- speed and accuracy for {demo}s. The jamming problem was
- essentially solved soon afterward by a suitable use of springs, but
- the keyboard layout lives on.
-
- = R =
-
- rain dance: n. 1. Any ceremonial action taken to correct a hardware
- problem, with the expectation that nothing will be accomplished.
- This especially applies to reseating printed circuit boards,
- reconnecting cables, etc. "I can't boot up the machine. We'll
- have to wait for Greg to do his rain dance." 2. Any arcane
- sequence of actions performed with computers or software in order
- to achieve some goal; the term is usually restricted to rituals
- that include both an {incantation} or two and physical activity
- or motion. Compare {magic}, {voodoo programming}, {black
- art}.
-
- random: adj. 1. Unpredictable (closest to mathematical
- definition); weird. "The system's been behaving pretty
- randomly." 2. Assorted; undistinguished. "Who was at the
- conference?" "Just a bunch of random business types."
- 3. (pejorative) Frivolous; unproductive; undirected. "He's just a
- random loser." 4. Incoherent or inelegant; poorly chosen; not
- well organized. "The program has a random set of misfeatures."
- "That's a random name for that function." "Well, all the names
- were chosen pretty randomly." 5. In no particular order, though
- deterministic. "The I/O channels are in a pool, and when a file
- is opened one is chosen randomly." 6. Arbitrary. "It generates
- a random name for the scratch file." 7. Gratuitously wrong, i.e.,
- poorly done and for no good apparent reason. For example, a
- program that handles file name defaulting in a particularly useless
- way, or an assembler routine that could easily have been coded
- using only three registers, but redundantly uses seven for values with
- non-overlapping lifetimes, so that no one else can invoke it
- without first saving four extra registers. What {randomness}!
- 8. n. A random hacker; used particularly of high-school students
- who soak up computer time and generally get in the way. 9. n.
- Anyone who is not a hacker (or, sometimes, anyone not known to the
- hacker speaking); the noun form of sense 2. "I went to the talk,
- but the audience was full of randoms asking bogus questions".
- 10. n. (occasional MIT usage) One who lives at Random Hall. See
- also {J. Random}, {some random X}.
-
- random numbers:: n. When one wishes to specify a large but random
- number of things, and the context is inappropriate for {N}, certain
- numbers are preferred by hacker tradition (that is, easily
- recognized as placeholders). These include the following:
-
- 17
- Long described at MIT as `the least random number'; see 23.
- 23
- Sacred number of Eris, Goddess of Discord (along with 17 and 5).
- 42
- The Answer to the Ultimate Question of Life, the Universe, and
- Everything. (Note that this answer is completely fortuitous. `:-)')
- 69
- From the sexual act. This one was favored in MIT's ITS culture.
- 105
- 69 hex = 105 decimal, and 69 decimal = 105 octal.
- 666
- The Number of the Beast.
-
- For further enlightenment, consult the `Principia Discordia',
- `The Hitchhiker's Guide to the Galaxy', `The Joy of Sex',
- and the Christian Bible (Revelation 13:8). See also
- {Discordianism} or consult your pineal gland.
-
- One common rhetorical maneuver uses any of the canonical random
- numbers as placeholders for variables. "The max function takes
- 42 arguments, for arbitrary values of 42." "There are 69 ways
- to leave your lover, for 69 = 50." This is especially likely when
- the speaker has uttered a random number and realizes that it was
- not recognized as such, but even `non-random' numbers are
- occasionally used in this fashion. A related joke is that pi
- equals 3 --- for small values of pi and large values of 3.
-
- randomness: n. An inexplicable misfeature; gratuitous inelegance.
- Also, a {hack} or {crock} that depends on a complex
- combination of coincidences (or, possibly, the combination upon
- which the crock depends for its accidental failure to malfunction).
- "This hack can output characters 40--57 by putting the character
- in the four-bit accumulator field of an XCT and then extracting six bits
- --- the low 2 bits of the XCT opcode are the right thing." "What
- randomness!"
-
- rape: vt. 1. To {screw} someone or something, violently; in
- particular, to destroy a program or information irrecoverably.
- Often used in describing file-system damage. "So-and-so was
- running a program that did absolute disk I/O and ended up raping
- the master directory." 2. To strip a piece of hardware for parts.
-
- rare mode: [UNIX] adj. CBREAK mode (character-by-character with
- interrupts enabled). Distinguished from {raw mode} and `cooked
- mode'; the phrase "a sort of half-cooked (rare?) mode" is used
- in the V7/BSD manuals to describe the mode. Usage: rare.
-
- raster blaster: n. [Cambridge] Specialized hardware for
- {bitblt} operations (a {blitter}). Allegedly inspired by
- `Rasta Blasta', British slang for the sort of portable stereo
- Americans call a `boom box' or `ghetto blaster'.
-
- raster burn: n. Eyestrain brought on by too many hours of looking at
- low-res, poorly tuned, or glare-ridden monitors, esp. graphics
- monitors. See {terminal illness}.
-
- rat belt: n. A cable tie, esp. the sawtoothed, self-locking plastic
- kind that you can remove only by cutting (as opposed to a random
- twist of wire or a twist tie or one of those humongous metal clip
- frobs). Small cable ties are `mouse belts'.
-
- rave: [WPI] vi. 1. To persist in discussing a specific subject.
- 2. To speak authoritatively on a subject about which one knows
- very little. 3. To complain to a person who is not in a position
- to correct the difficulty. 4. To purposely annoy another person
- verbally. 5. To evangelize. See {flame}. 6. Also used to
- describe a less negative form of blather, such as friendly
- bullshitting. `Rave' differs slightly from {flame} in that
- `rave' implies that it is the persistence or obliviousness of the
- person speaking that is annoying, while {flame} implies somewhat
- more strongly that the tone is offensive as well.
-
- rave on!: imp. Sarcastic invitation to continue a {rave}, often by
- someone who wishes the raver would get a clue but realizes this is
- unlikely.
-
- ravs: /ravz/, also `Chinese ravs' n. Jiao-zi (steamed or
- boiled) or Guo-tie (pan-fried). A Chinese appetizer, known
- variously in the plural as dumplings, pot stickers (the literal
- translation of guo-tie), and (around Boston) `Peking Ravioli'. The
- term `rav' is short for `ravioli', which among hackers always
- means the Chinese kind rather than the Italian kind. Both consist
- of a filling in a pasta shell, but the Chinese kind includes no
- cheese, uses a thinner pasta, has a pork-vegetable filling (good
- ones include Chinese chives), and is cooked differently, either by
- steaming or frying. A rav or dumpling can be cooked any way, but a
- potsticker is always the fried kind (so called because it sticks to
- the frying pot and has to be scraped off). "Let's get
- hot-and-sour soup and three orders of ravs." See also
- {{oriental food}}.
-
- raw mode: n. A mode that allows a program to transfer bits directly
- to or from an I/O device without any processing, abstraction, or
- interpretation by the operating system. Compare {rare}. This is
- techspeak under UNIX, jargon elsewhere.
-
- rc file: /R-C fi:l/ [UNIX: from the startup script
- `/etc/rc', but this is commonly believed to have been named
- after older scripts to `run commands'] n. Script file containing
- startup instructions for an application program (or an entire
- operating system), usually a text file containing commands of the
- sort that might have been invoked manually once the system was
- running but are to be executed automatically each time the system
- starts up. See also {dot file}.
-
- RE: /R-E/ n. Common spoken and written shorthand for {regexp}.
-
- read-only user: n. Describes a {luser} who uses computers almost
- exclusively for reading USENET, bulletin boards, and/or email,
- rather than writing code or purveying useful information. See
- {twink}, {terminal junkie}, {lurker}.
-
- README file: n. By convention, the top-level directory of a UNIX
- source distribution always contains a file named `README' (or
- READ.ME, or rarely ReadMe or some other variant), which is a
- hacker's-eye introduction containing a pointer to more detailed
- documentation, credits, miscellaneous revision history notes, etc.
- When asked, hackers invariably relate this to the famous scene in
- Lewis Carroll's `Alice's Adventures In Wonderland' in which
- Alice confronts magic munchies labeled "Eat Me" and "Drink
- Me".
-
- real estate: n. May be used for any critical resource measured in
- units of area. Most frequently used of `chip real estate', the
- area available for logic on the surface of an integrated circuit
- (see also {nanoacre}). May also be used of floor space in a
- {dinosaur pen}, or even space on a crowded desktop (whether
- physical or electronic).
-
- real hack: n. A {crock}. This is sometimes used affectionately;
- see {hack}.
-
- real operating system: n. The sort the speaker is used to. People
- from the academic community are likely to issue comments like
- "System V? Why don't you use a *real* operating system?",
- people from the commercial/industrial UNIX sector are known to
- complain "BSD? Why don't you use a *real* operating
- system?", and people from IBM object "UNIX? Why don't
- you use a *real* operating system?" See {holy wars},
- {religious issues}, {proprietary}, {Get a real computer!}
-
- real programmer: [indirectly, from the book `Real Men Don't
- Eat Quiche'] n. A particular sub-variety of hacker: one possessed
- of a flippant attitude toward complexity that is arrogant even
- when justified by experience. The archetypal `real programmer'
- likes to program on the {bare metal} and is very good at same,
- remembers the binary opcodes for every machine he has ever
- programmed, thinks that HLLs are sissy, and uses a debugger to edit
- his code because full-screen editors are for wimps. Real
- Programmers aren't satisfied with code that hasn't been {bum}med
- into a state of {tense}ness just short of rupture. Real
- Programmers never use comments or write documentation: "If it was
- hard to write", says the Real Programmer, "it should be hard to
- understand." Real Programmers can make machines do things that
- were never in their spec sheets; in fact, they are seldom really
- happy unless doing so. A Real Programmer's code can awe with its
- fiendish brilliance, even as its crockishness appalls. Real
- Programmers live on junk food and coffee, hang line-printer art on
- their walls, and terrify the crap out of other programmers ---
- because someday, somebody else might have to try to understand
- their code in order to change it. Their successors generally
- consider it a {Good Thing} that there aren't many Real
- Programmers around any more. For a famous (and somewhat more
- positive) portrait of a Real Programmer, see "The Story of
- Mel" in appendix A.
-
- Real Soon Now: [orig. from SF's fanzine community, popularized by
- Jerry Pournelle's column in `BYTE'] adv. 1. Supposed to be available
- (or fixed, or cheap, or whatever) real soon now according to
- somebody, but the speaker is quite skeptical. 2. When one's
- gods, fates, or other time commitments permit one to get to it (in other
- words, don't hold your breath). Often abbreviated RSN.
-
- real time: 1. [techspeak] adj. Describes an application which requires a
- program to respond to stimuli within some small upper limit of
- response time (typically milli- or microseconds). Process control
- at a chemical plant is the classic example. Such applications
- often require special operating systems (because everything else
- must take a back seat to response time) and speed-tuned hardware.
- 2. adv. In jargon, refers to doing something while people are watching
- or waiting. "I asked her how to find the calling procedure's
- program counter on the stack and she came up with an algorithm in
- real time."
-
- real user: n. 1. A commercial user. One who is paying *real*
- money for his computer usage. 2. A non-hacker. Someone using the
- system for an explicit purpose (a research project, a course, etc.)
- other than pure exploration. See {user}. Hackers who are also
- students may also be real users. "I need this fixed so I can do a
- problem set. I'm not complaining out of randomness, but as a real
- user." See also {luser}.
-
- Real World: n. 1. Those institutions at which `programming' may
- be used in the same sentence as `FORTRAN', `{COBOL}',
- `RPG', `{IBM}', `DBASE', etc. Places where programs do such
- commercially necessary but intellectually uninspiring things as
- generating payroll checks and invoices. 2. The location of
- non-programmers and activities not related to programming. 3. A
- bizarre dimension in which the standard dress is shirt and tie and
- in which a person's working hours are defined as 9 to 5 (see
- {code grinder}). 4. Anywhere outside a university. "Poor
- fellow, he's left MIT and gone into the Real World." Used
- pejoratively by those not in residence there. In conversation,
- talking of someone who has entered the Real World is not unlike
- speaking of a deceased person. See also {fear and loathing},
- {mundane}, and {uninteresting}.
-
- reality check: n. 1. The simplest kind of test of software or
- hardware; doing the equivalent of asking it what 2 + 2 is
- and seeing if you get 4. The software equivalent of a
- {smoke test}. 2. The act of letting a {real user} try out
- prototype software. Compare {sanity check}.
-
- reaper: n. A {prowler} that {GFR}s files. A file removed in
- this way is said to have been `reaped'.
-
- rectangle slinger: n. See {polygon pusher}.
-
- recursion: n. See {recursion}. See also {tail recursion}.
-
- recursive acronym:: pl.n. A hackish (and especially MIT) tradition
- is to choose acronyms that refer humorously to themselves or to
- other acronyms. The classic examples were two MIT editors called
- EINE ("EINE Is Not EMACS") and ZWEI ("ZWEI Was EINE
- Initially"). More recently, there is a Scheme compiler called
- LIAR (Liar Imitates Apply Recursively), and {GNU} (q.v.,
- sense 1) stands for "GNU's Not UNIX!" --- and a company with
- the name CYGNUS, which expands to "Cygnus, Your GNU Support".
- See also {mung}, {EMACS}.
-
- Red Book: n. 1. Informal name for one of the three standard
- references on PostScript (`PostScript Language Reference
- Manual', Adobe Systems (Addison-Wesley, 1985; QA76.73.P67P67; ISBN
- 0-201-10174-2); the others are known as the {Green Book} and
- the {Blue Book}. 2. Informal name for one of the 3 standard
- references on Smalltalk (`Smalltalk-80: The Interactive
- Programming Environment' by Adele Goldberg (Addison-Wesley, 1984;
- QA76.8.S635G638; ISBN 0-201-11372-4); this too is associated with
- blue and green books). 3. Any of the 1984 standards issued by the
- CCITT eighth plenary assembly. Until now, these have changed color
- each review cycle (1988 was {Blue Book}, 1992 will be {Green
- Book}); however, it is rumored that this convention is going to be
- dropped before 1992. These include, among other things, the
- X.400 email spec and the Group 1 through 4 fax standards. 4. The
- new version of the {Green Book} (sense 4) --- IEEE 1003.1-1990, a.k.a
- ISO 9945-1 --- is (because of the color and the fact that it is
- printed on A4 paper) known in the U.S.A. as "the Ugly Red Book
- That Won't Fit On The Shelf" and in Europe as "the Ugly Red Book
- That's A Sensible Size". 5. The NSA `Trusted Network
- Interpretation' companion to the {Orange Book}. See also
- {{book titles}}.
-
- regexp: /reg'eksp/ [UNIX] n. (alt. `regex' or `reg-ex')
- 1. Common written and spoken abbreviation for `regular
- expression', one of the wildcard patterns used, e.g., by UNIX
- utilities such as `grep(1)', `sed(1)', and `awk(1)'.
- These use conventions similar to but more elaborate than those
- described under {glob}. For purposes of this lexicon, it is
- sufficient to note that regexps also allow complemented character
- sets using `^'; thus, one can specify `any non-alphabetic
- character' with `[^A-Za-z]'. 2. Name of a well-known PD
- regexp-handling package in portable C, written by revered USENETter
- Henry Spencer (henry@zoo.toronto.edu).
-
- reincarnation, cycle of: n. See {cycle of reincarnation}.
-
- reinvent the wheel: v. To design or implement a tool equivalent to
- an existing one or part of one, with the implication that doing so
- is silly or a waste of time. This is often a valid criticism.
- On the other hand, automobiles don't use wooden rollers, and some
- kinds of wheel have to be reinvented many times before you get them
- right. On the third hand, people reinventing the wheel do tend to
- come up with the moral equivalent of a trapezoid with an offset
- axle.
-
- religious issues: n. Questions which seemingly cannot be raised
- without touching off {holy wars}, such as "What is the best
- operating system (or editor, language, architecture, shell, mail
- reader, news reader)?", "What about that Heinlein guy, eh?",
- "What should we add to the new Jargon File?" See {holy wars};
- see also {theology}, {bigot}.
-
- This term is an example of {ha ha only serious}. People
- actually develop the most amazing and religiously intense
- attachments to their tools, even when the tools are intangible.
- The most constructive thing one can do when one stumbles into the
- crossfire is mumble {Get a life!} and leave --- unless, of course,
- one's *own* unassailably rational and obviously correct
- choices are being slammed.
-
- replicator: n. Any construct that acts to produce copies of itself;
- this could be a living organism, an idea (see {meme}), a program
- (see {worm}, {wabbit}, and {virus}), a pattern in a cellular
- automaton (see {life}, sense 1), or (speculatively) a robot or
- {nanobot}. It is even claimed by some that {{UNIX}} and {C}
- are the symbiotic halves of an extremely successful replicator; see
- {UNIX conspiracy}.
-
- reply: n. See {followup}.
-
- reset: [the MUD community] v. In AberMUD, to bring all dead mobiles
- to life and move items back to their initial starting places. New
- players who can't find anything shout "Reset! Reset!" quite a bit.
- Higher-level players shout back "No way!" since they know where
- points are to be found. Used in {RL}, it means to put things back
- to the way they were when you found them.
-
- restriction: n. A {bug} or design error that limits a program's
- capabilities, and which is sufficiently egregious that nobody can
- quite work up enough nerve to describe it as a {feature}. Often
- used (esp. by {marketroid} types) to make it sound as though
- some crippling bogosity had been intended by the designers all
- along, or was forced upon them by arcane technical constraints of a
- nature no mere user could possibly comprehend (these claims are
- almost invariably false).
-
- Old-time hacker Joseph M. Newcomer advises that whenever choosing a
- quantifiable but arbitrary restriction, you should make it either a
- power of 2 or a power of 2 minus 1. If you impose a limit of
- 17 items in a list, everyone will know it is a random number --- on
- the other hand, a limit of 15 or 16 suggests some deep reason
- (involving 0- or 1-based indexing in binary) and you will get less
- {flamage} for it. Limits which are round numbers in base 10 are
- always especially suspect.
-
- retcon: /ret'kon/ [`retroactive continuity', from the USENET
- newsgroup rec.arts.comics] 1. n. The common situation in pulp
- fiction (esp. comics or soap operas) where a new story `reveals'
- things about events in previous stories, usually leaving the
- `facts' the same (thus preserving continuity) while completely
- changing their interpretation. E.g., revealing that a whole season
- of "Dallas" was a dream was a retcon. 2. vt. To write such a
- story about a character or fictitious object. "Byrne has
- retconned Superman's cape so that it is no longer unbreakable."
- "Marvelman's old adventures were retconned into synthetic
- dreams." "Swamp Thing was retconned from a transformed person
- into a sentient vegetable."
-
- [This is included because it is a good example of hackish linguistic
- innovation in a field completely unrelated to computers. The word
- `retcon' will probably spread through comics fandom and lose its
- association with hackerdom within a couple of years; for the
- record, it started here. --- ESR]
-
- RETI: v. Syn. {RTI}
-
- retrocomputing: /ret'-roh-k*m-pyoo'ting/ n. Refers to emulations
- of way-behind-the-state-of-the-art hardware or software, or
- implementations of never-was-state-of-the-art; esp. if such
- implementations are elaborate practical jokes and/or parodies of
- more `serious' designs. Perhaps the most widely distributed
- retrocomputing utility was the `pnch(6)' or `bcd(6)'
- program on V7 and other early UNIX versions, which would accept up
- to 80 characters of text argument and display the corresponding
- pattern in {{punched card}} code. Other well-known retrocomputing
- hacks have included the programming language {INTERCAL}, a
- {JCL}-emulating shell for UNIX, the card-punch-emulating editor
- named 029, and various elaborate PDP-11 hardware emulators and RT-11
- OS emulators written just to keep an old, sourceless {Zork} binary
- running.
-
- RFC: /R-F-C/ [Request For Comment] n. One of a long-established
- series of numbered Internet standards widely followed by commercial
- and PD software in the Internet and UNIX communities. Perhaps the
- single most influential one has been RFC-822 (the Internet
- mail-format standard). The RFCs are unusual in that they are
- floated by technical experts acting on their own initiative and
- reviewed by the Internet at large, rather than formally promulgated
- through an institution such as ANSI. For this reason, they remain
- known as RFCs even once adopted.
-
- RFE: /R-F-E/ n. 1. [techspeak] Request For Enhancement. 2. [from
- `Radio Free Europe', Bellcore and Sun] Radio Free Ethernet, a system
- (originated by Peter Langston) for broadcasting audio among Sun
- SPARCstations over the ethernet.
-
- rib site: [by analogy with {backbone site}] n. A machine that
- has an on-demand high-speed link to a {backbone site} and serves
- as a regional distribution point for lots of third-party traffic in
- email and USENET news. Compare {leaf site}, {backbone site}.
-
- rice box: [from ham radio slang] n. Any Asian-made commodity
- computer, esp. an 80x86-based machine built to IBM PC-compatible
- ISA or EISA-bus standards.
-
- Right Thing: n. That which is {compellingly} the correct or
- appropriate thing to use, do, say, etc. Often capitalized, always
- emphasized in speech as though capitalized. Use of this term often
- implies that in fact reasonable people may disagree. "What's the
- right thing for LISP to do when it sees `(mod a 0)'? Should
- it return `a', or give a divide-by-0 error?" Oppose
- {Wrong Thing}.
-
- RL: // [MUD community] n. Real Life. "Firiss laughs in RL"
- means that Firiss's player is laughing. Oppose {VR}.
-
- roach: [Bell Labs] vt. To destroy, esp. of a data structure. Hardware
- gets {toast}ed or {fried}, software gets roached.
-
- robust: adj. Said of a system that has demonstrated an ability to
- recover gracefully from the whole range of exceptional inputs and
- situations in a given environment. One step below {bulletproof}.
- Carries the additional connotation of elegance in addition to just
- careful attention to detail. Compare {smart}, oppose
- {brittle}.
-
- rococo: adj. {Baroque} in the extreme. Used to imply that a
- program has become so encrusted with the software equivalent of
- gold leaf and curlicues that they have completely swamped the
- underlying design. Called after the later and more extreme forms
- of Baroque architecture and decoration prevalent during the
- mid-1700s in Europe. Fred Brooks (the man who coined
- {second-system effect}) said: "Every program eventually becomes
- rococo, and then rubble."
-
- rogue: [UNIX] n. A Dungeons-and-Dragons-like game using character
- graphics, written under BSD UNIX and subsequently ported to other
- UNIX systems. The original BSD `curses(3)' screen-handling
- package was hacked together by Ken Arnold to support
- `rogue(6)' and has since become one of UNIX's most important
- and heavily used application libraries. Nethack, Omega, Larn, and
- an entire subgenre of computer dungeon games all took off from the
- inspiration provided by `rogue(6)'. See {nethack}.
-
- room-temperature IQ: [IBM] quant. 80 or below. Used in describing the
- expected intelligence range of the {luser}. "Well, but
- how's this interface going to play with the room-temperature IQ
- crowd?" See {drool-proof paper}. This is a much more insulting
- phrase in countries that use Celsius thermometers.
-
- root: [UNIX] n. 1. The {superuser} account that ignores
- permission bits, user number 0 on a UNIX system. This account
- has the user name `root'. The term {avatar} is also used.
- 2. The top node of the system directory structure (home directory
- of the root user). 3. By extension, the privileged
- system-maintenance login on any OS. See {root mode}, {go root}.
-
- root mode: n. Syn. with {wizard mode} or `wheel mode'. Like
- these, it is often generalized to describe privileged states in
- systems other than OSes.
-
- rot13: /rot ther'teen/ [USENET: from `rotate alphabet
- 13 places'] n., v. The simple Caesar-cypher encryption that replaces
- each English letter with the one 13 places forward or back along
- the alphabet, so that "The butler did it!" becomes "Gur ohgyre
- qvq vg!" Most USENET news reading and posting programs include a
- rot13 feature. It is used to enclose the text in a sealed wrapper
- that the reader must choose to open --- e.g., for posting things
- that might offend some readers, or answers to puzzles. A major
- advantage of rot13 over rot(N) for other N is that it
- is self-inverse, so the same code can be used for encoding and
- decoding.
-
- rotary debugger: [Commodore] n. Essential equipment for those
- late-night or early-morning debugging sessions. Mainly used as
- sustenance for the hacker. Comes in many decorator colors, such as
- Sausage, Pepperoni, and Garbage. See {pizza, ANSI standard}.
-
- RSN: // adj. See {Real Soon Now}.
-
- RTFAQ: /R-T-F-A-Q/ [USENET: primarily written, by analogy with
- {RTFM}] imp. Abbrev. for `Read the FAQ!', an exhortation that
- the person addressed ought to read the newsgroup's {FAQ list}
- before posting questions.
-
- RTFM: /R-T-F-M/ [UNIX] imp. Acronym for `Read The Fucking
- Manual'. 1. Used by {guru}s to brush off questions they
- consider trivial or annoying. Compare {Don't do that, then!}
- 2. Used when reporting a problem to indicate that you aren't just
- asking out of {randomness}. "No, I can't figure out how to
- interface UNIX to my toaster, and yes, I have RTFM." Unlike
- sense 1, this use is considered polite. See also
- {RTFAQ}, {RTM}. The variant RTFS, where S = `Standard',
- has also been reported. Compare {UTSL}.
-
- RTI: /R-T-I/ interj. The mnemonic for the `return from
- interrupt' instruction on many computers including the 6502 and
- 6800. The variant `RETI' is found among former Z80 hackers (almost
- nobody programs these things in assembler anymore). Equivalent to
- "Now, where was I?" or used to end a conversational digression.
- See {pop}; see also {POPJ}.
-
- RTM: /R-T-M/ [USENET: acronym for `Read The Manual']
- 1. Politer variant of {RTFM}. 2. Robert T. Morris, perpetrator
- of the great Internet worm of 1988; villain to many, na"ive hacker
- gone wrong to a few. Morris claimed that the worm that brought
- the Internet to its knees was a benign experiment that got out of
- control as the result of a coding error. After the storm of negative
- publicity that followed this blunder, Morris's name on ITS was
- hacked from RTM to {RTFM}.
-
- rude: [WPI] adj. 1. (of a program) Badly written. 2. Functionally
- poor, e.g., a program that is very difficult to use because of
- gratuitously poor (random?) design decisions. See {cuspy}.
-
- runes: pl.n. 1. Anything that requires {heavy wizardry} or
- {black art} to {parse}: core dumps, JCL commands, APL, or code
- in a language you haven't a clue how to read. Compare {casting
- the runes}, {Great Runes}. 2. Special display characters (for
- example, the high-half graphics on an IBM PC).
-
- runic: adj. Syn. {obscure}. VMS fans sometimes refer to UNIX as
- `Runix'; UNIX fans return the compliment by expanding VMS to `Very
- Messy Syntax' or `Vachement Mauvais Syst`eme' (French; lit.
- "Cowlike Bad System", idiomatically "Bitchy Bad System").
-
- rusty iron: n. Syn. {tired iron}. It has been claimed that this
- is the inevitable fate of {water MIPS}.
-
- rusty memory: n. Mass-storage that uses iron-oxide-based magnetic
- media (esp. tape and the pre-Winchester removable disk packs used
- in {washing machine}s). Compare {donuts}.
-
- = S =
-
- S/N ratio: // n. (also `s/n ratio', `s:n ratio'). Syn.
- {signal-to-noise ratio}. Often abbreviated `SNR'.
-
- sacred: adj. Reserved for the exclusive use of something (an
- extension of the standard meaning). Often means that anyone may
- look at the sacred object, but clobbering it will screw whatever it
- is sacred to. The comment "Register 7 is sacred to the interrupt
- handler" appearing in a program would be interpreted by a hacker
- to mean that if any *other* part of the program changes the
- contents of register 7, dire consequences are likely to ensue.
-
- saga: [WPI] n. A cuspy but bogus raving story about N random
- broken people.
-
- Here is a classic example of the saga form, as told by Guy L. Steele:
-
- Jon L. White (login name JONL) and I (GLS) were office mates at MIT
- for many years. One April, we both flew from Boston to California
- for a week on research business, to consult face-to-face with some
- people at Stanford, particularly our mutual friend Richard P.
- Gabriel (RPG; see {Gabriel}).
-
- RPG picked us up at the San Francisco airport and drove us back to
- Palo Alto (going {logical} south on route 101, parallel to
- {El Camino Bignum}). Palo Alto is adjacent to Stanford University and
- about 40 miles south of San Francisco. We ate at The Good
- Earth, a `health food' restaurant, very popular, the sort whose
- milkshakes all contain honey and protein powder. JONL ordered such
- a shake --- the waitress claimed the flavor of the day was
- "lalaberry". I still have no idea what that might be, but it
- became a running joke. It was the color of raspberry, and JONL
- said it tasted rather bitter. I ate a better tostada there than I
- have ever had in a Mexican restaurant.
-
- After this we went to the local Uncle Gaylord's Old Fashioned Ice
- Cream Parlor. They make ice cream fresh daily, in a variety of
- intriguing flavors. It's a chain, and they have a slogan: "If you
- don't live near an Uncle Gaylord's --- MOVE!" Also, Uncle
- Gaylord (a real person) wages a constant battle to force big-name
- ice cream makers to print their ingredients on the package (like
- air and plastic and other non-natural garbage). JONL and I had
- first discovered Uncle Gaylord's the previous August, when we had
- flown to a computer-science conference in Berkeley, California, the
- first time either of us had been on the West Coast. When not in
- the conference sessions, we had spent our time wandering the length
- of Telegraph Street, which (like Harvard Square in Cambridge) was
- lined with picturesque street vendors and interesting little shops.
- On that street we discovered Uncle Gaylord's Berkeley store. The
- ice cream there was very good. During that August visit JONL went
- absolutely bananas (so to speak) over one particular flavor, ginger
- honey.
-
- Therefore, after eating at The Good Earth --- indeed, after every
- lunch and dinner and before bed during our April visit --- a trip
- to Uncle Gaylord's (the one in Palo Alto) was mandatory. We had
- arrived on a Wednesday, and by Thursday evening we had been there
- at least four times. Each time, JONL would get ginger honey ice
- cream, and proclaim to all bystanders that "Ginger was the spice
- that drove the Europeans mad! That's why they sought a route to
- the East! They used it to preserve their otherwise off-taste
- meat." After the third or fourth repetition RPG and I were
- getting a little tired of this spiel, and began to paraphrase him:
- "Wow! Ginger! The spice that makes rotten meat taste good!"
- "Say! Why don't we find some dog that's been run over and sat in
- the sun for a week and put some *ginger* on it for dinner?!"
- "Right! With a lalaberry shake!" And so on. This failed to
- faze JONL; he took it in good humor, as long as we kept returning
- to Uncle Gaylord's. He loves ginger honey ice cream.
-
- Now RPG and his then-wife KBT (Kathy Tracy) were putting us up
- (putting up with us?) in their home for our visit, so to thank them
- JONL and I took them out to a nice French restaurant of their
- choosing. I unadventurously chose the filet mignon, and KBT had
- je ne sais quoi du jour, but RPG and JONL had lapin
- (rabbit). (Waitress: "Oui, we have fresh rabbit, fresh
- today." RPG: "Well, JONL, I guess we won't need any
- *ginger*!")
-
- We finished the meal late, about 11 P.M., which is 2 A.M
- Boston time, so JONL and I were rather droopy. But it wasn't yet
- midnight. Off to Uncle Gaylord's!
-
- Now the French restaurant was in Redwood City, north of Palo Alto.
- In leaving Redwood City, we somehow got onto route 101 going north
- instead of south. JONL and I wouldn't have known the difference
- had RPG not mentioned it. We still knew very little of the local
- geography. I did figure out, however, that we were headed in the
- direction of Berkeley, and half-jokingly suggested that we continue
- north and go to Uncle Gaylord's in Berkeley.
-
- RPG said "Fine!" and we drove on for a while and talked. I was
- drowsy, and JONL actually dropped off to sleep for 5 minutes.
- When he awoke, RPG said, "Gee, JONL, you must have slept all the
- way over the bridge!", referring to the one spanning San Francisco
- Bay. Just then we came to a sign that said "University Avenue".
- I mumbled something about working our way over to Telegraph Street;
- RPG said "Right!" and maneuvered some more. Eventually we pulled
- up in front of an Uncle Gaylord's.
-
- Now, I hadn't really been paying attention because I was so sleepy,
- and I didn't really understand what was happening until RPG let me
- in on it a few moments later, but I was just alert enough to notice
- that we had somehow come to the Palo Alto Uncle Gaylord's after
- all.
-
- JONL noticed the resemblance to the Palo Alto store, but hadn't
- caught on. (The place is lit with red and yellow lights at night,
- and looks much different from the way it does in daylight.) He
- said, "This isn't the Uncle Gaylord's I went to in Berkeley! It
- looked like a barn! But this place looks *just like* the one
- back in Palo Alto!"
-
- RPG deadpanned, "Well, this is the one *I* always come to
- when I'm in Berkeley. They've got two in San Francisco, too.
- Remember, they're a chain."
-
- JONL accepted this bit of wisdom. And he was not totally ignorant
- --- he knew perfectly well that University Avenue was in Berkeley,
- not far from Telegraph Street. What he didn't know was that there
- is a completely different University Avenue in Palo Alto.
-
- JONL went up to the counter and asked for ginger honey. The guy at
- the counter asked whether JONL would like to taste it first,
- evidently their standard procedure with that flavor, as not too
- many people like it.
-
- JONL said, "I'm sure I like it. Just give me a cone." The guy
- behind the counter insisted that JONL try just a taste first.
- "Some people think it tastes like soap." JONL insisted, "Look,
- I *love* ginger. I eat Chinese food. I eat raw ginger roots. I
- already went through this hassle with the guy back in Palo Alto. I
- *know* I like that flavor!"
-
- At the words "back in Palo Alto" the guy behind the counter got a
- very strange look on his face, but said nothing. KBT caught his
- eye and winked. Through my stupor I still hadn't quite grasped
- what was going on, and thought RPG was rolling on the floor
- laughing and clutching his stomach just because JONL had launched
- into his spiel ("makes rotten meat a dish for princes") for the
- forty-third time. At this point, RPG clued me in fully.
-
- RPG, KBT, and I retreated to a table, trying to stifle our
- chuckles. JONL remained at the counter, talking about ice cream
- with the guy b.t.c., comparing Uncle Gaylord's to other ice cream
- shops and generally having a good old time.
-
- At length the g.b.t.c. said, "How's the ginger honey?" JONL
- said, "Fine! I wonder what exactly is in it?" Now Uncle Gaylord
- publishes all his recipes and even teaches classes on how to make
- his ice cream at home. So the g.b.t.c. got out the recipe, and he
- and JONL pored over it for a while. But the g.b.t.c. could
- contain his curiosity no longer, and asked again, "You really like
- that stuff, huh?" JONL said, "Yeah, I've been eating it
- constantly back in Palo Alto for the past two days. In fact, I
- think this batch is about as good as the cones I got back in Palo
- Alto!"
-
- G.b.t.c. looked him straight in the eye and said, "You're
- *in* Palo Alto!"
-
- JONL turned slowly around, and saw the three of us collapse in a
- fit of giggles. He clapped a hand to his forehead and exclaimed,
- "I've been hacked!"
-
- sagan: /say'gn/ [from Carl Sagan's TV series "Cosmos"; think
- "billions and billions"] n. A large quantity of anything.
- "There's a sagan different ways to tweak EMACS." "The
- U.S. Government spends sagans on bombs and welfare --- hard to say which
- is more destructive."
-
- SAIL:: /sayl/, not /S-A-I-L/ n. 1. Stanford Artificial
- Intelligence Lab. An important site in the early development of
- LISP; with the MIT AI Lab, BBN, CMU, and the UNIX community, one of
- the major wellsprings of technical innovation and hacker-culture
- traditions (see the {{WAITS}} entry for details). The SAIL
- machines were officially shut down in late May 1990, scant weeks
- after the MIT AI Lab's ITS cluster was officially decommissioned.
- 2. The Stanford Artificial Intelligence Language used at SAIL
- (sense 1). It was an Algol-60 derivative with a coroutining
- facility and some new data types intended for building search trees
- and association lists.
-
- salescritter: /sayls'kri`tr/ n. Pejorative hackerism for a computer
- salesperson. Hackers tell the following joke:
-
- Q. What's the difference between a used-car dealer and a
- computer salesman?
- A. The used-car dealer knows he's lying.
-
- This reflects the widespread hacker belief that salescritters are
- self-selected for stupidity (after all, if they had brains and the
- inclination to use them, they'd be in programming). The terms
- `salesthing' and `salesdroid' are also common. Compare
- {marketroid}, {suit}, {droid}.
-
- salsman: /salz'm*n/ v. To flood a mailing list or newsgroup with
- huge amounts of useless, trivial or redundant information. From
- the name of a hacker who has frequently done this on some widely
- distributed mailing lists.
-
- salt mines: n. Dense quarters housing large numbers of programmers
- working long hours on grungy projects, with some hope of seeing the
- end of the tunnel in N years. Noted for their absence of sunshine.
- Compare {playpen}, {sandbox}.
-
- salt substrate: [MIT] n. Collective noun used to refer to potato
- chips, pretzels, saltines, or any other form of snack food
- designed primarily as a carrier for sodium chloride. From the
- technical term `chip substrate', used to refer to the silicon on the
- top of which the active parts of integrated circuits are deposited.
-
- same-day service: n. Ironic term used to describe long response
- time, particularly with respect to {{MS-DOS}} system calls (which
- ought to require only a tiny fraction of a second to execute).
- Such response time is a major incentive for programmers to write
- programs that are not {well-behaved}. See also {PC-ism}.
-
- sandbender: [IBM] n. A person involved with silicon lithography and
- the physical design of chips. Compare {ironmonger}, {polygon
- pusher}.
-
- sandbox: n. (or `sandbox, the') Common term for the
- R&D department at many software and computer companies (where hackers
- in commercial environments are likely to be found). Half-derisive,
- but reflects the truth that research is a form of creative play.
- Compare {playpen}.
-
- sanity check: n. 1. The act of checking a piece of code (or
- anything else, e.g., a USENET posting) for completely stupid mistakes.
- Implies that the check is to make sure the author was sane when it
- was written; e.g., if a piece of scientific software relied on a
- particular formula and was giving unexpected results, one might
- first look at the nesting of parentheses or the coding of the
- formula, as a {sanity check}, before looking at the more complex
- I/O or data structure manipulation routines, much less the
- algorithm itself. Compare {reality check}. 2. A run-time test,
- either validating input or ensuring that the program hasn't screwed
- up internally (producing an inconsistent value or state).
-
- Saturday night special: [from police slang for a cheap handgun] n.
- A program or feature kluged together during off hours, under a
- deadline, and in response to pressure from a {salescritter}.
- Such hacks are dangerously unreliable, but all too often sneak into
- a production release after insufficient review.
-
- say: vt. 1. To type to a terminal. "To list a directory
- verbosely, you have to say `ls -l'." Tends to imply a
- {newline}-terminated command (a `sentence'). 2. A computer
- may also be said to `say' things to you, even if it doesn't have
- a speech synthesizer, by displaying them on a terminal in response
- to your commands. Hackers find it odd that this usage confuses
- {mundane}s.
-
- science-fiction fandom:: n. Another voluntary subculture having a
- very heavy overlap with hackerdom; most hackers read SF and/or
- fantasy fiction avidly, and many go to `cons' (SF conventions) or
- are involved in fandom-connected activities such as the Society for
- Creative Anachronism. Some hacker jargon originated in SF fandom;
- see {defenestration}, {great-wall}, {cyberpunk}, {h}, {ha ha
- only serious}, {IMHO}, {mundane}, {neep-neep}, {Real
- Soon Now}. Additionally, the jargon terms {cowboy},
- {cyberspace}, {de-rezz}, {go flatline}, {ice}, {virus},
- {wetware}, {wirehead}, and {worm} originated in SF
- stories.
-
- scram switch: [from the nuclear power industry] n. An
- emergency-power-off switch (see {Big Red Switch}), esp. one
- positioned to be easily hit by evacuating personnel. In general,
- this is *not* something you {frob} lightly; these often
- initiate expensive events (such as Halon dumps) and are installed
- in a {dinosaur pen} for use in case of electrical fire or in
- case some luckless {field servoid} should put 120 volts across
- himself while {Easter egging}.
-
- scratch: 1. [from `scratchpad'] adj. Describes a data
- structure or recording medium attached to a machine for testing or
- temporary-use purposes; one that can be {scribble}d on without
- loss. Usually in the combining forms `scratch memory',
- `scratch register', `scratch disk', `scratch tape',
- `scratch volume'. See {scratch monkey}. 2. [primarily
- IBM] vt. To delete (as in a file).
-
- scratch monkey: n. As in "Before testing or reconfiguring, always
- mount a {scratch monkey}", a proverb used to advise caution when
- dealing with irreplaceable data or devices. Used to refer to any
- scratch volume hooked to a computer during any risky operation as a
- replacement for some precious resource or data that might otherwise get
- trashed.
-
- This term preserves the memory of Mabel, the Swimming Wonder
- Monkey, star of a biological research program at the University of
- Toronto ca. 1986. Mabel was not (so the legend goes) your ordinary
- monkey; the university had spent years teaching her how to swim,
- breathing through a regulator, in order to study the effects of
- different gas mixtures on her physiology. Mabel suffered an
- untimely demise one day when DEC {PM}ed the PDP-11 controlling
- her regulator (see also {provocative maintainance}).
-
- It is recorded that, after calming down an understandably irate
- customer sufficiently to ascertain the facts of the matter, a DEC
- troubleshooter called up the {field circus} manager responsible
- and asked him sweetly, "Can you swim?"
-
- Not all the consequences to humans were so amusing; the sysop of
- the machine in question was nearly thrown in jail at the behest of
- certain clueless droids at the local `humane' society. The moral
- is clear: When in doubt, always mount a scratch monkey.
-
- screw: [MIT] n. A {lose}, usually in software. Especially used for
- user-visible misbehavior caused by a bug or misfeature. This use
- has become quite widespread outside MIT.
-
- screwage: /skroo'*j/ n. Like {lossage} but connotes that the
- failure is due to a designed-in misfeature rather than a simple
- inadequacy or a mere bug.
-
- scribble: n. To modify a data structure in a random and
- unintentionally destructive way. "Bletch! Somebody's
- disk-compactor program went berserk and scribbled on the i-node
- table." "It was working fine until one of the allocation routines
- scribbled on low core." Synonymous with {trash}; compare {mung},
- which conveys a bit more intention, and {mangle}, which is more
- violent and final.
-
- scrog: /skrog/ [Bell Labs] vt. To damage, trash, or corrupt a
- data structure. "The list header got scrogged." Also reported
- as `skrog', and ascribed to the comic strip "The Wizard of
- Id". Equivalent to {scribble} or {mangle}.
-
- scrool: /skrool/ [from the pioneering Roundtable chat system in
- Houston ca. 1984; prob. originated as a typo for `scroll'] n. The
- log of old messages, available for later perusal or to help one get
- back in synch with the conversation. It was originally called the
- `scrool monster', because an early version of the roundtable
- software had a bug where it would dump all 8K of scrool on a user's
- terminal.
-
- scrozzle: /skroz'l/ vt. Used when a self-modifying code segment runs
- incorrectly and corrupts the running program or vital data. "The
- damn compiler scrozzled itself again!"
-
- SCSI: [Small Computer System Interface] n. A bus-independent
- standard for system-level interfacing between a computer and
- intelligent devices. Typically annotated in literature with `sexy'
- (/sek'see/), `sissy' (/sis'ee/), and `scuzzy' (/skuh'zee/) as
- pronunciation guides --- the last being the overwhelmingly
- predominant form, much to the dismay of the designers and their
- marketing people. One can usually assume that a person who
- pronounces it /S-C-S-I/ is clueless.
-
- search-and-destroy mode: n. Hackerism for the search-and-replace
- facility in an editor, so called because an incautiously chosen
- match pattern can cause {infinite} damage.
-
- second-system effect: n. (sometimes, more euphoniously,
- `second-system syndrome') When one is designing the successor to
- a relatively small, elegant, and successful system, there is a
- tendency to become grandiose in one's success and design an
- {elephantine} feature-laden monstrosity. The term was first
- used by Fred Brooks in his classic `The Mythical Man-Month:
- Essays on Software Engineering' (Addison-Wesley, 1975; ISBN
- 0-201-00650-2). It described the jump from a set of nice, simple
- operating systems on the IBM 70xx series to OS/360 on the
- 360 series. A similar effect can also happen in an evolving
- system; see {Brooks's Law}, {creeping elegance}, {creeping
- featurism}. See also {{Multics}}, {OS/2}, {X}, {software
- bloat}.
-
- This version of the jargon lexicon has been described (with
- altogether too much truth for comfort) as an example of
- second-system effect run amok on jargon-1....
-
- secondary damage: n. When a fatal error occurs (esp. a
- {segfault}) the immediate cause may be that a pointer has been
- trashed due to a previous {fandango on core}. However, this
- fandango may have been due to an *earlier* fandango, so no
- amount of analysis will reveal (directly) how the damage occurred.
- "The data structure was clobbered, but it was secondary damage."
-
- By extension, the corruption resulting from N cascaded
- fandangoes on core is `Nth-level damage'. There is at least
- one case on record in which 17 hours of {grovel}ling with
- `adb' actually dug up the underlying bug behind an instance of
- seventh-level damage! The hacker who accomplished this
- near-superhuman feat was presented with an award by his fellows.
-
- security through obscurity: n. A name applied by hackers to most OS
- vendors' favorite way of coping with security holes --- namely,
- ignoring them and not documenting them and trusting that nobody
- will find out about them and that people who do find out about them
- won't exploit them. This never works for long and occasionally
- sets the world up for debacles like the {RTM} worm of 1988, but once
- the brief moments of panic created by such events subside most
- vendors are all too willing to turn over and go back to sleep.
- After all, actually fixing the bugs would siphon off the resources
- needed to implement the next user-interface frill on marketing's
- wish list --- and besides, if they started fixing security bugs
- customers might begin to *expect* it and imagine that their
- warranties of merchantability gave them some sort of *right*
- to a system with fewer holes in it than a shotgunned Swiss cheese,
- and then where would we be?
-
- Historical note: It is claimed (with dissent from {{ITS}} fans who
- say they used to use `security through obscurity' in a positive
- sense) that this term was first used in the USENET newsgroup in
- comp.sys.apollo during a campaign to get HP/Apollo to fix
- security problems in its UNIX-{clone} Aegis/DomainOS. They
- didn't change a thing.
-
- SED: [TMRC, from `Light-Emitting Diode'] /S-E-D/ n.
- Smoke-emitting diode. A {friode} that lost the war. See
- {LER}.
-
- segfault: n.,vi. Syn. {segment}, {seggie}.
-
- seggie: /seg'ee/ [UNIX] n. Shorthand for {segmentation fault}
- reported from Britain.
-
- segment: /seg'ment/ vi. To experience a {segmentation fault}.
- Confusingly, this is often pronounced more like the noun `segment'
- than like mainstream v. segment; this is because it is actually a
- noun shorthand that has been verbed.
-
- segmentation fault: n. [UNIX] 1. An error in which a running program
- attempts to access memory not allocated to it and {core dump}s
- with a segmentation violation error. 2. To lose a train of
- thought or a line of reasoning. Also uttered as an exclamation at
- the point of befuddlement.
-
- segv: /seg'vee/ n.,vi. Yet another synonym for {segmentation
- fault} (actually, in this case, `segmentation violation').
-
- self-reference: n. See {self-reference}.
-
- selvage: /sel'v*j/ [from sewing] n. See {chad} (sense 1).
-
- semi: /se'mee/ or /se'mi:/ 1. n. Abbreviation for
- `semicolon', when speaking. "Commands to {grind} are
- prefixed by semi-semi-star" means that the prefix is `;;*',
- not 1/4 of a star. 2. A prefix used with words such as
- `immediately' as a qualifier. "When is the system coming up?"
- "Semi-immediately." (That is, maybe not for an hour.) "We did
- consider that possibility semi-seriously." See also
- {infinite}.
-
- semi-infinite: n. See {infinite}.
-
- senior bit: [IBM] n. Syn. {meta bit}.
-
- server: n. A kind of {daemon} that performs a service for the
- requester and which often runs on a computer other than the one on
- which the server runs. A particularly common term on the Internet,
- which is rife with `name servers', `domain servers', `news
- servers', `finger servers', and the like.
-
- SEX: /seks/ [Sun Users' Group & elsewhere] n. 1. Software
- EXchange. A technique invented by the blue-green algae hundreds of
- millions of years ago to speed up their evolution, which had been
- terribly slow up until then. Today, SEX parties are popular among
- hackers and others (of course, these are no longer limited to
- exchanges of genetic software). In general, SEX parties are a
- {Good Thing}, but unprotected SEX can propagate a {virus}.
- See also {pubic directory}. 2. The rather Freudian mnemonic
- often used for Sign EXtend, a machine instruction found in the
- PDP-11 and many other architectures.
-
- DEC's engineers nearly got a PDP-11 assembler that used the
- `SEX' mnemonic out the door at one time, but (for once)
- marketing wasn't asleep and forced a change. That wasn't the last
- time this happened, either. The author of `The Intel 8086
- Primer', who was one of the original designers of the 8086, noted
- that there was originally a `SEX' instruction on that
- processor, too. He says that Intel management got cold feet and
- decreed that it be changed, and thus the instruction was renamed
- `CBW' and `CWD' (depending on what was being extended).
- Amusingly, the Intel 8048 (the microcontroller used in IBM PC
- keyboards) is also missing straight `SEX' but has logical-or
- and logical-and instructions `ORL' and `ANL'.
-
- The Motorola 6809, used in the U.K.'s `Dragon 32' personal
- computer, actually had an official `SEX' instruction; the 6502
- in the Apple II it competed with did not. British hackers thought
- this made perfect mythic sense; after all, it was commonly
- observed, you could have sex with a dragon, but you can't have sex
- with an apple.
-
- sex changer: n. Syn. {gender mender}.
-
- shareware: /sheir'weir/ n. {Freeware} (sense 1) for which the
- author requests some payment, usually in the accompanying
- documentation files or in an announcement made by the software
- itself. Such payment may or may not buy additional support or
- functionality. See {guiltware}, {crippleware}.
-
- shelfware: /shelfweir/ n. Software purchased on a whim (by an
- individual user) or in accordance with policy (by a corporation or
- government agency), but not actually required for any particular use.
- Therefore, it often ends up on some shelf.
-
- shell: [orig. {{Multics}} techspeak, widely propagated via UNIX] n.
- 1. [techspeak] The command interpreter used to pass commands to an
- operating system; so called because it is the part of the operating
- system that interfaces with the outside world. 2. More generally,
- any interface program that mediates access to a special resource
- or {server} for convenience, efficiency, or security reasons; for
- this meaning, the usage is usually `a shell around' whatever.
- This sort of program is also called a `wrapper'.
-
- shell out: [UNIX] n. To spawn an interactive {subshell} from
- within a program (e.g., a mailer or editor). "Bang foo runs foo in
- a subshell, while bang alone shells out."
-
- shift left (or right) logical: [from any of various machines'
- instruction sets] 1. vi. To move oneself to the left (right). To
- move out of the way. 2. imper. "Get out of that (my) seat! You
- can shift to that empty one to the left (right)." Often
- used without the `logical', or as `left shift' instead of
- `shift left'. Sometimes heard as LSH /lish/, from the {PDP-10}
- instruction set. See {Programmer's Cheer}.
-
- shitogram: /shit'oh-gram/ n. A *really* nasty piece of email.
- Compare {nastygram}, {flame}.
-
- short card: n. A half-length IBM PC expansion card or adapter that
- will fit in one of the two short slots located towards the right
- rear of a standard chassis (tucked behind the floppy disk drives).
- See also {tall card}.
-
- shotgun debugging: n. The software equivalent of {Easter egging};
- the making of relatively undirected changes to software in the hope
- that a bug will be perturbed out of existence. This almost never
- works, and usually introduces more bugs.
-
- showstopper: n. A hardware or (especially) software bug that makes
- an implementation effectively unusable; one that absolutely has to
- be fixed before development can go on. Opposite in connotation
- from its original theatrical use, which refers to something
- stunningly *good*.
-
- shriek: n. See {excl}. Occasional CMU usage, also in common use
- among APL fans and mathematicians, especially category theorists.
-
- Shub-Internet: /shuhb in't*r-net/ [MUD: from H. P. Lovecraft's
- evil fictional deity `Shub-Niggurath', the Black Goat with a
- Thousand Young] n. The harsh personification of the Internet,
- Beast of a Thousand Processes, Eater of Characters, Avatar of Line
- Noise, and Imp of Call Waiting; the hideous multi-tendriled entity
- formed of all the manifold connections of the net. A sect of
- MUDders worships Shub-Internet, sacrificing objects and praying for
- good connections. To no avail --- its purpose is malign and evil,
- and is the cause of all network slowdown. Often heard as in
- "Freela casts a tac nuke at Shub-Internet for slowing her down."
- (A forged response often follows along the lines of: "Shub-Internet
- gulps down the tac nuke and burps happily.") Also cursed by users
- of {FTP} and {telnet} when the system slows down. The dread
- name of Shub-Internet is seldom spoken aloud, as it is said that
- repeating it three times will cause the being to wake, deep within its
- lair beneath the Pentagon.
-
- sidecar: n. 1. Syn. {slap on the side}. Esp. used of add-ons
- for the late and unlamented IBM PCjr. 2. The IBM PC compatibility
- box that could be bolted onto the side of an Amiga. Designed and
- produced by Commodore, it broke all of the company's own rules.
- If it worked with any other peripherals, it was by {magic}.
-
- sig block: /sig blok/ [UNIX: often written `.sig' there] n.
- Short for `signature', used specifically to refer to the
- electronic signature block that most UNIX mail- and news-posting
- software will {automagically} append to outgoing mail and news.
- The composition of one's sig can be quite an art form, including an
- ASCII logo or one's choice of witty sayings (see {sig quote},
- {fool file}); but many consider large sigs a waste of
- {bandwidth}, and it has been observed that the size of one's sig
- block is usually inversely proportional to one's longevity and
- level of prestige on the net.
-
- sig quote: /sig kwoht/ [USENET] n. A maxim, quote, proverb, joke,
- or slogan embedded in one's {sig block} and intended to convey
- something of one's philosophical stance, pet peeves, or sense of
- humor. "Calm down, it's only ones and zeroes."
-
- signal-to-noise ratio: [from analog electronics] n. Used by hackers
- in a generalization of its technical meaning. `Signal' refers to
- useful information conveyed by some communications medium, and
- `noise' to anything else on that medium. Hence a low ratio implies
- that it is not worth paying attention to the medium in question.
- Figures for such metaphorical ratios are never given. The term is
- most often applied to {USENET} newsgroups during {flame war}s.
- Compare {bandwidth}. See also {coefficient of X}, {lost in
- the noise}.
-
- silicon: n. Hardware, esp. ICs or microprocessor-based computer
- systems (compare {iron}). Contrasted with software. See also
- {sandbender}.
-
- silicon foundry: n. A company that {fab}s chips to the designs of
- others. As of the late 1980s, the combination of silicon foundries
- and good computer-aided design software made it much easier for
- hardware-designing startup companies to come into being. The
- downside of using a silicon foundry is that the distance from the
- actual chip-fabrication processes reduces designers' control of detail.
- This is somewhat analogous to the use of {HLL}s versus coding in
- assembler.
-
- silly walk: [from Monty Python's Flying Circus] vi. 1. A ridiculous
- procedure required to accomplish a task. Like {grovel}, but more
- {random} and humorous. "I had to silly-walk through half the
- /usr directories to find the maps file." 2. Syn. {fandango on
- core}.
-
- silo: n. The FIFO input-character buffer in an RS-232 line card. So
- called from DEC terminology used on DH and DZ line cards for the
- VAX and PDP-11, presumably because it was a storage space for
- fungible stuff that you put in the top and took out the bottom.
-
- Silver Book: n. Jensen and Wirth's infamous `Pascal User Manual
- and Report', so called because of the silver cover of the
- widely distributed Springer-Verlag second edition of 1978 (ISBN
- 0-387-90144-2). See {{book titles}}, {Pascal}.
-
- since time T equals minus infinity: adj. A long time ago; for as
- long as anyone can remember; at the time that some particular frob
- was first designed. Usually the word `time' is omitted. See also
- {time T}.
-
- sitename: /si:t'naym/ [UNIX/Internet] n. The unique electronic
- name of a computer system, used to identify it in UUCP mail,
- USENET, or other forms of electronic information interchange. The
- folklore interest of sitenames stems from the creativity and humor
- they often display. Interpreting a sitename is not unlike
- interpreting a vanity license plate; one has to mentally unpack it,
- allowing for mono-case and length restrictions and the lack of
- whitespace. Hacker tradition deprecates dull,
- institutional-sounding names in favor of punchy, humorous, and
- clever coinages (except that it is considered appropriate for the
- official public gateway machine of an organization to bear the
- organization's name or acronym). Mythological references, cartoon
- characters, animal names, and allusions to SF or fantasy literature
- are probably the most popular sources for sitenames (in roughly
- descending order). The obligatory comment when discussing these is
- Harris's Lament: "All the good ones are taken!" See also
- {network address}.
-
- skrog: v. Syn. {scrog}.
-
- skulker: n. Syn. {prowler}.
-
- slap on the side: n. (also called a {sidecar}, or abbreviated
- `SOTS'.) A type of external expansion hardware marketed by
- computer manufacturers (e.g., Commodore for the Amiga 500/1000
- series and IBM for the hideous failure called `PCjr'). Various
- SOTS boxes provided necessities such as memory, hard drive
- controllers, and conventional expansion slots.
-
- slash: n. Common name for the slant (`/', ASCII 0101111)
- character. See {ASCII} for other synonyms.
-
- sleep: vi. 1. [techspeak] On a timesharing system, a process that
- relinquishes its claim on the scheduler until some given event
- occurs or a specified time delay elapses is said to `go to
- sleep'. 2. In jargon, used very similarly to v. {block}; also
- in `sleep on', syn. with `block on'. Often used to
- indicate that the speaker has relinquished a demand for resources
- until some (possibly unspecified) external event: "They can't get
- the fix I've been asking for into the next release, so I'm going to
- sleep on it until the release, then start hassling them again."
-
- slim: n. A small, derivative change (e.g., to code).
-
- slop: n. 1. A one-sided {fudge factor}, that is, an allowance for
- error but in only one of two directions. For example, if you need
- a piece of wire 10 feet long and have to guess when you cut it,
- you make very sure to cut it too long, by a large amount if
- necessary, rather than too short by even a little bit, because you
- can always cut off the slop but you can't paste it back on again.
- When discrete quantities are involved, slop is often introduced to
- avoid the possibility of being on the losing side of a {fencepost
- error}. 2. The percentage of `extra' code generated by a compiler
- over the size of equivalent assembler code produced by
- {hand-hacking}; i.e., the space (or maybe time) you lose because
- you didn't do it yourself. This number is often used as a measure
- of the goodness of a compiler; slop below 5% is very good, and
- 10% is usually acceptable. With modern compiler technology, esp.
- on RISC machines, the compiler's slop may actually be
- *negative*; that is, humans may be unable to generate code as
- good. This is one of the reasons assembler programming is no
- longer common.
-
- slopsucker: /slop'suhk-r/ n. A lowest-priority task that must
- wait around until everything else has `had its fill' of machine
- resources. Only when the machine would otherwise be idle is the
- task allowed to `suck up the slop'. Also called a {hungry
- puppy}. One common variety of slopsucker hunts for large prime
- numbers. Compare {background}.
-
- slurp: vt. To read a large data file entirely into {core} before
- working on it. This may be contrasted with the strategy of reading
- a small piece at a time, processing it, and then reading the next
- piece. "This program slurps in a 1K-by-1K matrix and does
- an FFT." See also {sponge}.
-
- smart: adj. Said of a program that does the {Right Thing} in a
- wide variety of complicated circumstances. There is a difference
- between calling a program smart and calling it intelligent; in
- particular, there do not exist any intelligent programs (yet ---
- see {AI-complete}). Compare {robust} (smart programs can be
- {brittle}).
-
- smart terminal: n. A terminal that has enough computing capability
- to render graphics or to offload some kind of front-end processing
- from the computer it talks to. The development of workstations and
- personal computers has made this term and the product it describes
- semi-obsolescent, but one may still hear variants of the phrase
- `act like a smart terminal' used to describe the behavior of
- workstations or PCs with respect to programs that execute almost
- entirely out of a remote {server}'s storage, using said devices
- as displays. Compare {glass tty}.
-
- There is a classic quote from Rob Pike (inventor of the {blit}
- terminal): "A smart terminal is not a smart*ass* terminal,
- but rather a terminal you can educate." This illustrates a common
- design problem: The attempt to make peripherals (or anything else)
- intelligent sometimes results in finicky, rigid `special
- features' that become just so much dead weight if you try to use
- the device in any way the designer didn't anticipate. Flexibility
- and programmability, on the other hand, are *really* smart.
- Compare {hook}.
-
- smash case: vi. To lose or obliterate the uppercase/lowercase
- distinction in text input. "MS-DOS will automatically smash case
- in the names of all the files you create." Compare {fold case}.
-
- smash the stack: [C programming] n. On many C implementations it is
- possible to corrupt the execution stack by writing past the end of
- an array declared `auto' in a routine. Code that does this is
- said to `smash the stack', and can cause return from the routine
- to jump to a random address. This can produce some of the most
- insidious data-dependent bugs known to mankind. Variants include
- `trash' the stack, {scribble} the stack, {mangle} the stack;
- the term *{mung} the stack is not used, as this is never done
- intentionally. See {spam}; see also {aliasing bug},
- {fandango on core}, {memory leak}, {precedence lossage},
- {overrun screw}.
-
- smiley: n. See {emoticon}.
-
- smoke test: n. 1. A rudimentary form of testing applied to
- electronic equipment following repair or reconfiguration, in which
- power is applied and the tester checks for sparks, smoke, or other
- dramatic signs of fundamental failure. See {magic smoke}. 2. By
- extension, the first run of a piece of software after construction
- or a critical change. See and compare {reality check}.
-
- There is an interesting semi-parallel to this term among
- typographers and printers: When new typefaces are being punch-cut by
- hand, a `smoke test' (hold the letter in candle smoke, then press
- it onto paper) is used to check out new dies.
-
- smoking clover: [ITS] n. A {display hack} originally due to
- Bill Gosper. Many convergent lines are drawn on a color monitor in
- {AOS} mode (so that every pixel struck has its color
- incremented). The lines all have one endpoint in the middle of the
- screen; the other endpoints are spaced one pixel apart around the
- perimeter of a large square. The color map is then repeatedly
- rotated. This results in a striking, rainbow-hued, shimmering
- four-leaf clover. Gosper joked about keeping it hidden from the
- FDA (the U.S.'s Food and Drug Administration) lest its
- hallucinogenic properties cause it to be banned.
-
- SMOP: /S-M-O-P/ [Simple (or Small) Matter of Programming] n.
- 1. A piece of code, not yet written, whose anticipated length is
- significantly greater than its complexity. Used to refer to a
- program that could obviously be written, but is not worth the
- trouble. Also used ironically to imply that a difficult problem
- can be easily solved because a program can be written to do it; the
- irony is that it is very clear that writing such a program will be
- a great deal of work. "It's easy to enhance a FORTRAN compiler to
- compile COBOL as well; it's just a SMOP." 2. Often used
- ironically by the intended victim when a suggestion for a program
- is made which seems easy to the suggester, but is obviously (to the
- victim) a lot of work.
-
- SNAFU principle: /sna'foo prin'si-pl/ [from WWII Army acronym
- for `Situation Normal, All Fucked Up'] n. "True communication is
- possible only between equals, because inferiors are more
- consistently rewarded for telling their superiors pleasant lies
- than for telling the truth." --- a central tenet of
- {Discordianism}, often invoked by hackers to explain why
- authoritarian hierarchies screw up so reliably and systematically.
- The effect of the SNAFU principle is a progressive disconnection of
- decision-makers from reality. This lightly adapted version of a
- fable dating back to the early 1960s illustrates the phenomenon
- perfectly:
-
- In the beginning was the plan,
- and then the specification;
- And the plan was without form,
- and the specification was void.
-
- And darkness
- was on the faces of the implementors thereof;
- And they spake unto their leader,
- saying:
- "It is a crock of shit,
- and smells as of a sewer."
-
- And the leader took pity on them,
- and spoke to the project leader:
- "It is a crock of excrement,
- and none may abide the odor thereof."
-
- And the project leader
- spake unto his section head, saying:
- "It is a container of excrement,
- and it is very strong, such that none may abide it."
-
- The section head then hurried to his department manager,
- and informed him thus:
- "It is a vessel of fertilizer,
- and none may abide its strength."
-
- The department manager carried these words
- to his general manager,
- and spoke unto him
- saying:
- "It containeth that which aideth the growth of plants,
- and it is very strong."
-
- And so it was that the general manager rejoiced
- and delivered the good news unto the Vice President.
- "It promoteth growth,
- and it is very powerful."
-
- The Vice President rushed to the President's side,
- and joyously exclaimed:
- "This powerful new software product
- will promote the growth of the company!"
-
- And the President looked upon the product,
- and saw that it was very good.
-
- After the subsequent disaster, the {suit}s protect themselves by
- saying "I was misinformed!", and the implementors are demoted or
- fired.
-
- snail: vt. To {snail-mail} something. "Snail me a copy of those
- graphics, will you?"
-
- snail-mail: n. Paper mail, as opposed to electronic. Sometimes
- written as the single word `SnailMail'. One's postal address is,
- correspondingly, a `snail address'. Derives from earlier coinage
- `USnail' (from `U.S. Mail'), for which there have been
- parody posters and stamps made. Oppose {email}.
-
- snap: v. To replace a pointer to a pointer with a direct pointer;
- to replace an old address with the forwarding address found there.
- If you telephone the main number for an institution and ask for a
- particular person by name, the operator may tell you that person's
- extension before connecting you, in the hopes that you will `snap
- your pointer' and dial direct next time. The underlying metaphor
- may be that of a rubber band stretched through a number of
- intermediate points; if you remove all the thumbtacks in the
- middle, it snaps into a straight line from first to last. See
- {chase pointers}.
-
- Often, the behavior of a {trampoline} is to perform an error
- check once and then snap the pointer that invoked it so as henceforth
- to bypass the trampoline (and its one-shot error check). In this
- context one also speaks of `snapping links'. For example, in a
- Lisp implementation, a function interface trampoline might check to
- make sure that the caller is passing the correct number of arguments;
- if it is, and if the caller and the callee are both compiled, then
- snapping the link allows that particular path to use a direct
- procedure-call instruction with no further overhead.
-
- snarf: /snarf/ vt. 1. To grab, esp. to grab a large document
- or file for the purpose of using it with or without the author's
- permission. See also {BLT}. 2. [in the UNIX community] To
- fetch a file or set of files across a network. See also
- {blast}. This term was mainstream in the late 1960s, meaning
- `to eat piggishly'. It may still have this connotation in context.
- "He's in the snarfing phase of hacking --- {FTP}ing megs of
- stuff a day." 3. To acquire, with little concern for legal forms
- or politesse (but not quite by stealing). "They were giving
- away samples, so I snarfed a bunch of them." 4. Syn. for
- {slurp}. "This program starts by snarfing the entire database
- into core, then...."
-
- snarf & barf: /snarf'n-barf`/ n. Under a {WIMP environment},
- the act of grabbing a region of text and then stuffing the contents
- of that region into another region (or the same one) to avoid
- retyping a command line. In the late 1960s, this was a mainstream
- expression for an `eat now, regret it later' cheap-restaurant
- expedition.
-
- snarf down: v. To {snarf}, with the connotation of absorbing,
- processing, or understanding. "I'll snarf down the latest
- version of the {nethack} user's guide --- It's been a while
- since I played last and I don't know what's changed recently."
-
- snark: [Lewis Carroll, via the Michigan Terminal System] n. 1. A
- system failure. When a user's process bombed, the operator would
- get the message "Help, Help, Snark in MTS!" 2. More generally,
- any kind of unexplained or threatening event on a computer
- (especially if it might be a boojum). Often used to refer to an
- event or a log file entry that might indicate an attempted security
- violation. See {snivitz}. 3. UUCP name of
- snark.thyrsus.com, home site of the Jargon File 2.*.* versions
- (i.e., this lexicon).
-
- sneakernet: /snee'ker-net/ n. Term used (generally with ironic
- intent) for transfer of electronic information by physically
- carrying tape, disks, or some other media from one machine to
- another. "Never underestimate the bandwidth of a station wagon
- filled with magtape, or a 747 filled with CD-ROMs." Also called
- `Tennis-Net', `Armpit-Net', `Floppy-Net'.
-
- sniff: v.,n. Synonym for {poll}.
-
- snivitz: /sniv'itz/ n. A hiccup in hardware or software; a small,
- transient problem of unknown origin (less serious than a
- {snark}). Compare {glitch}.
-
- SO: /S-O/ n. 1. (also `S.O.') Abbrev. for Significant
- Other, almost invariably written abbreviated and pronounced
- /S-O/ by hackers. Used to refer to one's primary
- relationship, esp. a live-in to whom one is not married. See
- {MOTAS}, {MOTOS}, {MOTSS}. 2. The Shift Out control
- character in ASCII (Control-N, 0001110).
-
- social science number: [IBM] n. A statistic that is
- {content-free}, or nearly so. A measure derived via methods of
- questionable validity from data of a dubious and vague nature.
- Predictively, having a social science number in hand is seldom much
- better than nothing, and can be considerably worse. {Management}
- loves them. See also {numbers}, {math-out}, {pretty
- pictures}.
-
- soft boot: n. See {boot}.
-
- softcopy: /soft'ko-pee/ n. [by analogy with `hardcopy'] A
- machine-readable form of corresponding hardcopy. See {bits},
- {machinable}.
-
- software bloat: n. The results of {second-system effect} or
- {creeping featuritis}. Commonly cited examples include
- `ls(1)', {X}, {BSD}, {Missed'em-five}, and {OS/2}.
-
- software rot: n. Term used to describe the tendency of software
- that has not been used in a while to {lose}; such failure may be
- semi-humorously ascribed to {bit rot}. More commonly,
- `software rot' strikes when a program's assumptions become out
- of date. If the design was insufficiently {robust}, this may
- cause it to fail in mysterious ways.
-
- For example, owing to endemic shortsightedness in the design of
- COBOL programs, most will succumb to software rot when their
- 2-digit year counters {wrap around} at the beginning of the
- year 2000. Actually, related lossages often afflict centenarians
- who have to deal with computer software designed by unimaginative
- clods. One such incident became the focus of a minor public flap
- in 1990, when a gentleman born in 1889 applied for a driver's
- license renewal in Raleigh, North Carolina. The new system
- refused to issue the card, probably because with 2-digit years the
- ages 101 and 1 cannot be distinguished.
-
- Historical note: Software rot in an even funnier sense than the
- mythical one was a real problem on early research computers (e.g.,
- the R1; see {grind crank}). If a program that depended on a
- peculiar instruction hadn't been run in quite a while, the user
- might discover that the opcodes no longer did the same things they
- once did. ("Hey, so-and-so needs an instruction to do
- such-and-such. We can {snarf} this opcode, right? No one uses
- it.")
-
- Another classic example of this sprang from the time an MIT hacker
- found a simple way to double the speed of the unconditional jump
- instruction on a PDP-6, so he patched the hardware. Unfortunately,
- this broke some fragile timing software in a music-playing program,
- throwing its output out of tune. This was fixed by adding a
- defensive initialization routine to compare the speed of a timing
- loop with the real-time clock; in other words, it figured out how
- fast the PDP-6 was that day, and corrected appropriately.
-
- Compare {bit rot}.
-
- softwarily: /soft-weir'i-lee/ adv. In a way pertaining to software.
- "The system is softwarily unreliable." The adjective
- `softwary' is *not* used. See {hardwarily}.
-
- softy: [IBM] n. Hardware hackers' term for a software expert who
- is largely ignorant of the mysteries of hardware.
-
- some random X: adj. Used to indicate a member of class X, with the
- implication that Xs are interchangeable. "I think some random
- cracker tripped over the guest timeout last night." See also
- {J. Random}.
-
- sorcerer's apprentice mode: [from the film "Fantasia"] n. A bug in a
- protocol where, under some circumstances, the receipt of a message
- causes multiple messages to be sent, each of which, when
- received, triggers the same bug. Used esp. of such behavior
- caused by {bounce message} loops in {email} software. Compare
- {broadcast storm}, {network meltdown}.
-
- SOS: n.,obs. /S-O-S/ 1. An infamously {losing} text editor.
- Once, back in the 1960s, when a text editor was needed for the
- PDP-6, a hacker crufted together a {quick-and-dirty} `stopgap
- editor' to be used until a better one was written. Unfortunately,
- the old one was never really discarded when new ones (in
- particular, {TECO}) came along. SOS is a descendant (`Son of
- Stopgap') of that editor, and many PDP-10 users gained the dubious
- pleasure of its acquaintance. Since then other programs similar in
- style to SOS have been written, notably the early font editor BILOS
- /bye'lohs/, the Brother-In-Law Of Stopgap (the alternate expansion
- `Bastard Issue, Loins of Stopgap' has been proposed). 2. /sos/
- n. To decrease; inverse of {AOS}, from the PDP-10 instruction
- set.
-
- source of all good bits: n. A person from whom (or a place from
- which) useful information may be obtained. If you need to know
- about a program, a {guru} might be the source of all good bits.
- The title is often applied to a particularly competent secretary.
-
- space-cadet keyboard: n. The Knight keyboard, a now-legendary device
- used on MIT LISP machines, which inspired several still-current
- jargon terms and influenced the design of {EMACS}. It was inspired
- by the Stanford keyboard and equipped with no fewer than
- *seven* shift keys: four keys for {bucky bits} (`control',
- `meta', `hyper', and `super') and three like regular shift keys,
- called `shift', `top', and `front'. Many keys had three symbols
- on them: a letter and a symbol on the top, and a Greek letter on
- the front. For example, the `L' key had an `L' and a two-way
- arrow on the top, and the Greek letter lambda on the front. If you
- press this key with the right hand while playing an appropriate
- `chord' with the left hand on the shift keys, you can get the
- following results:
-
- L
-
- lowercase l
-
- shift-L
-
- uppercase L
-
- front-L
-
- lowercase lambda
-
- front-shift-L
-
- uppercase lambda
-
- top-L
-
- two-way arrow
- (front and shift are ignored)
-
- And of course each of these might also be typed with any
- combination of the control, meta, hyper, and super keys. On this
- keyboard, you could type over 8000 different characters! This
- allowed the user to type very complicated mathematical text, and
- also to have thousands of single-character commands at his
- disposal. Many hackers were actually willing to memorize the
- command meanings of that many characters if it reduced typing time
- (this attitude obviously shaped the interface of EMACS). Other
- hackers, however, thought having that many bucky bits was overkill,
- and objected that such a keyboard can require three or four hands
- to operate. See {bucky bits}, {cokebottle}, {double bucky},
- {meta bit}, {quadruple bucky}.
-
- SPACEWAR: n. A space-combat simulation game, inspired by
- E. E. "Doc" Smith's "Lensman" books, in which two spaceships
- duel around a central sun, shooting torpedoes at each other and
- jumping through hyperspace. This game was first implemented on the
- PDP-1 at MIT in 1960--61. SPACEWAR aficionados formed the core of
- the early hacker culture at MIT. Nine years later, a descendant
- of the game motivated Ken Thompson to build, in his spare time on a
- scavenged PDP-7, the operating system that became {{UNIX}}. Less
- than 9 years after that, SPACEWAR was commercialized as one of
- the first video games; descendants are still {feep}ing in video
- arcades everywhere.
-
- spaghetti code: n. Code with a complex and tangled control
- structure, esp. one using many GOTOs, exceptions, or other
- `unstructured' branching constructs. Pejorative. The synonym
- `kangaroo code' has been reported, doubtless because such code
- has many jumps in it.
-
- spaghetti inheritance: n. [encountered among users of object-oriented
- languages that use inheritance, such as Smalltalk] A convoluted
- class-subclass graph, often resulting from carelessly deriving
- subclasses from other classes just for the sake of reusing their
- code. Coined in a (successful) attempt to discourage such
- practice, through guilt-by-association with {spaghetti code}.
-
- spam: [from the {MUD} community] vt. To crash a program by overrunning
- a fixed-size buffer with excessively large input data. See also
- {buffer overflow}, {overrun screw}, {smash the stack}.
-
- special-case: vt. To write unique code to handle input to or
- situations arising in program that are somehow distinguished from
- normal processing. This would be used for processing of mode
- switches or interrupt characters in an interactive interface (as
- opposed, say, to text entry or normal commands), or for processing
- of {hidden flag}s in the input of a batch program or {filter}.
-
- speedometer: n. A pattern of lights displayed on a linear set of
- LEDs (today) or nixie tubes (yesterday, on ancient mainframes). The
- pattern is shifted left every N times the software goes
- through its main loop. A swiftly moving pattern indicates that the
- system is mostly idle; the speedometer slows down as the system
- becomes overloaded. The speedometer on Sun Microsystems hardware
- bounces back and forth like the eyes on one of the Cylons from the
- wretched "Battlestar Galactica" TV series.
-
- Historical note: One computer, the Honeywell 6000 (later GE 600)
- actually had an *analog* speedometer on the front panel,
- calibrated in instructions executed per second.
-
- spell: n. Syn. {incantation}.
-
- spiffy: /spi'fee/ adj. 1. Said of programs having a pretty,
- clever, or exceptionally well-designed interface. "Have you seen
- the spiffy {X} version of {empire} yet?" 2. Said
- sarcastically of a program that is perceived to have little more
- than a flashy interface going for it. Which meaning should be
- drawn depends delicately on tone of voice and context. This word
- was common mainstream slang during the 1940s, in a sense close to #1.
-
- spin: vi. Equivalent to {buzz}. More common among C and UNIX
- programmers.
-
- spl: /S-P-L/ [abbrev, from Set Priority Level] The way
- traditional UNIX kernels implement mutual exclusion by running code
- at high interrupt levels. Used in jargon to describe the act of
- tuning in or tuning out ordinary communication. Classically, spl
- levels run from 1 to 7; "Fred's at spl 6 today." would mean
- that he is very hard to interrupt. "Wait till I finish this; I'll
- spl down then." See also {interrupts locked out}.
-
- splat: n. 1. Name used in many places (DEC, IBM, and others) for
- the asterisk (`*') character (ASCII 0101010). This may derive
- from the `squashed-bug' appearance of the asterisk on many early
- line printers. 2. [MIT] Name used by some people for the
- `#' character (ASCII 0100011). 3. [Rochester Institute of
- Technology] The {command key} on a Mac (same as {ALT},
- sense 2). 4. [Stanford] Name used by some people for the
- Stanford/ITS extended ASCII
- circle-x
- character. This character is also called `blobby' and `frob',
- among other names; it is sometimes used by mathematicians as a
- notation for `tensor product'. 5. [Stanford] Name for the
- semi-mythical extended ASCII
- circle-plus
-
- character. 6. Canonical name for an output routine that outputs
- whatever the local interpretation of `splat' is.
-
- With ITS and WAITS gone, senses 4--6 are now nearly obsolete. See
- also {{ASCII}}.
-
- sponge: [UNIX] n. A special case of a {filter} that reads its
- entire input before writing any output; the canonical example is a
- sort utility. Unlike most filters, a sponge can conveniently
- overwrite the input file with the output data stream. If your file
- system has versioning (as ITS did and VMS does now) the
- sponge/filter distinction loses its usefulness, because directing
- filter output would just write a new version. See also {slurp}.
-
- spooge: /spooj/ 1. n. Inexplicable or arcane code, or random
- and probably incorrect output from a computer program. 2. vi. To
- generate spooge (sense 1).
-
- spool: [from early IBM `Simultaneous Peripheral Operation Off-Line',
- but this acronym is widely thought to have been contrived for
- effect] vt. To send files to some device or program (a `spooler')
- that queues them up and does something useful with them later. The
- spooler usually understood is the `print spooler' controlling
- output of jobs to a printer, but the term has been used in
- connection with other peripherals (especially plotters and graphics
- devices). See also {demon}.
-
- stack: n. A person's stack is the set of things he or she has to do
- in the future. One speaks of the next project to be attacked as
- having risen to the top of the stack. "I'm afraid I've got real
- work to do, so this'll have to be pushed way down on my stack."
- "I haven't done it yet because every time I pop my stack something
- new gets pushed." If you are interrupted several times in the
- middle of a conversation, "My stack overflowed" means "I
- forget what we were talking about." The implication is that more
- items were pushed onto the stack than could be remembered, so the
- least recent items were lost. The usual physical example of a
- stack is to be found in a cafeteria: a pile of plates or trays
- sitting on a spring in a well, so that when you put one on the top
- they all sink down, and when you take one off the top the rest
- spring up a bit. See also {push} and {pop}.
-
- At MIT, {pdl} used to be a more common synonym for {stack} in
- all these contexts, and this may still be true. Everywhere else
- {stack} seems to be the preferred term. {Knuth}
- (`The Art of Computer Programming', second edition, vol. 1,
- p. 236) says:
-
- Many people who realized the importance of stacks and queues
- independently have given other names to these structures:
- stacks have been called push-down lists, reversion storages,
- cellars, nesting stores, piles, last-in-first-out ("LIFO")
- lists, and even yo-yo lists!
-
- stack puke: n. Some processor architectures are said to `puke their
- guts onto the stack' to save their internal state during exception
- processing. The Motorola 68020, for example, regurgitates up to
- 92 bytes on a bus fault. On a pipelined machine, this can take a
- while.
-
- stale pointer bug: n. Synonym for {aliasing bug} used esp. among
- microcomputer hackers.
-
- state: n. 1. Condition, situation. "What's the state of your
- latest hack?" "It's winning away." "The system tried to read
- and write the disk simultaneously and got into a totally wedged
- state." The standard question "What's your state?" means
- "What are you doing?" or "What are you about to do?" Typical
- answers are "about to gronk out", or "hungry". Another
- standard question is "What's the state of the world?", meaning
- "What's new?" or "What's going on?". The more terse and
- humorous way of asking these questions would be "State-p?".
- Another way of phrasing the first question under sense 1 would be
- "state-p latest hack?". 2. Information being maintained in
- non-permanent memory (electronic or human).
-
- steam-powered: adj. Old-fashioned or underpowered; archaic. This
- term does not have a strong negative loading and may even be used
- semi-affectionately for something that clanks and wheezes a lot
- but hangs in there doing the job.
-
- stiffy: [University of Lowell, Massachusetts.] n. 3.5-inch
- {microfloppies}, so called because their jackets are more firm
- than those of the 5.25-inch and the 8-inch floppy. Elsewhere this might be
- called a `firmy'.
-
- stir-fried random: alt. `stir-fried mumble' n. Term used for the
- best dish of many of those hackers who can cook. Consists of
- random fresh veggies and meat wokked with random spices. Tasty and
- economical. See {random}, {great-wall}, {ravs}, {{laser
- chicken}}, {{oriental food}}; see also {mumble}.
-
- stomp on: vt. To inadvertently overwrite something important, usually
- automatically. "All the work I did this weekend got
- stomped on last night by the nightly server script." Compare
- {scribble}, {mangle}, {trash}, {scrog}, {roach}.
-
- Stone Age: n., adj. 1. In computer folklore, an ill-defined period
- from ENIAC (ca. 1943) to the mid-1950s; the great age of
- electromechanical {dinosaur}s. Sometimes used for the entire
- period up to 1960--61 (see {Iron Age}); however, it is funnier
- and more descriptive to characterize the latter period in terms of
- a `Bronze Age' era of transistor-logic, pre-ferrite-{core}
- machines with drum or CRT mass storage (as opposed to just mercury
- delay lines and/or relays). See also {Iron Age}. 2. More
- generally, a pejorative for any crufty, ancient piece of hardware
- or software technology. Note that this is used even by people who
- were there for the {Stone Age} (sense 1).
-
- stoppage: /sto'p*j/ n. Extreme {lossage} that renders
- something (usually something vital) completely unusable. "The
- recent system stoppage was caused by a {fried} transformer."
-
- store: [prob. from techspeak `main store'] n. Preferred Commonwealth
- synonym for {core}. Thus, `bringing a program into store' means
- not that one is returning shrink-wrapped software but that a
- program is being {swap}ped in.
-
- stroke: n. Common name for the slant (`/', ASCII 0101111)
- character. See {ASCII} for other synonyms.
-
- strudel: n. Common (spoken) name for the circumflex (`', ASCII
- 1000000) character. See {ASCII} for other synonyms.
-
- stubroutine: /stuhb'roo-teen/ [contraction of `stub routine']
- n. Tiny, often vacuous placeholder for a subroutine that is to be
- written or fleshed out later.
-
- studlycaps: /stuhd'lee-kaps/ n. A hackish form of silliness
- similar to {BiCapitalization} for trademarks, but applied
- randomly and to arbitrary text rather than to trademarks. ThE
- oRigiN and SigNificaNce of thIs pRacTicE iS oBscuRe.
-
- stunning: adj. Mind-bogglingly stupid. Usually used in sarcasm.
- "You want to code *what* in ADA? That's ... a stunning
- idea!"
-
- stupid-sort: n. Syn. {bogo-sort}.
-
- subshell: /suhb'shel/ [UNIX, MS-DOS] n. An OS command interpreter
- (see {shell}) spawned from within a program, such that exit from
- the command interpreter returns one to the parent program in a
- state that allows it to continue execution. Compare {shell out};
- oppose {chain}.
-
- sucking mud: [Applied Data Research] adj. (also `pumping
- mud') Crashed or wedged. Usually said of a machine that provides
- some service to a network, such as a file server. This Dallas
- regionalism derives from the East Texas oilfield lament, "Shut
- 'er down, Ma, she's a-suckin' mud". Often used as a query. "We
- are going to reconfigure the network, are you ready to suck mud?"
-
- sufficiently small: adj. Syn. {suitably small}.
-
- suit: n. 1. Ugly and uncomfortable `business clothing' often worn
- by non-hackers. Invariably worn with a `tie', a strangulation
- device that partially cuts off the blood supply to the brain. It
- is thought that this explains much about the behavior of
- suit-wearers. Compare {droid}. 2. A person who habitually wears
- suits, as distinct from a techie or hacker. See {loser},
- {burble}, {management}, and {brain-damaged}. English, by the
- way, is relatively kind; our Soviet correspondent informs us that
- the corresponding idiom in Russian hacker jargon is `sovok', lit.
- a tool for grabbing garbage.
-
- suitable win: n. See {win}.
-
- suitably small: [perverted from mathematical jargon] adj. An
- expression used ironically to characterize unquantifiable
- behavior that differs from expected or required behavior. For
- example, suppose a newly created program came up with a correct
- full-screen display, and one publicly exclaimed: "It works!"
- Then, if the program dumps core on the first mouse click, one might
- add: "Well, for suitably small values of `works'." Compare
- the characterization of pi under {{random numbers}}.
-
- sun-stools: n. Unflattering hackerism for SunTools, a pre-X
- windowing environment notorious in its day for size, slowness, and
- misfeatures. {X}, however, is larger and slower; see
- {second-system effect}.
-
- sunspots: n. 1. Notional cause of an odd error. "Why did the
- program suddenly turn the screen blue?" "Sunspots, I guess."
- 2. Also the cause of {bit rot} --- from the myth that sunspots
- will increase {cosmic rays}, which can flip single bits in memory.
- See {cosmic rays}, {phase of the moon}.
-
- superprogrammer: n. A prolific programmer; one who can code
- exceedingly well and quickly. Not all hackers are
- superprogrammers, but many are. (Productivity can vary from one
- programmer to another by three orders of magnitude. For example,
- one programmer might be able to write an average of 3 lines of
- working code in one day, while another, with the proper tools,
- might be able to write 3,000. This range is astonishing; it is
- matched in very few other areas of human endeavor.) The term
- `superprogrammer' is more commonly used within such places as IBM
- than in the hacker community. It tends to stress na"ive measures
- of productivity and to underweight creativity, ingenuity, and
- getting the job *done* --- and to sidestep the question of
- whether the 3,000 lines of code do more or less useful work than
- three lines that do the {Right Thing}. Hackers tend to prefer
- the terms {hacker} and {wizard}.
-
- superuser: [UNIX] n. Syn. {root}, {avatar}. This usage has
- spread to non-UNIX environments; the superuser is any account with
- all {wheel} bits on. A more specific term than {wheel}.
-
- support: n. After-sale handholding; something many software
- vendors promise but few deliver. To hackers, most support people
- are useless --- because by the time a hacker calls support he or
- she will usually know the relevant manuals better than the support
- people (sadly, this is *not* a joke or exaggeration). A
- hacker's idea of `support' is a t^ete-`a-t^ete with the
- software's designer.
-
- Suzie COBOL: /soo'zee koh'bol/ 1. [IBM: prob. from Frank Zappa's
- `Suzy Creamcheese'] n. A coder straight out of training school who
- knows everything except the value of comments in plain English.
- Also (fashionable among personkind wishing to avoid accusations of
- sexism) `Sammy Cobol' or (in some non-IBM circles) `Cobol Charlie'.
- 2. [proposed] Meta-name for any {code grinder}, analogous to
- {J. Random Hacker}.
-
- swab: /swob/ [From the mnemonic for the PDP-11 `SWAp Byte'
- instruction, as immortalized in the `dd(1)' option `conv=swab'
- (see {dd})] 1. vt. To solve the {NUXI problem} by swapping
- bytes in a file. 2. n. The program in V7 UNIX used to perform this
- action, or anything functionally equivalent to it. See also
- {big-endian}, {little-endian}, {middle-endian},
- {bytesexual}.
-
- swap: vt. 1. [techspeak] To move information from a fast-access
- memory to a slow-access memory (`swap out'), or vice versa
- (`swap in'). Often refers specifically to the use of disks as
- `virtual memory'. As pieces of data or program are needed, they
- are swapped into {core} for processing; when they are no longer
- needed they may be swapped out again. 2. The jargon use of these
- terms analogizes people's short-term memories with core. Cramming
- for an exam might be spoken of as swapping in. If you temporarily
- forget someone's name, but then remember it, your excuse is that it
- was swapped out. To `keep something swapped in' means to keep it
- fresh in your memory: "I reread the TECO manual every few months
- to keep it swapped in." If someone interrupts you just as you got
- a good idea, you might say "Wait a moment while I swap this
- out", implying that the piece of paper is your extra-somatic
- memory and if you don't swap the info out by writing it down it
- will get overwritten and lost as you talk. Compare {page in},
- {page out}.
-
- swap space: n. Storage space, especially temporary storage space
- used during a move or reconfiguration. "I'm just using that corner
- of the machine room for swap space."
-
- swapped in: n. See {swap}. See also {page in}.
-
- swapped out: n. See {swap}. See also {page out}.
-
- swizzle: v. To convert external names, array indices, or references
- within a data structure into address pointers when the data
- structure is brought into main memory from external storage (also
- called `pointer swizzling'); this may be done for speed in
- chasing references or to simplify code (e.g., by turning lots of
- name lookups into pointer dereferences). The converse operation is
- sometimes termed `unswizzling'. See also {snap}.
-
- sync: /sink/ (var. `synch') n., vi. 1. To synchronize, to
- bring into synchronization. 2. [techspeak] To force all pending
- I/O to the disk; see {flush}, sense 2. 3. More generally, to
- force a number of competing processes or agents to a state that
- would be `safe' if the system were to crash; thus, to checkpoint
- (in the database-theory sense).
-
- syntactic sugar: [coined by Peter Landin] n. Features added to a
- language or other formalism to make it `sweeter' for humans,
- that do not affect the expressiveness of the formalism (compare
- {chrome}). Used esp. when there is an obvious and trivial
- translation of the `sugar' feature into other constructs already
- present in the notation. C's `a[i]' notation is syntactic
- sugar for `*(a + i)'. "Syntactic sugar causes cancer of the
- semicolon." --- Alan Perlis
-
- The variant `syntactic saccharine' is also recorded. This
- denotes something even more gratuitous, in that syntactic sugar
- serves a purpose (making something more acceptable to humans) but
- syntactic saccharine serves no purpose at all.
-
- sys-frog: /sis'frog/ [the PLATO system] n. Playful variant of
- `sysprog', which is in turn short for `systems programmer'.
-
- sysadmin: /sis'ad-min/ n. Common contraction of `system
- admin'; see {admin}.
-
- sysop: /sis'op/ n. [esp. in the BBS world] The operator (and
- usually the owner) of a bulletin-board system. A common neophyte
- mistake on {FidoNet} is to address a message to `sysop' in an
- international {echo}, thus sending it to hundreds of sysops
- around the world.
-
- system: n. 1. The supervisor program or OS on a computer. 2. The
- entire computer system, including input/output devices, the
- supervisor program or OS, and possibly other software. 3. Any
- large-scale program. 4. Any method or algorithm. 5. `System
- hacker': one who hacks the system (in senses 1 and 2 only; for
- sense 3 one mentions the particular program: e.g., `LISP
- hacker')
-
- systems jock: n. See {jock}, (sense 2).
-
- SysVile: /sis-vi:l'/ n. See {Missed'em-five}.
-
- system mangler: n. Humorous synonym for `system manager', poss.
- from the fact that one major IBM OS had a {root} account called
- SYSMANGR. Refers specifically to a systems programmer in charge of
- administration, software maintenance, and updates at some site.
- Unlike {admin}, this term emphasizes the technical end of the
- skills involved.
-
- = T =
-
- T: /T/ 1. [from LISP terminology for `true'] Yes. Used in
- reply to a question (particularly one asked using the `-P'
- convention). In LISP, the constant T means `true', among other
- things. Some hackers use `T' and `NIL' instead of `Yes' and `No'
- almost reflexively. This sometimes causes misunderstandings. When
- a waiter or flight attendant asks whether a hacker wants coffee, he
- may well respond `T', meaning that he wants coffee; but of course
- he will be brought a cup of tea instead. As it happens, most
- hackers (particularly those who frequent Chinese restaurants) like
- tea at least as well as coffee --- so it is not that big a problem.
- 2. See {time T} (also {since time T equals minus infinity}).
- 3. [techspeak] In transaction-processing circles, an abbreviation
- for the noun `transaction'. 4. [Purdue] Alternate spelling of
- {tee}.
-
- tail recursion: n. If you aren't sick of it already, see {tail
- recursion}.
-
- talk mode: n. A feature supported by UNIX, ITS, and some other
- OSes that allows two or more logged-in users to set up a real-time
- on-line conversation. It combines the immediacy of talking with
- all the precision (and verbosity) that written language entails.
- It is difficult to communicate inflection, though conventions have
- arisen for some of these (see the section on writing style in the
- Prependices for details).
-
- Talk mode has a special set of jargon words, used to save typing,
- which are not used orally. Some of these are identical to (and
- probably derived from) Morse-code jargon used by ham-radio amateurs
- since the 1920s.
-
- `BCNU'
-
- be seeing you
- `BTW'
- by the way
- `BYE?'
- are you ready to unlink? (this is the standard way to end a talk-mode
- conversation; the other person types `BYE' to confirm, or else continues
- the conversation)
- `CUL'
-
- see you later
- `ENQ?'
- are you busy? (expects `ACK' or `NAK' in return)
- `FOO?'
- are you there? (often used on unexpected links,
- meaning also "Sorry if I butted in ..." (linker) or "What's
- up?" (linkee))
- `FYI'
-
- for your information
- `FYA'
-
- for your amusement
- `GA'
- go ahead (used when two people have tried to type simultaneously; this
- cedes the right to type to the other)
- `GRMBL'
-
- grumble (expresses disquiet or disagreement)
- `HELLOP'
- hello? (an instance of the `-P' convention)
- `JAM'
- just a minute (equivalent to `SEC....')
- `MIN'
-
- same as `JAM'
- `NIL'
-
- no (see {NIL})
- `O'
- over to you
- `OO'
-
- over and out
- `/'
- another form of "over to you" (from x/y as "x over y")
- `\'
- lambda (used in discussing LISPy things)
- `OBTW'
-
- oh, by the way
- `R U THERE?'
- are you there?
- `SEC'
-
- wait a second (sometimes written `SEC...')
- `T'
- yes (see the main entry for {T})
- `TNX'
-
- thanks
- `TNX 1.0E6'
- thanks a million (humorous)
- `TNXE6'
- another for of "thanks a million"
- `WRT'
-
- with regard to, or with respect to.
- `WTF'
- the universal interrogative particle; WTF knows what it means?
- `WTH'
-
- what the hell?
- `<double newline>'
- When the typing party has finished, he/she types two newlines to
- signal that he/she is done; this leaves a blank line between
- `speeches' in the conversation, making it easier to reread the
- preceding text.
- `<name>:'
- When three or more terminals are linked, it is conventional for each
- typist to {prepend} his/her login name or handle and a colon
- (or a hyphen) to each line to indicate who is typing (some
- conferencing facilities do this automatically). The login name
- is often shortened to a unique prefix (possibly a single letter)
- during a very long conversation.
- `/\/\/\'
- A giggle or chuckle. On a MUD, this usually means `earthquake fault'.
-
- Most of the above sub-jargon is used at both Stanford and MIT.
- Several of these expressions are also common in {email}, esp.
- FYI, FYA, BTW, BCNU, WTF, and CUL. A few other abbreviations have
- been reported from commercial networks, such as GEnie and CompuServe,
- where on-line `live' chat including more than two people is
- common and usually involves a more `social' context, notably the
- following:
-
- `<g>'
- grin
- `<gr&d>'
- grinning, running, and ducking
- `BBL'
- be back later
- `BRB'
- be right back
- `HHOJ'
- ha ha only joking
- `HHOK'
- ha ha only kidding
- `HHOS'
- {ha ha only serious}
- `IMHO'
- in my humble opinion (see {IMHO})
- `LOL'
- laughing out loud
- `ROTF'
- rolling on the floor
- `ROTFL'
- rolling on the floor laughing
- `AFK'
- away from keyboard
- `b4'
- before
- `CU l8tr'
- see you later
- `MORF'
- male or female?
- `TTFN'
- ta-ta for now
- `OIC'
- oh, I see
- `rehi'
- hello again
-
- Most of these are not used at universities or in the UNIX world,
- though ROTF and TTFN have gained some currency there and IMHO is
- common; conversely, most of the people who know these are
- unfamiliar with FOO?, BCNU, HELLOP, {NIL}, and {T}.
-
- The {MUD} community uses a mixture of USENET/Internet emoticons, a
- few of the more natural of the old-style talk-mode abbrevs, and
- some of the `social' list above; specifically, MUD respondents
- report use of BBL, BRB, LOL, b4, BTW, WTF, TTFN, and WTH. The use of
- `rehi' is also common; in fact, mudders are fond of re- compounds and
- will frequently `rehug' or `rebonk' (see {bonk/oif}) people. The
- word `re' by itself is taken as `regreet'. In general, though,
- MUDders express a preference for typing things out in full rather
- than using abbreviations; this may be due to the relative youth of
- the MUD cultures, which tend to include many touch typists and
- to assume high-speed links. The following uses specific to MUDs are
- reported:
-
- `UOK?'
- are you OK?
- `THX'
- thanks (mutant of `TNX'; clearly this comes in batches of 1138 (the
- Lucasian K)).
- `CU l8er'
- see you later (mutant of `CU l8tr')
- `OTT'
- over the top (excessive, uncalled for)
-
- Some {BIFF}isms (notably the variant spelling `d00d')
- appear to be passing into wider use among some subgroups of
- MUDders.
-
- One final note on talk mode style: neophytes, when in talk mode,
- often seem to think they must produce letter-perfect prose because
- they are typing rather than speaking. This is not the best
- approach. It can be very frustrating to wait while your partner
- pauses to think of a word, or repeatedly makes the same spelling
- error and backs up to fix it. It is usually best just to leave
- typographical errors behind and plunge forward, unless severe
- confusion may result; in that case it is often fastest just to type
- "xxx" and start over from before the mistake.
-
- See also {hakspek}, {emoticon}, {bonk/oif}.
-
- talker system: n. British hackerism for software that enables
- real-time chat or {talk mode}.
-
- tall card: n. A PC/AT-size expansion card (these can be larger
- than IBM PC or XT cards because the AT case is bigger). See also
- {short card}. When IBM introduced the PS/2 model 30 (its last
- gasp at supporting the ISA) they made the case lower and many
- industry-standard tall cards wouldn't fit; this was felt to be a
- reincarnation of the {connector conspiracy}, done with less
- style.
-
- tanked: adj. Same as {down}, used primarily by UNIX hackers. See
- also {hosed}. Popularized as a synonym for `drunk' by Steve
- Dallas in the late lamented "Bloom County" comic strip.
-
- tar and feather: [from UNIX `tar(1)'] vt. To create a
- transportable archive from a group of files by first sticking them
- together with `tar(1)' (the Tape ARchiver) and then
- compressing the result (see {compress}). The latter action is
- dubbed `feathering' by analogy to what you do with an airplane
- propeller to decrease wind resistance, or with an oar to reduce
- water resistance; smaller files, after all, slip through comm links
- more easily.
-
- taste: [primarily MIT] n. 1. The quality in a program that tends
- to be inversely proportional to the number of features, hacks, and
- kluges programmed into it. Also `tasty', `tasteful',
- `tastefulness'. "This feature comes in N tasty flavors."
- Although `tasteful' and `flavorful' are essentially
- synonyms, `taste' and {flavor} are not. Taste refers to
- sound judgment on the part of the creator; a program or feature
- can *exhibit* taste but cannot {have} taste. On the other
- hand, a feature can have {flavor}. Also, {flavor} has the
- additional meaning of `kind' or `variety' not shared by
- `taste'. {Flavor} is a more popular word than `taste',
- though both are used. See also {elegant}. 2. Alt. sp. of
- {tayste}.
-
- tayste: /tayst/ n. Two bits; also as {taste}. Syn. {crumb},
- {quarter}. Compare {{byte}}, {dynner}, {playte},
- {nybble}, {quad}.
-
- TCB: /T-C-B/ [IBM] n. 1. Trouble Came Back. An intermittent or
- difficult-to-reproduce problem that has failed to respond to
- neglect. Compare {heisenbug}. Not to be confused with:
- 2. Trusted Computing Base, an `official' jargon term from the
- {Orange Book}.
-
- tea, ISO standard cup of: [South Africa] n. A cup of tea with milk
- and one teaspoon of sugar, where the milk is poured into the cup
- before the tea. Variations are ISO 0, with no sugar; ISO 2, with
- two spoons of sugar; and so on.
-
- Like many ISO standards, this one has a faintly alien ring in North
- America, where hackers generally shun the decadent British practice
- of adulterating perfectly good tea with dairy products and
- prefer instead to add a wedge of lemon, if anything. If one were
- feeling extremely silly, one might hypothesize an analogous `ANSI
- standard cup of tea' and wind up with a political situation
- distressingly similar to several that arise in much more serious
- technical contexts. Milk and lemon don't mix very well.
-
- TechRef: /tek'ref/ [MS-DOS] n. The original `IBM PC
- Technical Reference Manual', including the BIOS listing and
- complete schematics for the PC. The only PC documentation in the
- issue package that's considered serious by real hackers.
-
- TECO: /tee'koh/ obs. 1. vt. Originally, to edit using the TECO
- editor in one of its infinite variations (see below). 2. vt.,obs.
- To edit even when TECO is *not* the editor being used! This
- usage is rare and now primarily historical. 2. [originally an
- acronym for `[paper] Tape Editor and COrrector'; later, `Text
- Editor and COrrector'] n. A text editor developed at MIT and
- modified by just about everybody. With all the dialects included,
- TECO might have been the most prolific editor in use before
- {EMACS}, to which it was directly ancestral. Noted for its
- powerful programming-language-like features and its unspeakably
- hairy syntax. It is literally the case that every string of
- characters is a valid TECO program (though probably not a useful
- one); one common hacker game used to be mentally working out what
- the TECO commands corresponding to human names did. As an example
- of TECO's obscurity, here is a TECO program that takes a list of
- names such as:
-
- Loser, J. Random
- Quux, The Great
- Dick, Moby
-
- sorts them alphabetically according to surname, and then puts the
- surname last, removing the comma, to produce the following:
-
- Moby Dick
- J. Random Loser
- The Great Quux
-
- The program is
-
- [1 J^P$L$$
- J <.-Z; .,(S,$ -D .)FX1 @F^B $K :L I $ G1 L>$$
-
- (where ^B means `Control-B' (ASCII 0000010) and $ is actually
- an {ALT} or escape (ASCII 0011011) character).
-
- In fact, this very program was used to produce the second, sorted
- list from the first list. The first hack at it had a {bug}: GLS
- (the author) had accidentally omitted the `@' in front
- of `F^B', which as anyone can see is clearly the {Wrong Thing}. It
- worked fine the second time. There is no space to describe all the
- features of TECO, but it may be of interest that `^P' means
- `sort' and `J<.-Z; ... L>' is an idiomatic series of commands
- for `do once for every line'.
-
- In mid-1991, TECO is pretty much one with the dust of history,
- having been replaced in the affections of hackerdom by {EMACS}.
- Descendants of an early (and somewhat lobotomized) version adopted
- by DEC can still be found lurking on VMS and a couple of crufty
- PDP-11 operating systems, however, and ports of the more advanced
- MIT versions remain the focus of some antiquarian interest. See
- also {retrocomputing}, {write-only language}.
-
- tee: n.,vt. [Purdue] A carbon copy of an electronic transmission.
- "Oh, you're sending him the {bits} to that? Slap on a tee for
- me." From the UNIX command `tee(1)', itself named after a
- pipe fitting (see {plumbing}). Can also mean `save one for me',
- as in "Tee a slice for me!" Also spelled `T'.
-
- Telerat: /tel'*-rat/ n. Unflattering hackerism for `Teleray', a
- line of extremely losing terminals. See also {terminak},
- {sun-stools}, {HP-SUX}.
-
- TELNET: /tel'net/ vt. To communicate with another Internet host
- using the {TELNET} program. TOPS-10 people used the word
- IMPCOM, since that was the program name for them. Sometimes
- abbreviated to TN /T-N/. "I usually TN over to SAIL just to
- read the AP News."
-
- ten-finger interface: n. The interface between two networks that
- cannot be directly connected for security reasons; refers to the
- practice of placing two terminals side by side and having an
- operator read from one and type into the other.
-
- tense: adj. Of programs, very clever and efficient. A tense piece
- of code often got that way because it was highly {bum}med, but
- sometimes it was just based on a great idea. A comment in a clever
- routine by Mike Kazar, once a grad-student hacker at CMU: "This
- routine is so tense it will bring tears to your eyes." A tense
- programmer is one who produces tense code.
-
- tenured graduate student: n. One who has been in graduate school
- for 10 years (the usual maximum is 5 or 6): a `ten-yeared'
- student (get it?). Actually, this term may be used of any grad
- student beginning in his seventh year. Students don't really get
- tenure, of course, the way professors do, but a tenth-year graduate
- student has probably been around the university longer than any
- untenured professor.
-
- tera-: /te'r*/ [SI] pref. See {{quantifiers}}.
-
- teraflop club: /te'r*-flop kluhb/ [FLOP = Floating Point
- Operation] n. A mythical association of people who consume outrageous
- amounts of computer time in order to produce a few simple pictures
- of glass balls with intricate ray-tracing techniques. Caltech
- professor James Kajiya is said to have been the founder.
-
- terminak: /ter'mi-nak`/ [Caltech, ca. 1979] n. Any malfunctioning
- computer terminal. A common failure mode of Lear-Siegler ADM 3a
- terminals caused the `L' key to produce the `K' code instead;
- complaints about this tended to look like "Terminak #3 has a bad
- keyboard. Pkease fix." See {sun-stools}, {Telerat},
- {HP-SUX}.
-
- terminal brain death: n. The extreme form of {terminal illness}
- (sense 1). What someone who has obviously been hacking
- continuously for far too long is said to be suffering from.
-
- terminal illness: n. 1. Syn. {raster burn}. 2. The `burn-in'
- condition your CRT tends to get if you don't have a screen saver.
-
- terminal junkie: [UK] n. A {wannabee} or early
- {larval stage} hacker who spends most of his or her time wandering
- the directory tree and writing {noddy} programs just to get
- a fix of computer time. Variants include `terminal
- jockey', `console junkie', and {console jockey}. The term
- `console jockey' seems to imply more expertise than the other
- three (possibly because of the exalted status of the {{console}}
- relative to an ordinary terminal). See also {twink},
- {read-only user}.
-
- terpri: /ter'pree/ [from LISP 1.5 (and later, MacLISP)] vi. To
- output a {newline}. Now rare as jargon, though still used as
- techspeak in Common LISP. It is a contraction of `TERminate PRInt
- line', named for the fact that, on early OSes, no characters would be
- printed until a complete line was formed, so this operation
- terminated the line and emitted the output.
-
- test: n. 1. Real users bashing on a prototype long enough to get
- thoroughly acquainted with it, with careful monitoring and followup
- of the results. 2. Some bored random user trying a couple of the
- simpler features with a developer looking over his or her shoulder,
- ready to pounce on mistakes. Judging by the quality of most
- software, the second definition is far more prevalent. See also
- {demo}.
-
- TeX: /tekh/ n. An extremely powerful {macro}-based
- text formatter written by Donald E. Knuth, very popular in the
- computer-science community (it is good enough to have displaced
- UNIX `troff(1)', the other favored formatter, even at many
- UNIX installations). TeX fans insist on the correct (guttural)
- pronunciation, and the correct spelling (all caps, squished
- together, with the E depressed below the baseline; the
- mixed-case `TeX' is considered an acceptable kluge on ASCII-only
- devices). Fans like to proliferate names from the word `TeX'
- --- such as TeXnician (TeX user), TeXhacker (TeX
- programmer), TeXmaster (competent TeX programmer), TeXhax,
- and TeXnique.
-
- Knuth began TeX because he had become annoyed at the declining
- quality of the typesetting in volumes I--III of his monumental
- `Art of Computer Programming' (see {bible}). In a
- manifestation of the typical hackish urge to solve the problem at
- hand once and for all, he began to design his own typesetting
- language. He thought he would finish it on his sabbatical in 1978;
- he was wrong by only about 8 years. The language was finally
- frozen around 1985, but volume IV of `The Art of Computer
- Programming' has yet to appear as of mid-1991. The impact and
- influence of TeX's design has been such that nobody minds this
- very much. Many grand hackish projects have started as a bit of
- tool-building on the way to something else; Knuth's diversion was
- simply on a grander scale than most.
-
- text: n. 1. [techspeak] Executable code, esp. a `pure code'
- portion shared between multiple instances of a program running in a
- multitasking OS (compare {English}). 2. Textual material in the
- mainstream sense; data in ordinary {{ASCII}} or {{EBCDIC}}
- representation (see {flat-ASCII}). "Those are text files;
- you can review them using the editor." These two contradictory
- senses confuse hackers, too.
-
- thanks in advance: [USENET] Conventional net.politeness ending a
- posted request for information or assistance. Sometimes written
- `advTHANKSance' or `aTdHvAaNnKcSe' or abbreviated `TIA'. See
- {net.-}, {netiquette}.
-
- the X that can be Y is not the true X: Yet another instance of
- hackerdom's peculiar attraction to mystical references --- a common
- humorous way of making exclusive statements about a class of
- things. The template is from the `Tao te Ching': "The
- Tao which can be spoken of is not the true Tao." The implication
- is often that the X is a mystery accessible only to the
- enlightened. See the {trampoline} entry for an example, and
- compare {has the X nature}.
-
- theology: n. 1. Ironically or humorously used to refer to
- {religious issues}. 2. Technical fine points of an abstruse
- nature, esp. those where the resolution is of theoretical
- interest but is relatively {marginal} with respect to actual use of
- a design or system. Used esp. around software issues with a
- heavy AI or language-design component, such as the smart-data vs.
- smart-programs dispute in AI.
-
- theory: n. The consensus, idea, plan, story, or set of rules that
- is currently being used to inform a behavior. This is a
- generalization and abuse of the technical meaning. "What's the
- theory on fixing this TECO loss?" "What's the theory on dinner
- tonight?" ("Chinatown, I guess.") "What's the current theory
- on letting lusers on during the day?" "The theory behind this
- change is to fix the following well-known screw...."
-
- thinko: /thing'koh/ [by analogy with `typo'] n. A momentary,
- correctable glitch in mental processing, especially one involving
- recall of information learned by rote; a bubble in the stream of
- consciousness. Syn. {braino}. Compare {mouso}.
-
- This time, for sure!: excl. Ritual affirmation frequently uttered
- during protracted debugging sessions involving numerous small
- obstacles (e.g., attempts to bring up a UUCP connection). For the
- proper effect, this must be uttered in a fruity imitation of
- Bullwinkle J. Moose. Also heard: "Hey, Rocky! Watch me pull a
- rabbit out of my hat!" The {canonical} response is, of course,
- "But that trick *never* works!" See {{Humor, Hacker}}.
-
- thrash: vi. To move wildly or violently, without accomplishing
- anything useful. Paging or swapping systems that are overloaded
- waste most of their time moving data into and out of core (rather
- than performing useful computation) and are therefore said to
- thrash. Someone who keeps changing his mind (esp. about what to
- work on next) is said to be thrashing. A person frantically trying
- to execute too many tasks at once (and not spending enough time on
- any single task) may also be described as thrashing. Compare
- {multitask}.
-
- thread: n. [USENET, GEnie, CompuServe] Common abbreviation of
- `topic thread', a more or less continuous chain of postings on a
- single topic.
-
- three-finger salute: n. Syn. {Vulcan nerve pinch}.
-
- thud: n. 1. Yet another meta-syntactic variable (see {foo}).
- It is reported that at CMU from the mid-1970s the canonical series of
- these was `foo', `bar', `thud', `blat'. 2. Rare term
- for the hash character, `#' (ASCII 0100011). See {ASCII} for
- other synonyms.
-
- thunk: /thuhnk/ n. 1. "A piece of coding which provides an
- address", according to P. Z. Ingerman, who invented thunks
- in 1961 as a way of binding actual parameters to their formal
- definitions in Algol-60 procedure calls. If a procedure is called
- with an expression in the place of a formal parameter, the compiler
- generates a {thunk} to compute the expression and leave the
- address of the result in some standard location. 2. Later
- generalized into: an expression, frozen together with its
- environment, for later evaluation if and when needed (similar to
- what in techspeak is called a `closure'). The process of
- unfreezing these thunks is called `forcing'. 3. A
- {stubroutine}, in an overlay programming environment, that loads
- and jumps to the correct overlay. Compare {trampoline}.
- 4. People and activities scheduled in a thunklike manner. "It
- occurred to me the other day that I am rather accurately modeled by
- a thunk --- I frequently need to be forced to completion." ---
- paraphrased from a {plan file}.
-
- Historical note: There are a couple of onomatopoeic myths
- circulating about the origin of this term. The most common is that
- it is the sound made by data hitting the stack; another holds that
- the sound is that of the data hitting an accumulator. Yet another
- holds that it is the sound of the expression being unfrozen at
- argument-evaluation time. In fact, according to the inventors, it
- was coined after they realized (in the wee hours after hours of
- discussion) that the type of an argument in Algol-60 could be
- figured out in advance with a little compile-time thought,
- simplifying the evaluation machinery. In other words, it had
- `already been thought of'; thus it was christened a `thunk',
- which is "the past tense of `think' at two in the morning".
-
- tick: n. 1. A {jiffy} (sense 1). 2. In simulations, the
- discrete unit of time that passes between iterations of the
- simulation mechanism. In AI applications, this amount of time is
- often left unspecified, since the only constraint of interest is
- the ordering of events. This sort of AI simulation is often
- pejoratively referred to as `tick-tick-tick' simulation,
- especially when the issue of simultaneity of events with long,
- independent chains of causes is {handwave}d. 3. In the FORTH
- language, a single quote character.
-
- tick-list features: [Acorn Computers] n. Features in software or
- hardware that customers insist on but never use (calculators in
- desktop TSRs and that sort of thing). The American equivalent
- would be `checklist features', but this jargon sense of the
- phrase has not been reported.
-
- tickle a bug: vt. To cause a normally hidden bug to manifest
- through some known series of inputs or operations. "You can
- tickle the bug in the Paradise VGA card's highlight handling by
- trying to set bright yellow reverse video."
-
- tiger team: [U.S. military jargon] n. A team whose purpose is to
- penetrate security, and thus test security measures. These people
- are paid professionals who do hacker-type tricks, e.g., leave
- cardboard signs saying "bomb" in critical defense installations,
- hand-lettered notes saying "Your codebooks have been stolen"
- (they usually haven't been) inside safes, etc. After a successful
- penetration, some high-ranking security type shows up the next
- morning for a `security review' and finds the sign, note, etc.,
- and all hell breaks loose. Serious successes of tiger teams
- sometimes lead to early retirement for base commanders and security
- officers (see the {patch} entry for an example).
-
- A subset of tiger teams are professional {cracker}s, testing the
- security of military computer installations by attempting remote
- attacks via networks or supposedly `secure' comm channels. Some of
- their escapades, if declassified, would probably rank among the
- greatest hacks of all times. The term has been adopted in
- commercial computer-security circles in this more specific sense.
-
- time sink: [poss. by analogy with `heat sink' or `current sink'] n.
- A project that consumes unbounded amounts of time.
-
- time T: /ti:m T/ n. 1. An unspecified but usually well-understood
- time, often used in conjunction with a later time T+1.
- "We'll meet on campus at time T or at Louie's at
- time T+1" means, in the context of going out for dinner:
- "We can meet on campus and go to Louie's, or we can meet at Louie's
- itself a bit later." (Louie's is a Chinese restaurant in Palo Alto
- that is a favorite with hackers.) Had the number 30 been used instead
- of the number 1, it would have implied that the travel time from
- campus to Louie's is 30 minutes; whatever time T is (and
- that hasn't been decided on yet), you can meet half an hour later at
- Louie's than you could on campus and end up eating at the same time.
- See also {since time T equals minus infinity}.
-
- times-or-divided-by: [by analogy with `plus-or-minus'] quant. Term
- occasionally used when describing the uncertainty associated with a
- scheduling estimate, for either humorous or brutally honest effect.
- For a software project, the factor is usually at least 2.
-
- tinycrud: /ti:'nee-kruhd/ n. A pejorative used by habitues of older
- game-oriented {MUD} versions for TinyMUDs and other
- user-extensible {MUD} variants; esp. common among users of the
- rather violent and competitive AberMUD and MIST systems. These
- people justify the slur on the basis of how (allegedly)
- inconsistent and lacking in genuine atmosphere the scenarios
- generated in user extensible MUDs can be. Other common knocks on
- them are that they feature little overall plot, bad game topology,
- little competitive interaction, etc. --- not to mention the alleged
- horrors of the TinyMUD code itself. This dispute is one of the MUD
- world's hardiest perennial {holy wars}.
-
- tip of the ice-cube: [IBM] n. The visible part of something small and
- insignificant. Used as an ironic comment in situations where `tip
- of the iceberg' might be appropriate if the subject were actually
- nontrivial.
-
- tired iron: [IBM] n. Hardware that is perfectly functional but
- far enough behind the state of the art to have been superseded by new
- products, presumably with sufficient improvement in bang-per-buck that
- the old stuff is starting to look a bit like a {dinosaur}.
-
- tits on a keyboard: n. Small bumps on certain keycaps to keep
- touch-typists registered (usually on the `5' of a numeric keypad,
- and on the `F' and `J' of a QWERTY keyboard).
-
- TLA: /T-L-A/ [Three-Letter Acronym] n. 1. Self-describing
- acronym for a species with which computing terminology is infested.
- 2. Any confusing acronym. Examples include MCA, FTP, SNA, CPU,
- MMU, SCCS, DMU, FPU, NNTP, TLA. People who like this looser usage
- argue that not all TLAs have three letters, just as not all four-letter
- words have four letters. One also hears of `ETLA' (Extended
- Three-Letter Acronym, pronounced /ee tee el ay/) being used to
- describe four-letter acronyms. The term `SFLA' (Stupid Four-Letter
- Acronym) has also been reported. See also {YABA}.
-
- The self-effacing phrase "TDM TLA" (Too Damn Many...) is
- often used to bemoan the plethora of TLAs in use. In 1989, a
- random of the journalistic persuasion asked hacker Paul Boutin
- "What do you think will be the biggest problem in computing in
- the 90s?" Paul's straight-faced response: "There are only
- 17,000 three-letter acronyms." (To be exact, there are 26^3
- = 17,576.)
-
- TMRC: /tmerk'/ n. The Tech Model Railroad Club at MIT, one of
- the wellsprings of hacker culture. The 1959 `Dictionary of
- the TMRC Language' compiled by Peter Samson included several terms
- which became basics of the hackish vocabulary (see esp. {foo}
- and {frob}).
-
- By 1962, TMRC's legendary layout was already a marvel of
- complexity. The control system alone featured about 1200 relays.
- There were {scram switch}es located at numerous places around
- the room that could be pressed if something undesirable was about
- to occur, such as a train going full-bore at an obstruction.
- Another feature of the system was a digital clock on the dispatch
- board. Normally it ran at some multiple of real time, but if
- someone hit a scram switch the clock stopped and the display was
- replaced with the word `FOO'.
-
- Steven Levy, in his book `Hackers' (see the Bibliography), gives a
- stimulating account of those early years. TMRC's Power and Signals
- group included most of the early PDP-1 hackers and the people who
- later bacame the core of the MIT AI Lab staff. Thirty years later
- that connection is still very much alive, and this lexicon
- accordingly includes a number of entries from a recent revision of
- the TMRC Dictionary.
-
- to a first approximation: 1. [techspeak] When one is doing certain
- numerical computations, an approximate solution may be computed by
- any of several heuristic methods, then refined to a final value.
- By using the starting point of a first approximation of the answer,
- one can write an algorithm that converges more quickly to the
- correct result. 2. In jargon, a preface to any comment that
- indicates that the comment is only approximately true. The remark
- "To a first approximation, I feel good" might indicate that
- deeper questioning would reveal that not all is perfect (e.g., a
- nagging cough still remains after an illness).
-
- to a zeroth approximation: [from `to a first approximation'] A
- *really* sloppy approximation; a wild guess. Compare
- {social science number}.
-
- toast: 1. n. Any completely inoperable system or component, esp.
- one that has just crashed and burned: "Uh, oh ... I think the
- serial board is toast." 2. vt. To cause a system to crash
- accidentally, especially in a manner that requires manual
- rebooting. "Rick just toasted the {firewall machine} again."
-
- toaster: n. 1. The archetypal really stupid application for an
- embedded microprocessor controller; often used in comments that
- imply that a scheme is inappropriate technology (but see
- {elevator controller}). "{DWIM} for an assembler? That'd be
- as silly as running UNIX on your toaster!" 2. A very, very dumb
- computer. "You could run this program on any dumb toaster." See
- {bitty box}, {Get a real computer!}, {toy}, {beige toaster}.
- 3. A Macintosh, esp. the Classic Mac. Some hold that this is
- implied by sense 2. 4. A peripheral device. "I bought my box
- without toasters, but since then I've added two boards and a second
- disk drive."
-
- toeprint: n. A {footprint} of especially small size.
-
- toggle: vt. To change a {bit} from whatever state it is in to the
- other state; to change from 1 to 0 or from 0 to 1. This comes from
- `toggle switches', such as standard light switches, though the
- word `toggle' actually refers to the mechanism that keeps the
- switch in the position to which it is flipped rather than to the
- fact that the switch has two positions. There are four things you
- can do to a bit: set it (force it to be 1), clear (or zero) it,
- leave it alone, or toggle it. (Mathematically, one would say that
- there are four distinct boolean-valued functions of one boolean
- argument, but saying that is much less fun than talking about
- toggling bits.)
-
- tool: 1. n. A program used primarily to create, manipulate, modify,
- or analyze other programs, such as a compiler or an editor or a
- cross-referencing program. Oppose {app}, {operating system}.
- 2. [UNIX] An application program with a simple, `transparent'
- (typically text-stream) interface designed specifically to be used
- in programmed combination with other tools (see {filter}).
- 3. [MIT: general to students there] vi. To work; to study (connotes
- tedium). The TMRC Dictionary defined this as "to set one's brain
- to the grindstone". See {hack}. 4. [MIT] n. A student who
- studies too much and hacks too little. (MIT's student humor
- magazine rejoices in the name `Tool and Die'.)
-
- toolsmith: n. The software equivalent of a tool-and-die specialist;
- one who specializes in making the {tool}s with which other
- programmers create applications. See also {uninteresting}.
-
- topic drift: n. Term used on GEnie, USENET and other electronic
- fora to describe the tendency of a {thread} to drift away from
- the original subject of discussion (and thus, from the Subject
- header of the originating message), or the results of that
- tendency. Often used in gentle reminders that the discussion has
- strayed off any useful track. "I think we started with a question
- about Niven's last book, but we've ended up discussing the sexual
- habits of the common marmoset. Now *that's* topic drift!"
-
- topic group: n. Syn. {forum}.
-
- TOPS-10:: /tops-ten/ n. DEC's proprietary OS for the fabled {PDP-10}
- machines, long a favorite of hackers but now effectively extinct.
- A fountain of hacker folklore; see appendix A. See also {{ITS}},
- {{TOPS-20}}, {{TWENEX}}, {VMS}, {operating system}. TOPS-10 was
- sometimes called BOTS-10 (from `bottoms-ten') as a comment on the
- inappropriateness of describing it as the top of anything.
-
- TOPS-20:: /tops-twen'tee/ n. See {{TWENEX}}.
-
- toto: /toh'toh/ n. This is reported to be the default scratch
- file name among French-speaking programmers --- in other words, a
- francophone {foo}.
-
- tourist: [ITS] n. A guest on the system, especially one who
- generally logs in over a network from a remote location for {comm
- mode}, email, games, and other trivial purposes. One step below
- {luser}. Hackers often spell this {turist}, perhaps by
- some sort of tenuous analogy with {luser} (this also expresses the
- ITS culture's penchant for six-letterisms). Compare {twink},
- {read-only user}.
-
- tourist information: n. Information in an on-line display that is
- not immediately useful, but contributes to a viewer's gestalt of
- what's going on with the software or hardware behind it. Whether a
- given piece of info falls in this category depends partly on what
- the user is looking for at any given time. The `bytes free'
- information at the bottom of an MS-DOS `dir' display is
- tourist information; so (most of the time) is the TIME information
- in a UNIX `ps(1)' display.
-
- touristic: adj. Having the quality of a {tourist}. Often used
- as a pejorative, as in `losing touristic scum'. Often spelled
- `turistic' or `turistik', so that phrase might be more properly
- rendered `lusing turistic scum'.
-
- toy: n. A computer system; always used with qualifiers.
- 1. `nice toy': One that supports the speaker's hacking style
- adequately. 2. `just a toy': A machine that yields
- insufficient {computron}s for the speaker's preferred uses. This
- is not condemnatory, as is {bitty box}; toys can at least be fun.
- It is also strongly conditioned by one's expectations; Cray XMP
- users sometimes consider the Cray-1 a `toy', and certainly all RISC
- boxes and mainframes are toys by their standards. See also {Get
- a real computer!}.
-
- toy language: n. A language useful for instructional purposes or
- as a proof-of-concept for some aspect of computer-science theory,
- but inadequate for general-purpose programming. {Bad Thing}s
- can result when a toy language is promoted as a general purpose
- solution for programming (see {bondage-and-discipline
- language}); the classic example is {{Pascal}}. Several moderately
- well-known formalisms for conceptual tasks such as programming Turing
- machines also qualify as toy languages in a less negative sense.
- See also {MFTL}.
-
- toy problem: [AI] n. A deliberately oversimplified case of a
- challenging problem used to investigate, prototype, or test
- algorithms for a real problem. Sometimes used pejoratively. See
- also {gedanken}, {toy program}.
-
- toy program: n. 1. One that can be readily comprehended; hence, a
- trivial program (compare {noddy}). 2. One for which the effort
- of initial coding dominates the costs through its life cycle.
- See also {noddy}.
-
- trampoline: n. An incredibly {hairy} technique, found in some
- {HLL} and program-overlay implementations (e.g., on the
- Macintosh), that involves on-the-fly generation of small executable
- (and, likely as not, self-modifying) code objects to do indirection
- between code sections. These pieces of {live data} are called
- `trampolines'. Trampolines are notoriously difficult to understand
- in action; in fact, it is said by those who use this term that the
- trampoline that doesn't bend your brain is not the true
- trampoline. See also {snap}.
-
- trap: 1. n. A program interrupt, usually an interrupt caused by
- some exceptional situation in the user program. In most cases, the
- OS performs some action, then returns control to the program.
- 2. vi. To cause a trap. "These instructions trap to the
- monitor." Also used transitively to indicate the cause of the
- trap. "The monitor traps all input/output instructions."
-
- This term is associated with assembler programming (`interrupt'
- or `exception' is more common among {HLL} programmers) and
- appears to be fading into history among programmers as the role of
- assembler continues to shrink. However, it is still important to
- computer architects and systems hackers (see {system},
- sense 1), who use it to distinguish deterministically repeatable
- exceptions from timing-dependent ones (such as I/O interrupts).
-
- trap door: alt. `trapdoor' n. 1. Syn. {back door}.
- 2. [techspeak] A `trap-door function' is one which is easy to
- compute but very difficult to compute the inverse of. Such
- functions have important applications in cryptography, specifically
- in the construction of public-key cryptosystems.
-
- trash: vt. To destroy the contents of (said of a data structure).
- The most common of the family of near-synonyms including {mung},
- {mangle}, and {scribble}.
-
- tree-killer: [Sun] n. 1. A printer. 2. A person who wastes paper.
- This should be interpreted in a broad sense; `wasting paper'
- includes the production of {spiffy} but {content-free} documents.
- Thus, most {suit}s are tree-killers.
-
- trit: /trit/ [by analogy with `bit'] n. One base-3 digit; the
- amount of information conveyed by a selection among one of three
- equally likely outcomes (see also {bit}). These arise, for
- example, in the context of a {flag} that should actually be able
- to assume *three* values --- such as yes, no, or unknown. Trits are
- sometimes jokingly called `3-state bits'. A trit may be
- semi-seriously referred to as `a bit and a half', although it is
- linearly equivalent to 1.5849625 bits (that is,
- log2(3)
- bits).
-
- trivial: adj. 1. Too simple to bother detailing. 2. Not worth the
- speaker's time. 3. Complex, but solvable by methods so well known
- that anyone not utterly {cretinous} would have thought of them
- already. 4. Any problem one has already solved (some claim that
- hackish `trivial' usually evaluates to `I've seen it before').
- Hackers' notions of triviality may be quite at variance with those
- of non-hackers. See {nontrivial}, {uninteresting}.
-
- troglodyte: [Commodore] n. 1. A hacker who never leaves his
- cubicle. The term `Gnoll' (from Dungeons & Dragons) is also
- reported. 2. A curmudgeon attached to an obsolescent computing
- environment. The combination `ITS troglodyte' was flung around
- some during the USENET and email wringle-wrangle attending the
- 2.x.x revision of the Jargon File; at least one of the people it
- was intended to describe adopted it with pride.
-
- troglodyte mode: [Rice University] n. Programming with the lights
- turned off, sunglasses on, and the terminal inverted (black on
- white) because you've been up for so many days straight that your
- eyes hurt (see {raster burn}). Loud music blaring from a stereo
- stacked in the corner is optional but recommended. See {larval
- stage}, {hack mode}.
-
- Trojan horse: [coined by MIT-hacker-turned-NSA-spook Dan Edwards]
- n. A program designed to break security or damage a system that is
- disguised as something else benign, such as a directory lister,
- archiver, a game, or (in one notorious 1990 case on the Mac) a
- program to find and destroy viruses! See {back door}, {virus},
- {worm}.
-
- true-hacker: [analogy with `trufan' from SF fandom] n. One who
- exemplifies the primary values of hacker culture, esp. competence
- and helpfulness to other hackers. A high compliment. "He spent
- 6 hours helping me bring up UUCP and netnews on my FOOBAR 4000
- last week --- manifestly the act of a true-hacker." Compare
- {demigod}, oppose {munchkin}.
-
- tty: /T-T-Y/ [UNIX], /tit'ee/ [ITS, but some UNIX people say it
- this way as well; this pronunciation is not considered to have
- sexual undertones] n. 1. A terminal of the teletype variety,
- characterized by a noisy mechanical printer, a very limited
- character set, and poor print quality. Usage: antiquated (like the
- TTYs themselves). See also {bit-paired keyboard}.
- 2. [especially UNIX] Any terminal at all; sometimes used to refer
- to the particular terminal controlling a given job.
-
- tube: 1. n. A CRT terminal. Never used in the mainstream sense of
- TV; real hackers don't watch TV, except for Loony Toons, Rocky &
- Bullwinkle, Trek Classic, the Simpsons, and the occasional cheesy
- old swashbuckler movie (see appendix B). 2. [IBM] To send a copy
- of something to someone else's terminal. "Tube me that
- note?"
-
- tube time: n. Time spent at a terminal or console. More inclusive
- than hacking time; commonly used in discussions of what parts of
- one's environment one uses most heavily. "I find I'm spending too
- much of my tube time reading mail since I started this revision."
-
- tunafish: n. In hackish lore, refers to the mutated punchline of
- an age-old joke to be found at the bottom of the manual pages of
- `tunefs(8)' in the original {BSD} 4.2 distribution. The
- joke was removed in later releases once commercial sites started
- developing in 4.2. Tunefs relates to the `tuning' of
- file-system parameters for optimum performance, and at the bottom
- of a few pages of wizardly inscriptions was a `BUGS' section
- consisting of the line "You can tune a file system, but you can't
- tunafish". Variants of this can be seen in other BSD versions,
- though it has been excised from some versions by humorless
- management {droid}s. The [nt]roff source for SunOS 4.1.1
- contains a comment apparently designed to prevent this: "Take this
- out and a Unix Demon will dog your steps from now until the
- `time_t''s wrap around."
-
- tune: [from automotive or musical usage] vt. To optimize a program
- or system for a particular environment, esp. by adjusting numerical
- parameters designed as {hook}s for tuning, e.g., by changing
- `#define' lines in C. One may `tune for time' (fastest
- execution), `tune for space' (least memory use), or
- `tune for configuration' (most efficient use of hardware). See
- {bum}, {hot spot}, {hand-hacking}.
-
- turbo nerd: n. See {computer geek}.
-
- turist: /too'rist/ n. Var. sp. of {tourist}, q.v. Also in
- adjectival form, `turistic'. Poss. influenced by {luser} and
- `Turing'.
-
- tweak: vt. 1. To change slightly, usually in reference to a value.
- Also used synonymously with {twiddle}. If a program is almost
- correct, rather than figure out the precise problem you might
- just keep tweaking it until it works. See {frobnicate} and
- {fudge factor}; also see {shotgun debugging}. 2. To {tune}
- or {bum} a program; preferred usage in the U.K.
-
- TWENEX:: /twe'neks/ n. The TOPS-20 operating system by DEC ---
- the second proprietary OS for the PDP-10 --- preferred by most
- PDP-10 hackers over TOPS-10 (that is, by those who were not
- {{ITS}} or {{WAITS}} partisans). TOPS-20 began in 1969 as Bolt,
- Beranek & Newman's TENEX operating system using special paging
- hardware. By the early 1970s, almost all of the systems on the
- ARPANET ran TENEX. DEC purchased the rights to TENEX from BBN and
- began work to make it their own. The first in-house code name for
- the operating system was VIROS (VIRtual memory Operating System);
- when customers started asking questions, the name was changed to
- SNARK so DEC could truthfully deny that there was any project
- called VIROS. When the name SNARK became known, the name was
- briefly reversed to become KRANS; this was quickly abandoned when
- it was discovered that `krans' meant `funeral shroud' in
- Swedish. Ultimately DEC picked TOPS-20 as the name of the
- operating system, and it was as TOPS-20 that it was marketed. The
- hacker community, mindful of its origins, quickly dubbed it
- {{TWENEX}} (a contraction of `twenty TENEX'), even though by this
- point very little of the original TENEX code remained (analogously
- to the differences between AT&T V6 UNIX and BSD). DEC people
- cringed when they heard "TWENEX", but the term caught on
- nevertheless (the written abbreviation `20x' was also used).
- TWENEX was successful and very popular; in fact, there was a period
- in the early 1980s when it commanded as fervent a culture of
- partisans as UNIX or ITS --- but DEC's decision to scrap all the
- internal rivals to the VAX architecture and its relatively stodgy
- VMS OS killed the DEC-20 and put a sad end to TWENEX's brief day in
- the sun. DEC attempted to convince TOPS-20 hackers to convert to
- {VMS}, but instead, by the late 1980s, most of the TOPS-20
- hackers had migrated to UNIX.
-
- twiddle: n. 1. Tilde (ASCII 1111110, `~'). Also
- called `squiggle', `sqiggle' (sic --- pronounced /skig'l/),
- and `twaddle', but twiddle is the most common term. 2. A small
- and insignificant change to a program. Usually fixes one bug and
- generates several new ones. 3. vt. To change something in a small
- way. Bits, for example, are often twiddled. Twiddling a switch or
- knob implies much less sense of purpose than toggling or tweaking
- it; see {frobnicate}. To speak of twiddling a bit connotes
- aimlessness, and at best doesn't specify what you're doing to the
- bit; `toggling a bit' has a more specific meaning (see {bit
- twiddling}, {toggle}).
-
- twink: /twink/ [UCSC] n. Equivalent to {read-only user}. Also
- reported on the USENET group soc.motss; may derive from gay
- slang for a cute young thing with nothing upstairs.
-
- two pi: quant. The number of years it takes to finish one's
- thesis. Occurs in stories in the following form: "He started on
- his thesis; 2 pi years later..."
-
- two-to-the-N: quant. An amount much larger than {N} but smaller
- than {infinity}. "I have 2-to-the-N things to do before I can
- go out for lunch" means you probably won't show up.
-
- twonkie: /twon'kee/ n. The software equivalent of a Twinkie (a
- variety of sugar-loaded junk food, or (in gay slang) the male
- equivalent of `chick'); a useless `feature' added to look sexy
- and placate a {marketroid} (compare {Saturday-night
- special}). This may also be related to "The Twonky", title menace
- of a classic SF short story by Lewis Padgett (Henry Kuttner and
- C. L. Moore), first published in the September 1942
- `Astounding Science Fiction' and subsequently much
- anthologized.
-
- = U =
-
- UBD: /U-B-D/ [abbreviation for `User Brain Damage'] An
- abbreviation used to close out trouble reports obviously due to
- utter cluelessness on the user's part. Compare {pilot error};
- oppose {PBD}; see also {brain-damaged}.
-
- UN*X: n. Used to refer to the UNIX operating system (a trademark of
- AT&T) in writing, but avoiding the need for the ugly
- {(TM)} typography.
- Also used to refer to any or all varieties of Unixoid operating
- systems. Ironically, lawyers now say (1990) that the requirement
- for the TM-postfix has no legal force, but the asterisk usage
- is entrenched anyhow. It has been suggested that there may be a
- psychological connection to practice in certain religions
- (especially Judaism) in which the name of the deity is never
- written out in full, e.g., `YHWH' or `G--d' is used. See also
- {glob}.
-
- undefined external reference: excl. [UNIX] A message from UNIX's
- linker. Used in speech to flag loose ends or dangling references
- in an argument or discussion.
-
- under the hood: prep. [hot-rodder talk] 1. Used to introduce the
- underlying implementation of a product (hardware, software, or
- idea). Implies that the implementation is not intuitively obvious
- from the appearance, but the speaker is about to enable the
- listener to {grok} it. "Let's now look under the hood to see
- how ...." 2. Can also imply that the implementation is much
- simpler than the appearance would indicate: "Under the hood, we
- are just fork/execing the shell." 3. Inside a chassis, as in
- "Under the hood, this baby has a 40MHz 68030!"
-
- undocumented feature: n. See {feature}.
-
- uninteresting: adj. 1. Said of a problem that, although
- {nontrivial}, can be solved simply by throwing sufficient
- resources at it. 2. Also said of problems for which a solution
- would neither advance the state of the art nor be fun to design and
- code.
-
- Hackers regard uninteresting problems as intolerable wastes of
- time, to be solved (if at all) by lesser mortals. *Real*
- hackers (see {toolsmith}) generalize uninteresting problems
- enough to make them interesting and solve them --- thus solving the
- original problem as a special case. See {WOMBAT}, {SMOP};
- compare {toy problem}, oppose {interesting}.
-
- UNIX:: /yoo'niks/ [In the authors' words, "A weak pun on
- Multics"] n. (also `Unix') An interactive time-sharing system
- originally invented in 1969 by Ken Thompson after Bell Labs left
- the Multics project, originally so he could play games on his
- scavenged PDP-7. Dennis Ritchie, the inventor of C, is considered
- a co-author of the system. The turning point in UNIX's history
- came when it was reimplemented almost entirely in C during
- 1972--1974, making it the first source-portable OS. UNIX
- subsequently underwent mutations and expansions at the hands of
- many different people, resulting in a uniquely flexible and
- developer-friendly environment. In 1991, UNIX is the most widely
- used multiuser general-purpose operating system in the world. Many
- people consider this the most important victory yet of hackerdom
- over industry opposition (but see {UNIX weenie} and {UNIX
- conspiracy} for an opposing point of view). See {Version 7},
- {BSD}, {USG UNIX}.
-
- UNIX brain damage: n. Something that has to be done to break a
- network program (typically a mailer) on a non-UNIX system so that
- it will interoperate with UNIX systems. The hack may qualify as
- `UNIX brain damage' if the program conforms to published standards
- and the UNIX program in question does not. UNIX brain damage
- happens because it is much easier for other (minority) systems to
- change their ways to match non-conforming behavior than it is to
- change all the hundreds of thousands of UNIX systems out there.
-
- An example of UNIX brain damage is a {kluge} in a mail server to
- recognize bare line feed (the UNIX newline) as an equivalent form
- to the Internet standard newline, which is a carriage return
- followed by a line feed. Such things can make even a hardened
- {jock} weep.
-
- UNIX conspiracy: [ITS] n. According to a conspiracy theory long
- popular among {{ITS}} and {{TOPS-20}} fans, UNIX's growth is the
- result of a plot, hatched during the 1970s at Bell Labs, whose
- intent was to hobble AT&T's competitors by making them dependent
- upon a system whose future evolution was to be under AT&T's
- control. This would be accomplished by disseminating an operating
- system that is apparently inexpensive and easily portable, but also
- relatively unreliable and insecure (so as to require continuing
- upgrades from AT&T). This theory was lent a substantial impetus
- in 1984 by the paper referenced in the {back door} entry.
-
- In this view, UNIX was designed to be one of the first computer
- viruses (see {virus}) --- but a virus spread to computers indirectly
- by people and market forces, rather than directly through disks and
- networks. Adherents of this `UNIX virus' theory like to cite the
- fact that the well-known quotation "UNIX is snake oil" was
- uttered by DEC president Kenneth Olsen shortly before DEC began
- actively promoting its own family of UNIX workstations. (Olsen now
- claims to have been misquoted.)
-
- UNIX weenie: [ITS] n. 1. A derogatory play on `UNIX wizard', common
- among hackers who use UNIX by necessity but would prefer
- alternatives. The implication is that although the person in question
- may consider mastery of UNIX arcana to be a wizardly skill, the
- only real skill involved is the ability to tolerate (and the bad
- taste to wallow in) the incoherence and needless complexity that is
- alleged to infest many UNIX programs. "This shell script tries to
- parse its arguments in 69 bletcherous ways. It must have been
- written by a real UNIX weenie." 2. A derogatory term for anyone
- who engages in uncritical praise of UNIX. Often appearing in the
- context "stupid UNIX weenie". See {Weenix}, {UNIX
- conspiracy}. See also {weenie}.
-
- unixism: n. A piece of code or a coding technique that depends on the
- protected multi-tasking environment with relatively low
- process-spawn overhead that exists on virtual-memory UNIX systems.
- Common {unixism}s include: gratuitous use of `fork(2)'; the
- assumption that certain undocumented but well-known features of
- UNIX libraries such as `stdio(3)' are supported elsewhere;
- reliance on {obscure} side-effects of system calls (use of
- `sleep(2)' with a 0 argument to clue the scheduler that
- you're willing to give up your time-slice, for example); the
- assumption that freshly allocated memory is zeroed; and the assumption
- that fragmentation problems won't arise from never `free()'ing
- memory. Compare {vaxocentrism}; see also {New Jersey}.
-
- unswizzle: v. See {swizzle}.
-
- unwind the stack: vi. 1. [techspeak] During the execution of a
- procedural language, one is said to `unwind the stack' from a
- called procedure up to a caller when one discards the stack frame
- and any number of frames above it, popping back up to the level of
- the given caller. In C this is done with
- `longjmp'/`setjmp', in LISP with `throw/catch'.
- See also {smash the stack}. 2. People can unwind the stack as
- well, by quickly dealing with a bunch of problems: "Oh heck, let's
- do lunch. Just a second while I unwind my stack."
-
- unwind-protect: [MIT: from the name of a LISP operator] n. A task you
- must remember to perform before you leave a place or finish a
- project. "I have an unwind-protect to call my advisor."
-
- up: adj. 1. Working, in order. "The down escalator is up."
- Oppose {down}. 2. `bring up': vt. To create a working
- version and start it. "They brought up a down system."
- 3. `come up' vi. To become ready for production use.
-
- upload: /uhp'lohd/ v. 1. [techspeak] To transfer programs or data
- over a digital communications link from a smaller or peripheral
- `client' system to a larger or central `host' one. A transfer in
- the other direction is, of course, called a {download} (but see
- the note about ground-to-space comm under that entry).
- 2. [speculatively] To move the essential patterns and algorithms
- that make up one's mind from one's brain into a computer. Only
- those who are convinced that such patterns and algorithms capture
- the complete essence of the self view this prospect with
- gusto.
-
- upthread: adv. Earlier in the discussion (see {thread}), i.e.,
- `above'. "As Joe pointed out upthread, ..." See also
- {followup}.
-
- urchin: n. See {munchkin}.
-
- USENET: /yoos'net/ or /yooz'net/ [from `Users' Network'] n.
- A distributed {bboard} (bulletin board) system supported mainly
- by UNIX machines. Originally implemented in 1979-1980 by Steve
- Bellovin, Jim Ellis, Tom Truscott, and Steve Daniel at Duke
- University, it has swiftly grown to become international in scope
- and is now probably the largest decentralized information utility
- in existence. As of early 1991, it hosts well over
- 700 {newsgroup}s and an average of 16 megabytes (the equivalent
- of several thousand paper pages) of new technical articles, news,
- discussion, chatter, and {flamage} every day.
-
- user: n. 1. Someone doing `real work' with the computer, using
- it as a means rather than an end. Someone who pays to use a
- computer. See {real user}. 2. A programmer who will believe
- anything you tell him. One who asks silly questions. [GLS
- observes: This is slightly unfair. It is true that users ask
- questions (of necessity). Sometimes they are thoughtful or deep.
- Very often they are annoying or downright stupid, apparently
- because the user failed to think for two seconds or look in the
- documentation before bothering the maintainer.] See {luser}.
- 3. Someone who uses a program from the outside, however skillfully,
- without getting into the internals of the program. One who reports
- bugs instead of just going ahead and fixing them.
-
- The general theory behind this term is that there are two classes
- of people who work with a program: there are implementors (hackers)
- and {luser}s. The users are looked down on by hackers to a mild
- degree because they don't understand the full ramifications of the
- system in all its glory. (The few users who do are known as
- `real winners'.) The term is a relative one: a skilled hacker
- may be a user with respect to some program he himself does not
- hack. A LISP hacker might be one who maintains LISP or one who
- uses LISP (but with the skill of a hacker). A LISP user is one who
- uses LISP, whether skillfully or not. Thus there is some overlap
- between the two terms; the subtle distinctions must be resolved by
- context.
-
- user-friendly: adj. Programmer-hostile. Generally used by hackers in
- a critical tone, to describe systems that hold the user's hand so
- obsessively that they make it painful for the more experienced and
- knowledgeable to get any work done. See {menuitis}, {drool-proof
- paper}, {Macintrash}, {user-obsequious}.
-
- user-obsequious: adj. Emphatic form of {user-friendly}. Connotes
- a system so verbose, inflexible, and determinedly simple-minded
- that it is nearly unusable. "Design a system any fool can use and
- only a fool will want to use it." See {WIMP environment},
- {Macintrash}.
-
- USG UNIX: /U-S-G yoo'niks/ n. Refers to AT&T UNIX
- commercial versions after {Version 7}, especially System III and
- System V releases 1, 2, and 3. So called because during most of
- the life-span of those versions AT&T's support crew was called the
- `UNIX Support Group'. See {BSD}, {{UNIX}}.
-
- UTSL: // [UNIX] n. On-line acronym for `Use the Source, Luke' (a
- pun on Obi-Wan Kenobi's "Use the Force, Luke!" in `Star
- Wars') --- analogous to {RTFM} but more polite. This is a
- common way of suggesting that someone would be best off reading the
- source code that supports whatever feature is causing confusion,
- rather than making yet another futile pass through the manuals or
- broadcasting questions that haven't attracted {wizard}s to
- answer them. In theory, this is appropriately directed only at
- associates of some outfit with a UNIX source license; in practice,
- bootlegs of UNIX source code (made precisely for reference
- purposes) are so ubiquitous that one may utter this at almost
- anyone on {the network} without concern. In the near future
- (this written in 1991) source licenses may become even less
- important; after the recent release of the Mach 3.0 microkernal,
- given the continuing efforts of the {GNU} project, and with the
- 4.4BSD release on the horizon, complete free source code for
- UNIX-clone toolsets and kernels should soon be widely available.
-
- UUCPNET: n. The store-and-forward network consisting of all the
- world's connected UNIX machines (and others running some clone of
- the UUCP (UNIX-to-UNIX CoPy) software). Any machine reachable only
- via a {bang path} is on UUCPNET. See {network address}.
-
- = V =
-
- vadding: /vad'ing/ [from VAD, a permutation of ADV (i.e.,
- {ADVENT}), used to avoid a particular {admin}'s continual
- search-and-destroy sweeps for the game] n. A leisure-time activity
- of certain hackers involving the covert exploration of the `secret'
- parts of large buildings --- basements, roofs, freight elevators,
- maintenance crawlways, steam tunnels, and the like. A few go so
- far as to learn locksmithing in order to synthesize vadding keys.
- The verb is `to vad' (compare {phreaking}).
-
- The most extreme and dangerous form of vadding is `elevator
- rodeo', a.k.a. `elevator surfing', a sport played by wrasslin'
- down a thousand-pound elevator car with a 3-foot piece of
- string, and then exploiting this mastery in various stimulating
- ways (such as elevator hopping, shaft exploration, rat-racing, and
- the ever-popular drop experiments). Kids, don't try this at home!
- See also {hobbit} (sense 2).
-
- vanilla: [from the default flavor of ice cream in the U.S.] adj.
- Ordinary {flavor}, standard. When used of food, very often does
- not mean that the food is flavored with vanilla extract! For
- example, `vanilla wonton soup' means ordinary wonton soup, as
- opposed to hot-and-sour wonton soup. Applied to hardware and
- software, as in "Vanilla Version 7 UNIX can't run on a
- vanilla 11/34." Also used to orthogonalize chip nomenclature; for
- instance, a 74V00 means what TI calls a 7400, as distinct from
- a 74LS00, etc. This word differs from {canonical} in that the
- latter means `default', whereas vanilla simply means `ordinary'.
- For example, when hackers go on a {great-wall}, hot-and-sour
- wonton soup is the {canonical} wonton soup to get (because that
- is what most of them usually order) even though it isn't the
- vanilla wonton soup.
-
- vannevar: /van'*-var/ n. A bogus technological prediction or
- a foredoomed engineering concept, esp. one that fails by
- implicitly assuming that technologies develop linearly,
- incrementally, and in isolation from one another when in fact the
- learning curve tends to be highly nonlinear, revolutions are
- common, and competition is the rule. The prototype was Vannevar
- Bush's prediction of `electronic brains' the size of the Empire
- State Building with a Niagara-Falls-equivalent cooling system for
- their tubes and relays, made at a time when the semiconductor effect had
- already been demonstrated. Other famous vannevars have included
- magnetic-bubble memory, LISP machines, {videotex}, and a paper from
- the late 1970s that computed a purported ultimate limit on areal
- density for ICs that was in fact less than the routine densities
- of 5 years later.
-
- vaporware: /vay'pr-weir/ n. Products announced far in advance of
- any release (which may or may not actually take place).
-
- var: /veir/ or /var/ n. Short for `variable'. Compare {arg},
- {param}.
-
- VAX: /vaks/ n. 1. [from Virtual Address eXtension] The most
- successful minicomputer design in industry history, possibly
- excepting its immediate ancestor, the PDP-11. Between its release
- in 1978 and its eclipse by {killer micro}s after about 1986, the VAX
- was probably the hacker's favorite machine of them all, esp.
- after the 1982 release of 4.2 BSD UNIX (see {BSD}). Esp.
- noted for its large, assembler-programmer-friendly instruction set
- --- an asset that became a liability after the RISC revolution.
- 2. A major brand of vacuum cleaner in Britain. Cited here because
- its alleged sales pitch, "Nothing sucks like a VAX!" became a
- sort of battle-cry of RISC partisans. Ironically, the slogan was
- *not* actually used by the Vax vacuum-cleaner people, but was
- actually that of a rival brand called Electrolux (as in "Nothing
- sucks like an..."). It is claimed, however, that DEC actually
- entered a cross-licensing deal with the vacuum-Vax people that
- allowed them to market VAX computers in the U.K. in return for not
- challenging the vacuum cleaner trademark in the U.S.
-
- VAXectomy: /vak-sek't*-mee/ [by analogy with `vasectomy'] n. A
- VAX removal. DEC's Microvaxen, especially, are much slower than
- newer RISC-based workstations such as the SPARC. Thus, if one knows
- one has a replacement coming, VAX removal can be cause for
- celebration.
-
- VAXen: /vak'sn/ [from `oxen', perhaps influenced by `vixen'] n.
- (alt. `vaxen') The plural canonically used among hackers for the
- DEC VAX computers. "Our installation has four PDP-10s and twenty
- vaxen." See {boxen}.
-
- vaxherd: n. /vaks'herd/ [from `oxherd'] A VAX operator.
-
- vaxism: /vak'sizm/ n. A piece of code that exhibits
- {vaxocentrism} in critical areas. Compare {PC-ism},
- {unixism}.
-
- vaxocentrism: /vak`soh-sen'trizm/ [analogy with
- `ethnocentrism'] n. A notional disease said to afflict
- C programmers who persist in coding according to certain assumptions that are
- valid (esp. under UNIX) on {VAXen} but false elsewhere. Among
- these are:
-
- 1. The assumption that dereferencing a null pointer is safe because it
- is all bits 0, and location 0 is readable and 0. Problem: this may
- instead cause an illegal-address trap on non-VAXen, and even on
- VAXen under OSes other than BSD UNIX. Usually this is an implicit
- assumption of sloppy code (forgetting to check the pointer before
- using it), rather than deliberate exploitation of a
- misfeature.)
-
- 2. The assumption that characters are signed.
-
- 3. The assumption that a pointer to any one type can freely be cast
- into a pointer to any other type. A stronger form of this is the
- assumption that all pointers are the same size and format, which
- means you don't have to worry about getting the types correct in
- calls. Problem: this fails on word-oriented machines or others with
- multiple pointer formats.
-
- 4. The assumption that the parameters of a routine are stored in
- memory, contiguously, and in strictly ascending or descending order.
- Problem: this fails on many RISC architectures.
-
- 5. The assumption that pointer and integer types are the same size,
- and that pointers can be stuffed into integer variables (and
- vice-versa) and drawn back out without being truncated or mangled.
- Problem: this fails on segmented architectures or word-oriented
- machines with funny pointer formats.
-
- 6. The assumption that a data type of any size may begin at any byte
- address in memory (for example, that you can freely construct and
- dereference a pointer to a word- or greater-sized object at an odd
- char address). Problem: this fails on many (esp. RISC)
- architectures better optimized for {HLL} execution speed, and
- can cause an illegal address fault or bus error.
-
- 7. The (related) assumption that there is no padding at the end of
- types and that in an array you can thus step right from the last
- byte of a previous component to the first byte of the next one.
- This is not only machine- but compiler-dependent.
-
- 8. The assumption that memory address space is globally flat and that
- the array reference `foo[-1]' is necessarily valid. Problem:
- this fails at 0, or other places on segment-addressed machines like
- Intel chips (yes, segmentation is universally considered a
- {brain-damaged} way to design machines (see {moby}), but that
- is a separate issue).
-
- 9. The assumption that objects can be arbitrarily large with no
- special considerations. Problem: this fails on segmented
- architectures and under non-virtual-addressing environments.
-
- 10. The assumption that the stack can be as large as memory. Problem:
- this fails on segmented architectures or almost anything else without
- virtual addressing and a paged stack.
-
- 11. The assumption that bits and addressable units within an object
- are ordered in the same way and that this order is a constant of
- nature. Problem: this fails on {big-endian} machines.
-
- 12. The assumption that it is meaningful to compare pointers to
- different objects not located within the same array, or to objects
- of different types. Problem: the former fails on segmented
- architectures, the latter on word-oriented machines or others with
- multiple pointer formats.
-
- 13. The assumption that an `int' is 32 bits, or (nearly
- equivalently) the assumption that `sizeof(int) ==
- sizeof(long)'. Problem: this fails on 286-based systems and even
- on 386 and 68000 systems under some compilers.
-
- 14. The assumption that `argv[]' is writable. Problem: this fails in
- some embedded-systems C environments.
-
- Note that a programmer can validly be accused of vaxocentrism
- even if he or she has never seen a VAX. Some of these assumptions
- (esp. 2--5) were valid on the PDP-11, the original C machine, and
- became endemic years before the VAX. The terms `vaxocentricity'
- and `all-the-world's-a-VAX syndrome' have been used synonymously.
-
- vdiff: /vee'dif/ v.,n. Visual diff. The operation of finding
- differences between two files by {eyeball search}. The term
- `optical diff' has also been reported. See {diff}.
-
- veeblefester: /vee'b*l-fes`tr/ [from the "Born Loser"
- comix via Commodore; prob. originally from `Mad' Magazine's
- `Veeblefeetzer' parodies ca. 1960] n. Any obnoxious person engaged
- in the (alleged) professions of marketing or management. Antonym of
- {hacker}. Compare {suit}, {marketroid}.
-
- Venus flytrap: [after the insect-eating plant] n. See {firewall
- machine}.
-
- verbage: /ver'b*j/ n. A deliberate misspelling and mispronunciation of
- {verbiage} that assimilates it to the word `garbage'. Compare
- {content-free}. More pejorative than `verbiage'.
-
- verbiage: n. When the context involves a software or hardware
- system, this refers to {{documentation}}. This term borrows the
- connotations of mainstream `verbiage' to suggest that the
- documentation is of marginal utility and that the motives behind
- its production have little to do with the ostensible subject.
-
- Version 7: alt. V7 /vee' se'vn/ n. The 1978 unsupported release of
- {{UNIX}} ancestral to all current commercial versions. Before
- the release of the POSIX/SVID standards, V7's features were often
- treated as a UNIX portability baseline. See {BSD}, {USG UNIX},
- {{UNIX}}. Some old-timers impatient with commercialization and
- kernel bloat still maintain that V7 was the Last True UNIX.
-
- vgrep: /vee'grep/ v.,n. Visual grep. The operation of finding
- patterns in a file optically rather than digitally. See {grep};
- compare {vdiff}.
-
- vi: /V-I/, *not* /vi:/ and *never* /siks/ [from
- `Visual Interface'] n. A screen editor crufted together by Bill Joy
- for an early {BSD} version. Became the de facto standard UNIX
- editor and a nearly undisputed hacker favorite until the rise of
- {EMACS} after about 1984. Tends to frustrate new users no end,
- as it will neither take commands while expecting input text nor
- vice versa, and the default setup provides no indication of which
- mode one is in (one correspondent accordingly reports that he has
- often heard the editor's name pronounced /vi:l/). Nevertheless it
- is still widely used (about half the respondents in a 1991 USENET
- poll preferred it), and even EMACS fans often resort to it as a
- mail editor and for small editing jobs (mainly because it starts up
- faster than bulky EMACS). See {holy wars}.
-
- videotex: n. obs. An electronic service offering people the
- privilege of paying to read the weather on their television screens
- instead of having somebody read it to them for free while they
- brush their teeth. The idea bombed everywhere it wasn't
- government-subsidized, because by the time videotex was practical
- the installed base of personal computers could hook up to
- timesharing services and do the things for which videotex might
- have been worthwhile better and cheaper. Videotex planners badly
- overestimated both the appeal of getting information from a
- computer and the cost of local intelligence at the user's end.
- Like the {gorilla arm} effect, this has been a cautionary tale
- to hackers ever since. See also {vannevar}.
-
- virgin: adj. Unused; pristine; in a known initial state. "Let's
- bring up a virgin system and see if it crashes again." (Esp.
- useful after contracting a {virus} through {SEX}.) Also, by
- extension, buffers and the like within a program that have not yet
- been used.
-
- virtual: [via the technical term `virtual memory', prob. from the
- term `virtual image' in optics] adj. 1. Common alternative to
- {logical}. 2. Simulated; performing the functions of something
- that isn't really there. An imaginative child's doll may be a
- virtual playmate.
-
- virtual Friday: n. The last day before an extended weekend, if
- that day is not a `real' Friday. For example, the U.S. holiday
- Thanksgiving is always on a Thursday. The next day is often also
- a holiday or taken as an extra day off, in which case Wednesday of
- that week is a virtual Friday (and Thursday is a virtual Saturday,
- as is Friday). There are also `virtual Mondays' that are
- actually Tuesdays, after the three-day weekends associated with many
- national holidays in the U.S.
-
- virtual reality: n. 1. Computer simulations that use 3-D graphics
- and devices such as the Dataglove to allow the user to interact
- with the simulation. See {cyberspace}. 2. A form of network
- interaction incorporating aspects of role-playing games,
- interactive theater, improvisational comedy, and `true confessions'
- magazines. In a virtual reality forum (such as USENET's
- alt.callahans newsgroup or the {MUD} experiments on Internet),
- interaction between the participants is written like a shared novel
- complete with scenery, `foreground characters' that may be
- personae utterly unlike the people who write them, and common
- `background characters' manipulable by all parties. The one
- iron law is that you may not write irreversible changes to a
- character without the consent of the person who `owns' it.
- Otherwise anything goes. See {bamf}, {cyberspace}.
-
- virus: [from the obvious analogy with biological viruses, via SF]
- n. A cracker program that searches out other programs and `infects'
- them by embedding a copy of itself in them, so that they become
- {Trojan Horse}s. When these programs are executed, the embedded
- virus is executed too, thus propagating the `infection'. This
- normally happens invisibly to the user. Unlike a {worm}, a
- virus cannot infect other computers without assistance. It is
- propagated by vectors such as humans trading programs with their
- friends (see {SEX}). The virus may do nothing but propagate
- itself and then allow the program to run normally. Usually,
- however, after propagating silently for a while, it starts doing
- things like writing cute messages on the terminal or playing
- strange tricks with your display (some viruses include nice
- {display hack}s). Many nasty viruses, written by particularly
- perversely minded {cracker}s, do irreversible damage, like
- nuking all the user's files.
-
- In the 1990s, viruses have become a serious problem, especially
- among IBM PC and Macintosh users (the lack of security on these
- machines enables viruses to spread easily, even infecting the
- operating system). The production of special anti-virus software
- has become an industry, and a number of exaggerated media reports
- have caused outbreaks of near hysteria among users; many
- {luser}s tend to blame *everything* that doesn't work as
- they had expected on virus attacks. Accordingly, this sense of
- `virus' has passed not only into techspeak but into also popular
- usage (where it is often incorrectly used to denote a {worm} or
- even a {Trojan horse}). Compare {back door}; see also
- {UNIX conspiracy}.
-
- visionary: n. 1. One who hacks vision, in the sense of an
- Artificial Intelligence researcher working on the problem of
- getting computers to `see' things using TV cameras. (There isn't
- any problem in sending information from a TV camera to a computer.
- The problem is, how can the computer be programmed to make use of
- the camera information? See {SMOP}, {AI-complete}.) 2. [IBM]
- One who reads the outside literature. At IBM, apparently, such a
- penchant is viewed with awe and wonder.
-
- VMS: /V-M-S/ n. DEC's proprietary operating system for its VAX
- minicomputer; one of the seven or so environments that loom largest
- in hacker folklore. Many UNIX fans generously concede that VMS
- would probably be the hacker's favorite commercial OS if UNIX
- didn't exist; though true, this makes VMS fans furious. One major
- hacker gripe with VMS concerns its slowness --- thus the following
- limerick:
-
- There once was a system called VMS
- Of cycles by no means abstemious.
- It's chock-full of hacks
- And runs on a VAX
- And makes my poor stomach all squeamious.
- --- The Great Quux
-
- See also {VAX}, {{TOPS-10}}, {{TOPS-20}}, {{UNIX}}, {runic}.
-
- voice: vt. To phone someone, as opposed to emailing them or
- connecting in talk mode. "I'm busy now; I'll voice you later."
-
- voice-net: n. Hackish way of referring to the telephone system,
- analogizing it to a digital network. USENET {sig block}s not
- uncommonly include the sender's phone next to a "Voice:" or
- "Voice-Net:" header; common variants of this are "Voicenet" and
- "V-Net". Compare {paper-net}, {snail-mail}.
-
- voodoo programming: [from George Bush's "voodoo economics"] n.
- The use by guess or cookbook of an {obscure} or {hairy} system,
- feature, or algorithm that one does not truly understand. The
- implication is that the technique may not work, and if it doesn't,
- one will never know why. Almost synonymous with {black magic},
- except that black magic typically isn't documented and
- *nobody* understands it. Compare {magic}, {deep magic},
- {heavy wizardry}, {rain dance}, {cargo cult programming},
- {wave a dead chicken}.
-
- VR: // [MUD] n. On-line abbrev for {virtual reality}, as
- opposed to {RL}.
-
- Vulcan nerve pinch: n. [from the old "Star Trek" TV series via
- Commodore Amiga hackers] The keyboard combination that forces a
- soft-boot or jump to ROM monitor (on machines that support such a
- feature). On many micros this is Ctrl-Alt-Del; on Suns, L1-A; on
- some Macintoshes, it is <Cmd>-<Power switch>! Also called
- {three-finger salute}. Compare {quadruple bucky}.
-
- vulture capitalist: n. Pejorative hackerism for `venture
- capitalist', deriving from the common practice of pushing contracts
- that deprive inventors of control over their own innovations and
- most of the money they ought to have made from them.
-
- = W =
-
- wabbit: /wab'it/ [almost certainly from Elmer Fudd's immortal
- line "You wascawwy wabbit!"] n. 1. A legendary early hack
- reported on a System/360 at RPI and elsewhere around 1978. The
- program would make two copies of itself every time it was run,
- eventually crashing the system. 2. By extension, any hack that
- includes infinite self-replication but is not a {virus} or
- {worm}. See also {cookie monster}.
-
- WAITS:: /wayts/ n. The mutant cousin of {{TOPS-10}} used on a
- handful of systems at {{SAIL}} up to 1990. There was never an
- `official' expansion of WAITS (the name itself having been arrived
- at by a rather sideways process), but it was frequently glossed as
- `West-coast Alternative to ITS'. Though WAITS was less visible
- than ITS, there was frequent exchange of people and ideas between
- the two communities, and innovations pioneered at WAITS exerted
- enormous indirect influence. The early screen modes of {EMACS},
- for example, were directly inspired by WAITS's `E' editor --- one
- of a family of editors that were the first to do `real-time
- editing', in which the editing commands were invisible and where
- one typed text at the point of insertion/overwriting. The modern
- style of multi-region windowing is said to have originated there,
- and WAITS alumni at XEROX PARC and elsewhere played major roles in
- the developments that led to the XEROX Star, the Macintosh, and the
- Sun workstations. {Bucky bits} were also invented there ---
- thus, the ALT key on every IBM PC is a WAITS legacy. One notable
- WAITS feature seldom duplicated elsewhere was a news-wire interface
- that allowed WAITS hackers to read, store, and filter AP and UPI
- dispatches from their terminals; the system also featured a
- still-unusual level of support for what is now called `multimedia'
- computing, allowing analog audio and video signals to be switched
- to programming terminals.
-
- waldo: /wol'doh/ [From Robert A. Heinlein's story "Waldo"]
- 1. A mechanical agent, such as a gripper arm, controlled by a human
- limb. When these were developed for the nuclear industry in the
- mid-1940s they were named after the invention described by Heinlein
- in the story, which he wrote in 1942. Now known by the more
- generic term `telefactoring', this technology is of intense
- interest to NASA for tasks like space station maintenance. 2. At
- Harvard (particularly by Tom Cheatham and students), this is used
- instead of {foobar} as a meta-syntactic variable and general
- nonsense word. See {foo}, {bar}, {foobar}, {quux}.
-
- walk: n.,vt. Traversal of a data structure, especially an array or
- linked-list data structure in {core}. See also {codewalker},
- {silly walk}, {clobber}.
-
- walk off the end of: vt. To run past the end of an array, list, or medium after stepping
- through it --- a good way to land in trouble.
- Often the result of an {off-by-one error}. Compare
- {clobber}, {roach}, {smash the stack}.
-
- walking drives: n. An occasional failure mode of magnetic-disk
- drives back in the days when they were huge, clunky {washing
- machine}s. Those old {dinosaur} parts carried terrific angular
- momentum; the combination of a misaligned spindle or worn bearings
- and stick-slip interactions with the floor could cause them to
- `walk' across a room, lurching alternate corners forward a couple
- of millimeters at a time. There is a legend about a drive that
- walked over to the only door to the computer room and jammed it
- shut; the staff had to cut a hole in the wall in order to get at
- it! Walking could also be induced by certain patterns of drive
- access (a fast seek across the whole width of the disk, followed by
- a slow seek in the other direction). Some bands of old-time
- hackers figured out how to induce disk-accessing patterns that
- would do this to particular drive models and held disk-drive races.
-
- wall: [WPI] interj. 1. An indication of confusion, usually spoken
- with a quizzical tone: "Wall??" 2. A request for further
- explication. Compare {octal forty}.
-
- It is said that "Wall?" really came from `like talking to a
- blank wall'. It was initially used in situations where, after you
- had carefully answered a question, the questioner stared at you
- blankly, clearly having understood nothing that was explained. You
- would then throw out a "Hello, wall?" to elicit some sort of
- response from the questioner. Later, confused questioners began
- voicing "Wall?" themselves.
-
- wall follower: n. A person or algorithm that compensates for lack
- of sophistication or native stupidity by efficiently following some
- simple procedure shown to have been effective in the past. Used of
- an algorithm, this is not necessarily pejorative; it recalls
- `Harvey Wallbanger', the winning robot in an early AI contest
- (named, of course, after the cocktail). Harvey successfully solved
- mazes by keeping a `finger' on one wall and running till it came
- out the other end. This was inelegant, but it was mathematically
- guaranteed to work on simply-connected mazes --- and, in fact,
- Harvey outperformed more sophisticated robots that tried to
- `learn' each maze by building an internal representation of it.
- Used of humans, the term *is* pejorative and implies an
- uncreative, bureaucratic, by-the-book mentality. See also {code
- grinder}, {droid}.
-
- wall time: n. (also `wall clock time') 1. `Real world' time (what
- the clock on the wall shows), as opposed to the system clock's idea
- of time. 2. The real running time of a program, as opposed to the
- number of {clocks} required to execute it (on a timesharing
- system these will differ, as no one program gets all the
- {clocks}, and on multiprocessor systems with good thread support
- one may get more processor clocks than real-time clocks).
-
- wallpaper: n. 1. A file containing a listing (e.g., assembly
- listing) or a transcript, esp. a file containing a transcript of
- all or part of a login session. (The idea was that the paper for
- such listings was essentially good only for wallpaper, as evidenced
- at Stanford, where it was used to cover windows.) Now rare,
- esp. since other systems have developed other terms for it (e.g.,
- PHOTO on TWENEX). However, the UNIX world doesn't have an
- equivalent term, so perhaps {wallpaper} will take hold there.
- The term probably originated on ITS, where the commands to begin
- and end transcript files were `:WALBEG' and `:WALEND',
- with default file `WALL PAPER' (the space was a path
- delimiter). 2. The background pattern used on graphical
- workstations (this is techspeak under the `Windows' graphical user
- interface to MS-DOS). 3. `wallpaper file' n. The file that
- contains the wallpaper information before it is actually printed on
- paper. (Even if you don't intend ever to produce a real paper copy
- of the file, it is still called a wallpaper file.)
-
- wango: /wang'goh/ n. Random bit-level {grovel}ling going on in
- a system during some unspecified operation. Often used in
- combination with {mumble}. For example: "You start with the `.o'
- file, run it through this postprocessor that does mumble-wango ---
- and it comes out a snazzy object-oriented executable."
-
- wank: /wangk/ [Columbia University: prob. by mutation from
- Commonwealth slang v. `wank', to masturbate] n.,v. Used much as
- {hack} is elsewhere, as a noun denoting a clever technique or
- person or the result of such cleverness. May describe (negatively)
- the act of hacking for hacking's sake ("Quit wanking, let's go get
- supper!") or (more positively) a {wizard}. Adj. `wanky'
- describes something particularly clever (a person, program, or
- algorithm). Conversations can also get wanky when there are too
- many wanks involved. This excess wankiness is signalled by an
- overload of the `wankometer' (compare {bogometer}). When the
- wankometer overloads, the conversation's subject must be changed,
- or all non-wanks will leave. Compare `neep-neeping' (under
- {neep-neep}). Usage: U.S. only. In Britain and the Commonwealth
- this word is *extremely* rude and is best avoided unless one
- intends to give offense.
-
- wannabee: /won'*-bee/ (also, more plausibly, spelled `wannabe')
- [from a term recently used to describe Madonna fans who dress,
- talk, and act like their idol; prob. originally from biker slang]
- n. A would-be {hacker}. The connotations of this term differ
- sharply depending on the age and exposure of the subject. Used of
- a person who is in or might be entering {larval stage}, it is
- semi-approving; such wannabees can be annoying but most hackers
- remember that they, too, were once such creatures. When used of
- any professional programmer, CS academic, writer, or {suit}, it is
- derogatory, implying that said person is trying to cuddle up to the
- hacker mystique but doesn't, fundamentally, have a prayer of
- understanding what it is all about. Overuse of terms from this lexicon
- is often an indication of the {wannabee} nature. Compare
- {newbie}.
-
- Historical note: The wannabee phenomenon has a slightly different
- flavor now (1991) than it did ten or fifteen years ago. When the
- people who are now hackerdom's tribal elders were in {larval
- stage}, the process of becoming a hacker was largely unconscious
- and unaffected by models known in popular culture --- communities
- formed spontaneously around people who, *as individuals*, felt
- irresistibly drawn to do hackerly things, and what wannabees
- experienced was a fairly pure, skill-focused desire to become
- similarly wizardly. Those days of innocence are gone forever;
- society's adaptation to the advent of the microcomputer after 1980
- included the elevation of the hacker as a new kind of folk hero,
- and the result is that some people semi-consciously set out to
- *be hackers* and borrow hackish prestige by fitting the
- popular image of hackers. Fortunately, to do this really well, one
- has to actually become a wizard. Nevertheless, old-time hackers
- tend to share a poorly articulated disquiet about the change; among
- other things, it gives them mixed feelings about the effects of
- public compendia of lore like this one.
-
- warm boot: n. See {boot}.
-
- wart: n. A small, {crock}y {feature} that sticks out of an
- otherwise {clean} design. Something conspicuous for localized
- ugliness, especially a special-case exception to a general rule.
- For example, in some versions of `csh(1)', single quotes
- literalize every character inside them except `!'. In ANSI C,
- the `??' syntax used obtaining ASCII characters in a foreign
- environment is a wart. See also {miswart}.
-
- washing machine: n. Old-style 14-inch hard disks in floor-standing
- cabinets. So called because of the size of the cabinet and the
- `top-loading' access to the media packs --- and, of course, they
- were always set on `spin cycle'. The washing-machine idiom
- transcends language barriers; it is even used in Russian hacker
- jargon. See also {walking drives}. The thick channel cables
- connecting these were called `bit hoses' (see {hose}).
-
- water MIPS: n. (see {MIPS}, sense 2) Large, water-cooled
- machines of either today's ECL-supercomputer flavor or yesterday's
- traditional {mainframe} type.
-
-
- wave a dead chicken: v. To perform a ritual in the direction of
- crashed software or hardware that one believes to be futile but
- is nevertheless necessary so that others are satisfied that an
- appropriate degree of effort has been expended. "I'll wave a dead
- chicken over the source code, but I really think we've run into an
- OS bug." Compare {voodoo programming}, {rain dance}.
-
- weasel: n. [Cambridge] A na"ive user, one who deliberately or
- accidentally does things that are stupid or ill-advised. Roughly
- synonymous with {loser}.
-
- wedged: [from a common description of recto-cranial inversion] adj.
- 1. To be stuck, incapable of proceeding without help. This is
- different from having crashed. If the system has crashed, then it
- has become totally non-functioning. If the system is wedged, it is
- trying to do something but cannot make progress; it may be capable
- of doing a few things, but not be fully operational. For example,
- a process may become wedged if it {deadlock}s with another (but
- not all instances of wedging are deadlocks). Being wedged is
- slightly milder than being {hung}. See also {gronk}, {locked
- up}, {hosed}. Describes a {deadlock}ed condition. 2. Often
- refers to humans suffering misconceptions. "He's totally wedged
- --- he's convinced that he can levitate through meditation."
- 3. [UNIX] Specifically used to describe the state of a TTY left in
- a losing state by abort of a screen-oriented program or one that
- has messed with the line discipline in some obscure way.
-
- wedgie: [Fairchild] n. A bug. Prob. related to {wedged}.
-
- wedgitude: /wedj'i-t[y]ood/ n. The quality or state of being
- {wedged}.
-
- weeble: /weeb'l/ [Cambridge] interj. Used to denote frustration,
- usually at amazing stupidity. "I stuck the disk in upside down."
- "Weeble...." Compare {gurfle}.
-
- weeds: n. 1. Refers to development projects or algorithms that have
- no possible relevance or practical application. Comes from `off in
- the weeds'. Used in phrases like "lexical analysis for microcode
- is serious weeds...." 2. At CDC/ETA before its demise, the
- phrase `go off in the weeds' was equivalent to IBM's {branch to
- Fishkill} and mainstream hackerdom's {jump off into never-never
- land}.
-
- weenie: n. 1. When used with a qualifier (for example, as in
- {UNIX weenie}, VMS weenie, IBM weenie) this can be either an
- insult or a term of praise, depending on context, tone of voice,
- and whether or not it is applied by a person who considers
- him or herself to be the same sort of weenie. Implies that the weenie
- has put a major investment of time, effort, and concentration into
- the area indicated; whether this is positive or negative depends on
- the hearer's judgment of how the speaker feels about that area.
- See also {bigot}. 2. The semicolon character, `;' (ASCII
- 0111011).
-
- Weenix: /wee'niks/ [ITS] n. A derogatory term for {{UNIX}},
- derived from {UNIX weenie}. According to one noted ex-ITSer, it
- is "the operating system preferred by Unix Weenies: typified by
- poor modularity, poor reliability, hard file deletion, no file
- version numbers, case sensitivity everywhere, and users who believe
- that these are all advantages". Some ITS fans behave as though
- they believe UNIX stole a future that rightfully belonged to them.
- See {{ITS}}, sense 2.
-
- well-behaved: adj. 1. [primarily {{MS-DOS}}] Said of software
- conforming to system interface guidelines and standards.
- Well-behaved software uses the operating system to do chores such
- as keyboard input, allocating memory and drawing graphics. Oppose
- {ill-behaved}. 2. Software that does its job quietly and
- without counterintuitive effects. Esp. said of software having
- an interface spec sufficiently simple and well-defined that it can
- be used as a {tool} by other software. See {cat}.
-
- well-connected: adj. Said of a computer installation, this means
- that it has reliable email links with {the network} and/or that
- it relays a large fraction of available {USENET} newsgroups.
- `Well-known' can be almost synonymous, but also implies that the
- site's name is familiar to many (due perhaps to an archive service
- or active USENET users).
-
- wetware: /wet'weir/ [prob. from the novels of Rudy Rucker] n.
- 1. The human nervous system, as opposed to computer hardware or
- software. "Wetware has 7 plus or minus 2 temporary registers."
- 2. Human beings (programmers, operators, administrators) attached
- to a computer system, as opposed to the system's hardware or
- software. See {liveware}, {meatware}.
-
- whacker: [University of Maryland: from {hacker}] n. 1. A person,
- similar to a {hacker}, who enjoys exploring the details of
- programmable systems and how to stretch their capabilities.
- Whereas a hacker tends to produce great hacks, a whacker only ends
- up whacking the system or program in question. Whackers are often
- quite egotistical and eager to claim {wizard} status,
- regardless of the views of their peers. 2. A person who is good at
- programming quickly, though rather poorly and ineptly.
-
- whales: n. See {like kicking dead whales down the beach}.
-
- wheel: [from slang `big wheel' for a powerful person] n. A
- person who has an active a {wheel bit}. "We need to find a
- wheel to un{wedge} the hung tape drives."
-
- wheel bit: n. A privilege bit that allows the possessor to perform
- some restricted operation on a timesharing system, such as read or
- write any file on the system regardless of protections, change or
- look at any address in the running monitor, crash or reload the
- system, and kill or create jobs and user accounts. The term was
- invented on the TENEX operating system, and carried over to
- TOPS-20, XEROX-IFS, and others. The state of being in a privileged
- logon is sometimes called `wheel mode'. This term entered the
- UNIX culture from TWENEX in the mid-1980s and has been gaining
- popularity there (esp. at university sites). See also {root}.
-
- wheel wars: [Stanford University] A period in {larval stage}
- during which student hackers hassle each other by attempting to log
- each other out of the system, delete each other's files, and
- otherwise wreak havoc, usually at the expense of the lesser users.
-
- White Book: n. Syn. {K&R}.
-
- whizzy: [Sun] adj. (alt. `wizzy') Describes a {cuspy} program;
- one that is feature-rich and well presented.
-
- WIBNI: // [Bell Labs: Wouldn't It Be Nice If] n. What most
- requirements documents and specifications consist entirely of.
- Compare {IWBNI}.
-
- widget: n. 1. A meta-thing. Used to stand for a real object in
- didactic examples (especially database tutorials). Legend has it
- that the original widgets were holders for buggy whips. "But
- suppose the parts list for a widget has 52 entries...."
- 2. [poss. evoking `window gadget'] A user interface object in
- {X} graphical user interfaces.
-
- wiggles: n. [scientific computation] In solving partial differential
- equations by finite difference and similar methods, wiggles are
- sawtooth (up-down-up-down) oscillations at the shortest wavelength
- representable on the grid. If an algorithm is unstable, this is
- often the most unstable waveform, so it grows to dominate the
- solution. Alternatively, stable (though inaccurate) wiggles can be
- generated near a discontinuity by a Gibbs phenomenon.
-
- WIMP environment: n. [acronymic from `Window, Icon, Menu, Pointing
- device (or Pull-down menu)'] A graphical-user-interface-based
- environment such as {X} or the Macintosh interface, as described
- by a hacker who prefers command-line interfaces for their superior
- flexibility and extensibility. See {menuitis},
- {user-obsequious}.
-
- win: [MIT] 1. vi. To succeed. A program wins if no unexpected
- conditions arise, or (especially) if it sufficiently {robust} to
- take exceptions in stride. 2. n. Success, or a specific instance
- thereof. A pleasing outcome. A {feature}. Emphatic forms:
- `moby win', `super win', `hyper-win' (often used
- interjectively as a reply). For some reason `suitable win' is
- also common at MIT, usually in reference to a satisfactory solution
- to a problem. Oppose {lose}; see also {big win}, which isn't
- quite just an intensification of `win'.
-
- win big: vi. To experience serendipity. "I went shopping and won
- big; there was a 2-for-1 sale." See {big win}.
-
- win win: interj. Expresses pleasure at a {win}.
-
- Winchester:: n. Informal generic term for `floating-head'
- magnetic-disk drives in which the read-write head planes over the
- disk surface on an air cushion. The name arose because the
- original 1973 engineering prototype for what later became the
- IBM 3340 featured two 30-megabyte volumes; 30--30 became
- `Winchester' when somebody noticed the similarity to the common
- term for a famous Winchester rifle (in the latter, the first 30
- referred to caliber and the second to the grain weight of the
- charge).
-
- winged comments: n. Comments set on the same line as code, as
- opposed to {boxed comments}. In C, for example:
-
- d = sqrt(x*x + y*y); /* distance from origin */
-
- Generally these refer only to the action(s) taken on that line.
-
- winkey: n. (alt. `winkey face') See {emoticon}.
-
- winnage: /win'*j/ n. The situation when a lossage is corrected, or
- when something is winning.
-
- winner: 1. n. An unexpectedly good situation, program, programmer,
- or person. "So it turned out I could use a {lexer} generator
- instead of hand-coding my own pattern recognizer. What a win!"
- 2. `real winner': Often sarcastic, but also used as high praise
- (see also the note under {user}). "He's a real winner --- never
- reports a bug till he can duplicate it and send in an
- example."
-
- winnitude: /win'*-t[y]ood/ n. The quality of winning (as opposed
- to {winnage}, which is the result of winning). "Guess what?
- They tweaked the microcode and now the LISP interpreter runs twice
- as fast as it used to." "That's really great! Boy, what
- winnitude!" "Yup. I'll probably get a half-hour's winnage on the
- next run of my program." Perhaps curiously, the obvious antonym
- `lossitude' is rare.
-
- wired: n. See {hardwired}.
-
- wirehead: /wi:r'hed/ n. [prob. from SF slang for an
- electrical-brain-stimulation addict] 1. A hardware hacker,
- especially one who concentrates on communications hardware. 2. An
- expert in local-area networks. A wirehead can be a network
- software wizard too, but will always have the ability to deal with
- network hardware, down to the smallest component. Wireheads are
- known for their ability to lash up an Ethernet terminator from
- spare resistors, for example.
-
- wish list: n. A list of desired features or bug fixes that probably
- won't get done for a long time, usually because the person
- responsible for the code is too busy or can't think of a clean way
- to do it. "OK, I'll add automatic filename completion to the wish
- list for the new interface." Compare {tick-list features}.
-
- within delta of: adj. See {delta}.
-
- within epsilon of: adj. See {epsilon}.
-
- wizard: n. 1. A person who knows how a complex piece of software
- or hardware works (that is, who {grok}s it); esp. someone who
- can find and fix bugs quickly in an emergency. Someone is a
- {hacker} if he or she has general hacking ability, but is a wizard
- with respect to something only if he or she has specific detailed
- knowledge of that thing. A good hacker could become a wizard for
- something given the time to study it. 2. A person who is permitted
- to do things forbidden to ordinary people; one who has {wheel}
- privileges on a system. 3. A UNIX expert, esp. a UNIX systems
- programmer. This usage is well enough established that `UNIX
- Wizard' is a recognized job title at some corporations and to most
- headhunters. See {guru}, {lord high fixer}. See also
- {deep magic}, {heavy wizardry}, {incantation}, {magic},
- {mutter}, {rain dance}, {voodoo programming}, {wave a
- dead chicken}.
-
- Wizard Book: n. Hal Abelson and Jerry Sussman's `Structure
- and Interpretation of Computer Programs' (MIT Press, 1984; ISBN
- 0-262-01077-1, an excellent computer science text used in
- introductory courses at MIT. So called because of the wizard on
- the jacket. One of the {bible}s of the LISP/Scheme
- world.
-
- wizard mode: [from {rogue}] n. A special access mode of a program or
- system, usually passworded, that permits some users godlike
- privileges. Generally not used for operating systems themselves
- (`root mode' or `wheel mode' would be used instead).
-
- wizardly: adj. Pertaining to wizards. A wizardly {feature} is one
- that only a wizard could understand or use properly.
-
- womb box: n. 1. [TMRC] Storage space for equipment. 2. [proposed]
- A variety of hard-shell equipment case with heavy interior padding
- and/or shaped carrier cutouts in a foam-rubber matrix; mundanely
- called a `flight case'. Used for delicate test equipment,
- electronics, and musical instruments.
-
- WOMBAT: [Waste Of Money, Brains, And Time] adj. Applied to problems
- which are both profoundly {uninteresting} in themselves and
- unlikely to benefit anyone interesting even if solved. Often used
- in fanciful constructions such as `wrestling with a wombat'. See
- also {crawling horror}, {SMOP}. Also note the rather different
- usage as a meta-syntactic variable in {{Commonwealth Hackish}}.
-
- wonky: /wong'kee/ [from Australian slang] adj. Yet another
- approximate synonym for {broken}. Specifically connotes a
- malfunction that produces behavior seen as crazy, humorous, or
- amusingly perverse. "That was the day the printer's font logic
- went wonky and everybody's listings came out in Tengwar." Also in
- `wonked out'. See {funky}, {demented}, {bozotic}.
-
- workaround: n. A temporary {kluge} inserted in a system under
- development or test in order to avoid the effects of a {bug} or
- {misfeature} so that work can continue. Theoretically,
- workarounds are always replaced by {fix}es; in practice,
- customers often find themselves living with workarounds in the
- first couple of releases. "The code died on NUL characters in the
- input, so I fixed it to interpret them as spaces." "That's not a
- fix, that's a workaround!"
-
- working as designed: [IBM] adj. 1. In conformance to a wrong or
- inappropriate specification; useful, but misdesigned.
- 2. Frequently used as a sardonic comment on a program's utility.
- 3. Unfortunately also used as a bogus reason for not accepting a
- criticism or suggestion. At {IBM}, this sense is used in
- official documents! See {BAD}.
-
- worm: [from `tapeworm' in John Brunner's novel `The
- Shockwave Rider', via XEROX PARC] n. A program that propagates
- itself over a network, reproducing itself as it goes. Compare
- {virus}. Nowadays the term has negative connotations, as it is
- assumed that only {cracker}s write worms. Perhaps the
- best-known example was Robert T. Morris's `Internet Worm' of 1988,
- a `benign' one that got out of control and hogged hundreds of
- Suns and VAXen across the U.S. See also {cracker}, {RTM},
- {Trojan horse}, {ice}.
-
- wound around the axle: adj. In an infinite loop. Often used by older
- computer types.
-
- wrap around: vi. (also n. `wraparound' and v. shorthand `wrap')
- 1. [techspeak] The action of a counter that starts over at zero or at
- `minus infinity' (see {infinity}) after its maximum value has
- been reached, and continues incrementing, either because it is
- programmed to do so or because of an overflow (as when a car's
- odometer starts over at 0). 2. To change {phase} gradually and
- continuously by maintaining a steady wake-sleep cycle somewhat
- longer than 24 hours, e.g., living six long (28-hour) days in a week
- (or, equivalently, sleeping at the rate of 10 microhertz).
-
- write-only code: [a play on `read-only memory'] n. Code so
- arcane, complex, or ill-structured that it cannot be modified or
- even comprehended by anyone but its author, and possibly not even
- by him/her. A {Bad Thing}.
-
- write-only language: n. A language with syntax (or semantics)
- sufficiently dense and bizarre that any routine of significant size
- is {write-only code}. A sobriquet applied occasionally to C and
- often to APL, though {INTERCAL} and {TECO} certainly deserve it
- more.
-
- write-only memory: n. The obvious antonym to `read-only
- memory'. Out of frustration with the long and seemingly useless
- chain of approvals required of component specifications, during
- which no actual checking seemed to occur, an engineer at Signetics
- once created a specification for a write-only memory and included
- it with a bunch of other specifications to be approved. This
- inclusion came to the attention of Signetics {management} only
- when regular customers started calling and asking for pricing
- information. Signetics published a corrected edition of the data
- book and requested the return of the `erroneous' ones. Later,
- around 1974, Signetics bought a double-page spread in `Electronics'
- magazine's April issue and used the spec as an April Fools' Day
- joke. Instead of the more conventional characteristic curves, the
- 25120 "fully encoded, 9046 x N, Random Access, write-only-memory"
- data sheet included diagrams of "bit capacity vs. Temp.",
- "Iff vs. Vff", "Number of pins remaining vs. number of socket
- insertions", and "AQL vs. selling price". The 25120 required a
- 6.3 VAC VFF supply, a +10V VCC, and VDD of 0V,
- +/- 2%.
-
- Wrong Thing: n. A design, action, or decision that is clearly
- incorrect or inappropriate. Often capitalized; always emphasized
- in speech as if capitalized. The opposite of the {Right Thing};
- more generally, anything that is not the Right Thing. In cases
- where `the good is the enemy of the best', the merely good --- although
- good --- is nevertheless the Wrong Thing. "In C, the default is for
- module-level declarations to be visible everywhere, rather than
- just within the module. This is clearly the Wrong Thing."
-
- wugga wugga: /wuh'g* wuh'g*/ n. Imaginary sound that a computer
- program makes as it labors with a tedious or difficult task.
- Compare {cruncha cruncha cruncha}, {grind} (sense 4).
-
- WYSIWYG: /wiz'ee-wig/ adj. Describes a user interface under which
- "What You See Is What You Get", as opposed to one that uses
- more-or-less obscure commands which do not result in immediate
- visual feedback. The term can be mildly derogatory, as it is often
- used to refer to dumbed-down {user-friendly} interfaces targeted
- at non-programmers; a hacker has no fear of obscure commands.
- On the other hand, EMACS was one of the very first WYSIWYG editors,
- replacing (actually, at first overlaying) the extremely obscure,
- command-based {TECO}. See also {WIMP environment}. [Oddly
- enough, this term has already made it into the OED. --- ESR]
-
- = X =
-
- X: /X/ n. 1. Used in various speech and writing contexts (also
- in lowercase) in roughly its algebraic sense of `unknown within a
- set defined by context' (compare {N}). Thus, the abbreviation
- 680x0 stands for 68000, 68010, 68020, 68030, or 68040, and 80x86
- stands for 80186, 80286 80386 or 80486 (note that a UNIX hacker
- might write these as 680[0-4]0 and 80[1-4]86 or 680?0 and 80?86
- respectively; see {glob}). 2. [after the name of an earlier
- window system called `W'] An over-sized, over-featured,
- over-engineered and incredibly over-complicated window system
- developed at MIT and widely used on UNIX systems.
-
- XOFF: /X'of/ n. Syn. {control-s}.
-
- xor: /X'or/, /kzor/ conj. Exclusive or. `A xor B' means
- `A or B, but not both'. "I want to get cherry pie xor a
- banana split." This derives from the technical use of the term as
- a function on truth-values that is true if exactly one of its two
- arguments is true.
-
- xref: /X'ref/ vt., n. Hackish standard abbreviation for
- `cross-reference'.
-
- XXX: /X-X-X/ n. A marker that attention is needed.
- Commonly used in program comments to indicate areas that are kluged
- up or need to be. Some hackers liken `XXX' to the notional
- heavy-porn movie rating.
-
- xyzzy: /X-Y-Z-Z-Y/, /X-Y-ziz'ee/, /ziz'ee/, or /ik-ziz'ee/
- [from the ADVENT game] adj. The {canonical} `magic word'.
- This comes from {ADVENT}, in which the idea is to explore an
- underground cave with many rooms and to collect the treasures you
- find there. If you type `xyzzy' at the appropriate time, you can
- move instantly between two otherwise distant points. If, therefore,
- you encounter some bit of {magic}, you might remark on this
- quite succinctly by saying simply "Xyzzy!" "Ordinarily you
- can't look at someone else's screen if he has protected it, but if
- you type quadruple-bucky-clear the system will let you do it
- anyway." "Xyzzy!" Xyzzy has actually been implemented as an
- undocumented no-op command on several OSes; in Data General's
- AOS/VS, for example, it would typically respond "Nothing
- happens", just as {ADVENT} did if the magic was invoked at the
- wrong spot or before a player had performed the action that enabled
- the word. See also {plugh}.
-
- = Y =
-
- YA-: [Yet Another] abbrev. In hackish acronyms this almost
- invariably expands to {Yet Another}, following the precedent set
- by UNIX `yacc(1)'. See {YABA}.
-
- YABA: /ya'b*/ [Cambridge] n. Yet Another Bloody Acronym. Whenever
- some program is being named, someone invariably suggests that it be
- given a name that is acronymic. The response from those with a
- trace of originality is to remark ironically that the proposed name
- would then be `YABA-compatible'. Also used in response to questions
- like "What is WYSIWYG?" See also {TLA}.
-
- YAUN: /yawn/ [Acronym for `Yet Another UNIX Nerd'] n. Reported
- from the San Diego Computer Society (predominantly a microcomputer
- users' group) as a good-natured punning insult aimed at UNIX
- zealots.
-
- Yellow Book: [proposed] n. The print version of this Jargon File;
- `The New Hacker's Dictionary', forthcoming from MIT Press,
- 1991. Includes all the material in the File, plus a Foreword by
- Guy L. Steele and a Preface by Eric S. Raymond. Most importantly,
- the book version is nicely typeset and includes almost all of the
- infamous Crunchly cartoons by the Great Quux, each attached to an
- appropriate entry.
-
- Yet Another: adj. [From UNIX's `yacc(1)', `Yet Another Compiler-
- Compiler', a LALR parser generator] 1. Of your own work: A humorous
- allusion often used in titles to acknowledge that the topic is not
- original, though the content is. As in `Yet Another AI Group'
- or `Yet Another Simulated Annealing Algorithm'. 2. Of others'
- work: Describes something of which there are far too many. See
- also {YA-}, {YABA}, {YAUN}.
-
- You are not expected to understand this: cav. [UNIX] The canonical
- comment describing something {magic} or too complicated to
- bother explaining properly. From an infamous comment in the
- context-switching code of the V6 UNIX kernel.
-
- You know you've been hacking too long when...: The set-up line
- for a genre of one-liners told by hackers about themselves. These
- include the following:
-
- * not only do you check your email more often than your paper
- mail, but you remember your {network address} faster than your
- postal one.
- * your {SO} kisses you on the neck and the first thing you
- think is "Uh, oh, {priority interrupt}."
- * you go to balance your checkbook and discover that you're
- doing it in octal.
- * your computers have a higher street value than your car.
- * in your universe, `round numbers' are powers of 2, not 10.
- * more than once, you have woken up recalling a dream in
- some programming language.
- * you realize you have never seen half of your best friends.
-
- [An early version of this entry said "All but one of these
- have been reliably reported as hacker traits (some of them quite
- often). Even hackers may have trouble spotting the ringer." The
- ringer was balancing one's checkbook in octal, which I made up out
- of whole cloth. Although more respondents picked that one
- out as fiction than any of the others, I also received multiple
- independent reports of its actually happening. --- ESR]
-
- Your mileage may vary: cav. [from the standard disclaimer attached
- to EPA mileage ratings by American car manufacturers] 1. A ritual
- warning often found in UNIX freeware distributions. Translates
- roughly as "Hey, I tried to write this portably, but who
- *knows* what'll happen on your system?" 2. A qualifier more
- generally attached to advice. "I find that sending flowers works
- well, but your mileage may vary."
-
- Yow!: /yow/ [from "Zippy the Pinhead" comix] interj. A favored hacker
- expression of humorous surprise or emphasis. "Yow! Check out what
- happens when you twiddle the foo option on this display hack!"
- Compare {gurfle}.
-
- yoyo mode: n. The state in which the system is said to be when it
- rapidly alternates several times between being up and being down.
- Interestingly (and perhaps not by coincidence), many hardware
- vendors give out free yoyos at Usenix exhibits.
-
- Sun Microsystems gave out logoized yoyos at SIGPLAN '88. Tourists
- staying at one of Atlanta's most respectable hotels were
- subsequently treated to the sight of 200 of the country's top
- computer scientists testing yo-yo algorithms in the lobby.
-
- Yu-Shiang Whole Fish: /yoo-shyang hohl fish/ n. obs. The
- character gamma (extended SAIL ASCII 0001001), which with a loop in
- its tail looks like a little fish swimming down the page. The term
- is actually the name of a Chinese dish in which a fish is cooked
- whole (not {parse}d) and covered with Yu-Shiang (or Yu-Hsiang)
- sauce. Usage: primarily by people on the MIT LISP Machine, which
- could display this character on the screen. Tends to elicit
- incredulity from people who hear about it second-hand.
-
- = Z =
-
- zap: 1. n. Spiciness. 2. vt. To make food spicy. 3. vt. To make
- someone `suffer' by making his food spicy. (Most hackers love
- spicy food. Hot-and-sour soup is considered wimpy unless it makes
- you wipe your nose for the rest of the meal.) See {zapped}.
- 4. vt. To modify, usually to correct; esp. used when the action
- is performed with a debugger or binary patching tool. Also implies
- surgical precision. "Zap the debug level to 6 and run it again."
- In the IBM mainframe world, binary patches are applied to programs
- or to the OS with a program called `superzap', whose file name is
- `IMASPZAP' (I M A SuPerZAP). 5. vt. To erase or reset. 6. To
- {fry} a chip with static electricity. "Uh oh --- I think that
- lightning strike may have zapped the disk controller."
-
- zapped: adj. Spicy. This term is used to distinguish between food
- that is hot (in temperature) and food that is *spicy*-hot.
- For example, the Chinese appetizer Bon Bon Chicken is a kind of
- chicken salad that is cold but zapped; by contrast, {vanilla}
- wonton soup is hot but not zapped. See also {{oriental food}},
- {laser chicken}. See {zap}, senses 1 and 2.
-
- zen: vt. To figure out something by meditation or by a sudden flash
- of enlightenment. Originally applied to bugs, but occasionally
- applied to problems of life in general. "How'd you figure out the
- buffer allocation problem?" "Oh, I zenned it." Contrast {grok},
- which connotes a time-extended version of zenning a system.
- Compare {hack mode}. See also {guru}.
-
- zero: vt. 1. To set to 0. Usually said of small pieces of data,
- such as bits or words (esp. in the construction `zero out'). 2. To
- erase; to discard all data from. Said of disks and directories,
- where `zeroing' need not involve actually writing zeroes throughout
- the area being zeroed. One may speak of something being
- `logically zeroed' rather than being `physically zeroed'. See
- {scribble}.
-
- zero-content: adj. Syn. {content-free}.
-
- zeroth: /zee'rohth/ adj. First. Among software designers, comes
- from C's and LISP's 0-based indexing of arrays. Hardware people
- also tend to start counting at 0 instead of 1; this is natural
- since, e.g., the 256 states of 8 bits correspond to the binary
- numbers 0, 1, ..., 255 and the digital devices known as `counters'
- count in this way.
-
- Hackers and computer scientists often like to call the first
- chapter of a publication `chapter 0', especially if it is of an
- introductory nature (one of the classic instances was in the First
- Edition of {K&R}). In recent years this trait has also been
- observed among many pure mathematicians (who have an independent
- tradition of numbering from 0). Zero-based numbering tends to
- reduce {fencepost error}s, though it cannot eliminate them
- entirely.
-
- zigamorph: /zig'*-morf/ n. Hex FF (11111111) when used as a
- delimiter or {fence} character. Usage: primarily at IBM
- shops.
-
- zip: [primarily MS-DOS] vt. To create a compressed archive from a
- group of files using PKWare's PKZIP or a compatible archiver. Its
- use is spreading now that portable implementations of the algorithm
- have been written. Commonly used as follows: "I'll zip it up and
- send it to you." See {arc}, {tar and feather}.
-
- zipperhead: [IBM] n. A person with a closed mind.
-
- zombie: [UNIX] n. A process that has died but has not yet
- relinquished its process table slot (because the parent process
- hasn't executed a `wait(2)' for it yet). These can be seen in
- `ps(1)' listings occasionally. Compare {orphan}.
-
- zorch: /zorch/ 1. [TMRC] v. To attack with an inverse heat sink.
- 2. [TMRC] v. To travel, with v approaching c [that
- is, with velocity approaching lightspeed --- ESR]. 3. [MIT] v. To
- propel something very quickly. "The new comm software is very
- fast; it really zorches files through the network." 4. [MIT] n.
- Influence. Brownie points. Good karma. The intangible and fuzzy
- currency in which favors are measured. "I'd rather not ask him
- for that just yet; I think I've used up my quota of zorch with him
- for the week." 5. [MIT] n. Energy, drive, or ability. "I think
- I'll {punt} that change for now; I've been up for 30 hours
- and I've run out of zorch."
-
- Zork: /zork/ n. The second of the great early experiments in computer
- fantasy gaming; see {ADVENT}. Originally written on MIT-DM
- during the late 1970s, later distributed with BSD UNIX and
- commercialized as `The Zork Trilogy' by Infocom.
-
- zorkmid: /zork'mid/ n. The canonical unit of currency in
- hacker-written games. This originated in {zork} but has spread
- to {nethack} and is referred to in several other games.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-