Chapter 20 of 61 · 3931 words · ~20 min read

Part 20

Ancient techspeak term referring to slow, cylindrical magnetic media that were once state-of-the-art storage devices. Under BSD Unix the disk partition used for swapping is still called /dev/drum; this has led to considerable humor and not a few straight-faced but utterly bogus `explanations' getting foisted on newbies. See also "The Story of Mel" in Appendix A.

Node:drunk mouse syndrome, Next:dub dub dub, Previous:drum, Up:= D =

drunk mouse syndrome n.

(also `mouse on drugs') 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.

Node:dub dub dub, Next:Duff's device, Previous:drunk mouse syndrome, Up:= D =

dub dub dub

[common] Spoken-only shorthand for the "www" (double-u double-u double-u) in many web host names. Nothing to do with the style of reggae music called `dub'.

Node:Duff's device, Next:dumb terminal, Previous:dub dub dub, Up:= D =

Duff's device n.

The most dramatic use yet seen of fall through in C, invented by Tom Duff when he was at Lucasfilm. Trying to bum all the instructions he could out of an inner loop that copied data serially onto an output port, he decided to unroll it. He then realized that the unrolled version could be implemented by interlacing the structures of a switch and a loop:

register n = (count + 7) / 8; /* count > 0 assumed */

switch (count % 8) { case 0: do { *to = *from++; case 7: *to = *from++; case 6: *to = *from++; case 5: *to = *from++; case 4: *to = *from++; case 3: *to = *from++; case 2: *to = *from++; case 1: *to = *from++; } while (--n > 0); }

Shocking though it appears to all who encounter it for the first time, the device is actually perfectly valid, legal C. C's default fall through in case statements has long been its most controversial single feature; Duff observed that "This code forms some sort of argument in that debate, but I'm not sure whether it's for or against." Duff has discussed the device in detail at http://www.lysator.liu.se/c/duffs-device.html. Note that the omission of postfix ++ from *to was intentional (though confusing). Duff's device can be used to implement memory copy, but the original aim was to copy values serially into a magic IO register.

[For maximal obscurity, the outermost pair of braces above could actually be removed -- GLS]

Node:dumb terminal, Next:dumbass attack, Previous:Duff's device, Up:= D =

dumb terminal n.

A terminal that is one step above a glass tty, having a minimally addressable cursor but no on-screen editing or other features normally supported by a smart terminal. Once upon a time, when glass ttys were common and addressable cursors were something special, what is now called a dumb terminal could pass for a smart terminal.

Node:dumbass attack, Next:dumbed down, Previous:dumb terminal, Up:= D =

dumbass attack /duhm'as *-tak'/ n.

[Purdue] 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.

Node:dumbed down, Next:dump, Previous:dumbass attack, Up:= D =

dumbed down adj.

Simplified, with a strong connotation of oversimplified. 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.

Node:dump, Next:dumpster diving, Previous:dumbed down, Up:= D =

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 such tedium uncommon, and the term `dump' now has a faintly archaic flavor. 2. A backup. This usage is typical only at large timesharing installations.

Node:dumpster diving, Next:dup killer, Previous:dump, Up:= D =

dumpster diving /dump'-ster di:'-ving/ n.

1. The practice of sifting refuse from an office or technical installation to extract confidential data, especially security-compromising information (`dumpster' is an Americanism for what is elsewhere called a `skip'). Back in AT&T's monopoly days, before paper shredders became common office equipment, phone phreaks (see phreaking) used to organize regular dumpster runs against phone company plants and offices. Discarded and damaged copies of AT&T internal manuals taught them much. The technique is still rumored to be a favorite of crackers operating against careless targets. 2. The practice of raiding the dumpsters behind buildings where producers and/or consumers of high-tech equipment are located, with the expectation (usually justified) of finding discarded but still-valuable equipment to be nursed back to health in some hacker's den. Experienced dumpster-divers not infrequently accumulate basements full of moldering (but still potentially useful) cruft.

Node:dup killer, Next:dup loop, Previous:dumpster diving, Up:= D =

dup killer /d[y]oop kill'r/ n.

[FidoNet] Software that is supposed to detect and delete duplicates of a message that may have reached the FidoNet system via different routes.

Node:dup loop, Next:dusty deck, Previous:dup killer, Up:= D =

dup loop /d[y]oop loop/ (also `dupe loop') n.

[FidoNet] An infinite stream of duplicated, near-identical messages on a FidoNet echo, the only difference being unique or mangled identification information applied by a faulty or incorrectly configured system or network gateway, thus rendering dup killers 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.

Node:dusty deck, Next:DWIM, Previous:dup loop, Up:= D =

dusty deck n.

Old software (especially applications) which one is obliged to remain compatible with, or to maintain (DP types call this `legacy code', a term hackers consider smarmy and excessively reverent). 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; compare crawling horror.

Node:DWIM, Next:dynner, Previous:dusty deck, Up:= D =

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). 4. Of a person, someone whose directions are incomprehensible and vague, but who nevertheless has the expectation that you will solve the problem using the specific method he/she has in mind.

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. Some victims of DWIM thus claimed that 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 disgruntled victim 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.

Node:dynner, Next:earthquake, Previous:DWIM, Up:= D =

dynner /din'r/ n.

32 bits, by analogy with nybble and byte. Usage: rare and extremely silly. See also playte, tayste, crumb. General discussion of such terms is under nybble.

Node:= E =, Next:= F =, Previous:= D =, Up:The Jargon Lexicon

= E =

earthquake:

Easter egg:

Easter egging:

eat flaming death:

EBCDIC:

echo:

ECP:

ed:

egosurf:

eighty-column mind:

El Camino Bignum:

elder days:

elegant:

elephantine:

elevator controller:

elite:

ELIZA effect:

elvish:

EMACS:

email:

emoticon:

EMP:

empire:

engine:

English:

enhancement:

ENQ:

EOF:

EOL:

EOU:

epoch:

epsilon:

epsilon squared:

era the:

Eric Conspiracy:

Eris:

erotics:

error 33:

eurodemo:

evil:

evil and rude:

Evil Empire:

exa-:

examining the entrails:

EXCH:

excl:

EXE:

exec:

exercise left as an:

Exon:

Exploder:

exploit:

external memory:

eye candy:

eyeball search:

Node:earthquake, Next:Easter egg, Previous:dynner, Up:= E =

earthquake n.

[IBM] 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.

Node:Easter egg, Next:Easter egging, Previous:earthquake, Up:= E =

Easter egg n.

[from the custom of the Easter Egg hunt observed in the U.S. and many parts of Europe] 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.

Node:Easter egging, Next:eat flaming death, Previous:Easter egg, Up:= E =

Easter egging n.

[IBM] The act of replacing unrelated components 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. See also the jokes under field circus. Compare shotgun debugging.

Node:eat flaming death, Next:EBCDIC, Previous:Easter egging, Up:= E =

eat flaming death imp.

A construction popularized among hackers by the infamous CPU Wars comic; supposedly 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 Theatre's 1975 album "In The Next World, You're On Your Own" a character won the right to scream "Eat flaming death, fascist media pigs" in the middle of Oscar night on a game show; this may have been an influence). Used in humorously overblown expressions of hostility. "Eat flaming death, EBCDIC users!"

Node:EBCDIC, Next:echo, Previous:eat flaming death, Up:= E =

EBCDIC /eb's*-dik/, /eb'see`dik/, or /eb'k*-dik/ n.

[abbreviation, Extended Binary Coded Decimal Interchange Code] An alleged character set used on IBM dinosaurs. 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.

Node:echo, Next:ECP, Previous:EBCDIC, Up:= E =

echo [FidoNet] n.

A topic group on FidoNet's echomail system. Compare newsgroup.

Node:ECP, Next:ed, Previous:echo, Up:= E =

ECP /E-C-P/ n.

See spam and velveeta.

Node:ed, Next:egosurf, Previous:ECP, Up:= E =

ed n.

"ed is the standard text editor." Line taken from original the Unix manual page on ed, an ancient line-oriented editor that is by now used only by a few Real Programmers, and even then only for batch operations. The original line is sometimes uttered near the beginning of an emacs vs. vi holy war on Usenet, with the (vain) hope to quench the discussion before it really takes off. Often followed by a standard text describing the many virtues of ed (such as the small memory footprint on a Timex Sinclair, and the consistent (because nearly non-existent) user interface).

Node:egosurf, Next:eighty-column mind, Previous:ed, Up:= E =

egosurf vi.

To search the net for your name or links to your web pages. Perhaps connected to long-established SF-fan slang `egoscan', to search for one's name in a fanzine.

Node:eighty-column mind, Next:El Camino Bignum, Previous:egosurf, Up:= E =

eighty-column mind n.

[IBM] 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 1402 and 1622 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 was thought by most hackers to dominate IBM's customer base and its thinking. This only began to change in the mid-1990s when IBM began to reinvent itself after the triumph of the killer micro. See IBM, fear and loathing, card walloper. A copy of "The Last Bug" lives on the the GNU site at http://www.gnu.org/fun/jokes/last.bug.html.

Node:El Camino Bignum, Next:elder days, Previous:eighty-column mind, Up:= E =

El Camino Bignum /el' k*-mee'noh big'nuhm/ n.

The road mundanely called El Camino Real, running along San Francisco peninsula. It originally extended all the way down to Mexico City; many portions of the old road 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 in 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 seven 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.)

[GLS has since let slip that the unnamed hacker in this story was in fact himself --ESR]

In recent years, the synonym `El Camino Virtual' has been reported as an alternate at IBM and Amdahl sites in the Valley. Mathematically literate hackers in the Valley have also been heard to refer to some major cross-street intersecting El Camino Real as "El Camino Imaginary". One popular theory is that the intersection is located near Moffett Field - where they keep all those complex planes.

Node:elder days, Next:elegant, Previous:El Camino Bignum, Up:= E =

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 and Great Worm.

Node:elegant, Next:elephantine, Previous:elder days, Up:= E =

elegant adj.

[common; from mathematical usage] Combining simplicity, power, and a certain ineffable grace of design. Higher praise than `clever', `winning', or even cuspy.

The French aviator, adventurer, and author Antoine de Saint-Exupéry, probably best known for his classic children's book "The Little Prince", was also an aircraft designer. He gave us perhaps the best definition of engineering elegance when he said "A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away."

Node:elephantine, Next:elevator controller, Previous:elegant, Up:= E =

elephantine adj.

Used of programs or systems that are both conspicuous hogs (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.

Node:elevator controller, Next:elite, Previous:elephantine, Up:= E =

elevator controller n.

An 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.

Node:elite, Next:ELIZA effect, Previous:elevator controller, Up:= E =

elite adj.

Clueful. Plugged-in. One of the cognoscenti. Also used as a general positive adjective. This term is not actually native hacker slang; it is used primarily by crackers and warez d00dz, for which reason hackers use it only with heavy irony. The term used to refer to the folks allowed in to the "hidden" or "privileged" sections of BBSes in the early 1980s (which, typically, contained pirated software). Frequently, early boards would only let you post, or even see, a certain subset of the sections (or `boards') on a BBS. Those who got to the frequently legendary `triple super secret' boards were elite. Misspellings of this term in warez d00dz style abound; the forms `eleet', and `31337' (among others) have been sighted.

A true hacker would be more likely to use `wizardly'. Oppose lamer.

Node:ELIZA effect, Next:elvish, Previous:elite, Up:= E =

ELIZA effect /*-li:'z* *-fekt'/ n.

[AI community] 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 by Joseph Weizenbaum, which simulated a Rogerian psychotherapist 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. Sources for a clone of the original Eliza are available at ftp://ftp.cc.utexas.edu/pub/AI_ATTIC/Programs/Classic/Eliza/Eliza.c.

Node:elvish, Next:EMACS, Previous:ELIZA effect, Up:= E =

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 intrigued 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öcklin', an art-Noveau display font.

Node:EMACS, Next:email, Previous:elvish, Up:= E =

EMACS /ee'maks/ n.

[from Editing MACroS] The ne plus ultra of hacker editors, a programmable text editor with an entire LISP system inside it. It was originally written by Richard Stallman in TECO under ITS at the MIT AI lab; AI Memo 554 described it as "an advanced, self-documenting, customizable, extensible real-time display editor". It has since been reimplemented any number of times, by various hackers, and versions exist that run under most major operating systems. Perhaps the most widely used version, also written by Stallman and now called "GNU EMACS" or GNUMACS, runs principally under Unix. (Its close relative XEmacs is the second most popular version.) It includes facilities to run compilation subprocesses and send and receive mail or news; many hackers spend up to 80% of their tube time inside it. Other variants include GOSMACS, CCA EMACS, UniPress EMACS, Montgomery EMACS, jove, epsilon, and MicroEMACS. (Though we use the original all-caps spelling here, it is nowadays very commonly `Emacs'.)

Some EMACS 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' (from when that was a lot of core), `Eventually malloc()s All Computer Storage', and `EMACS Makes A Computer Slow' (see recursive acronym). See also vi.

Node:email, Next:emoticon, Previous:EMACS, Up:= E =

email /ee'mayl/

(also written `e-mail' and `E-mail') 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.