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 neither compete for access to nor understand any idiosyncrasies of 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 (1993) 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 happens 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.
dark-side hacker n. A criminal or malicious hacker; a cracker. From George Lucas's Darth Vader, "seduced by the dark side of the Force". The implication that hackers form a sort of elite of technological Jedi Knights is intended. Oppose samurai.
Datamation /day`t*-may'sh*n/ n. A magazine that many hackers assume all suits 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, and Ed Post's "Real Programmers Don't Use Pascal" ten years later, but it has since become much more exclusively suit-oriented and boring.
DAU /dow/ [German Fidonet] n. German acronym for D"ummster Anzunehmender User (stupidest imaginable user). From the engineering-slang GAU for Grösster Anzunehmender Unfall, worst foreseeable accident, esp. of a LNG tank farm plant or something with similarly disastrous consequences. In popular German, GAU is used only to refer to worst-case nuclear acidents such as a core meltdown. See cretin, fool, loser and weasel.
day mode n. See phase (sense 1). Used of people only.
dd /dee-dee/ [UNIX: from IBM JCL] vt. Equivalent to cat or BLT. Originally the name of a UNIX copy command with special options suitable for block-oriented devices; it was 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 an elaborate DD `Dataset Definition' specification for I/O devices); 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). The term has been displaced by BLT or simple English `copy'.
DDT /D-D-T/ n.
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 abbreviation.
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.
(The `tape' referred to was, incidentally, not magnetic but paper.)
Sadly, this quotation was removed from later editions of the
handbook after the suits took over and DEC became much more
`businesslike'.
de-rezz /dee-rez'/ [from `de-resolve' via the movie "Tron"] (also `derez')
dead adj.
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. (Sometimes it simply means that an *extremely* defensive programmer has inserted can't happen tests which really can't happen --- yet.) 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.
deadly embrace n. Same as deadlock, though usually used only when exactly two processes are involved. This is the more popular term in Europe, while deadlock predominates in the United States.
death code n. A routine whose job is to set everything in the computer --- registers, memory, flags, everything --- to zero, including that portion of memory where it is running; its last act is to stomp on its own "store zero" instruction. Death code isn't very useful, but writing it is an interesting hacking challenge on architectures where the instruction set makes it possible, such as the PDP-8 (it has also been done on the DG Nova).
Perhaps the ultimate death code is on the TI 990 series, where all registers are actually in RAM, and the instruction "store immediate 0" has the opcode "0". The PC will immediately wrap around core as many times as it can until a user hits HALT. Any empty memory location is death code. Worse, the manufacturer recommended use of this instruction in startup code (which would be in ROM and therefore survive).
Death Star [from the movie "Star Wars"]
DEC n. Digital Equipment Corporation. Before the killer micro revolution of the late 1980s, hackerdom was closely symbiotic with DEC's pioneering timesharing machines. The first of the group of cultures described by this lexicon nucleated around the PDP-1 (see TMRC. Subsequently, the PDP-6, PDP-10, PDP-20, PDP-11 and VAX were all foci of large and important hackerdoms, and DEC machines long dominated the ARPANET and Internet machine population. DEC was the technological leader of the minicomputer era (roughly 1967 to 1987), but its failure to embrace microcomputers and UNIX early cost it heavily in profits and prestige after silicon got cheap. However, the microprocessor design tradition owes a heavy debt to the PDP-11 instruction set, and every one of the major general-purpose microcomputer OSs so far (CP/M, MS-DOS, UNIX, OS/2) were either genetically descended from a DEC OS, or incubated on DEC hardware, or both. Accordingly, DEC is still regarded with a certain wry affection even among many hackers too young to have grown up on DEC machines. The contrast with IBM is instructive.
dec /dek/ v. Verbal (and only rarely written) shorthand for decrement, i.e. `decrease by one'. Especially used by assembly programmers, as many assembly languages have a `dec' mnemonic. Antonym: inc.
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.
decay [from nuclear physics] n.,vi. An automatic conversion which is applied to most array-valued expressions in C; they `decay into' pointer-valued expressions pointing to the array's first element. This term is borderline techspeak, but is not used in the official standard for the language.
DEChead /dek'hed/ n.
deckle /dek'l/ [from dec- and nybble; the original spelling seems to have been `decle'] n. Two nickles; 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.
DED /D-E-D/ n. Dark-Emitting Diode (that is, a burned-out LED). Compare SED, LER, write-only memory. In the early 1970s both Signetics and Texas instruments released DED spec sheets as AFJs (suggested uses included "as a power-off indicator").
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 neither generally published nor 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.
defenestration [from the traditional Czechoslovakian method of assassinating prime ministers, via SF fandom] n.
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 linting. Confusingly, this process is also referred to as `linting' code.
delta n.
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']
demo mode [Sun] n.
demon n.
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. This term appears with distressing frequency in standards documents when the committees writing the documents realize that large amounts of extant (and presumably happily working) code depend on the feature(s) that have passed out of favor. See also dusty deck.
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 the same thing 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.
despew /d*-spyoo'/ [USENET] v. To automatically generate a large amount of garbage to the net, esp. from an automated posting program gone wild. See ARMM.
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, ISBN 0-201-06196-1) --- 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; typically, they cannot even boot themselves without help (in the form of some kind of breath-of-life packet) from the server.
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. Compare spelling flame.
die v. Syn. crash. Unlike crash, which is used primarily of hardware, this verb is used of both hardware and software. See also go flatline, casters-up mode.
die horribly v. The software equivalent of crash and burn, and the preferred emphatic form of die. "The converter choked on an FF in its input and died horribly".
diff /dif/ n.
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. the heavy-duty metal-cutting version, 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.
dink /dink/ adj. 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 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. See macdink.
dinosaur n.
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 in 1991 AT&T absorbed NCR. More such earth-shaking unions of doomed giants seem inevitable.
dirtball [XEROX PARC] n. A small, perhaps struggling outsider; not in the major or even the minor leagues. For example, "Xerox is not a dirtball company".
[Outsiders often observe in the PARC culture an institutional arrogance which usage of this term exemplifies. The brilliance and scope of PARC's contributions to computer science have been such that this superior attitude is not much resented. --- ESR]
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 (these are collectively known as power hits).
disclaimer n. [USENET] n. Statement ritually appended to many USENET postings (sometimes automatically, by the posting software) reiterating the fact (which should be obvious, but is easily forgotten) that the article reflects its author's opinions and not necessarily those of the organization running the machine through which the article entered the network.
Discordianism /dis-kor'di-*n-ism/ n. The veneration of Eris, a.k.a. Discordia; widely popular among hackers. Discordianism was popularized by Robert Shea and Robert Anton Wilson's novel "Illuminatus!" 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 Religion under 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 machines).
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. The algorithm starts by printing any N consecutive words (or letters) in the text. Then at every step it searches for any random occurrence in the original text of the last N words (or letters) already printed and then prints 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.
disusered adj. [USENET] Said of a person whose account on a computer has been removed, esp. for cause rather than through normal attrition. "He got disusered when they found out he'd been cracking through the school's Internet access." The verbal form `disuser' is live but less common. Both usages probably derive from the DISUSER account status flag on VMS; setting it disables the account.
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' (i.e., 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 predilection is "You can't grep dead trees". See drool-proof paper, verbiage, treeware.
dodgy adj. Syn. with flaky. Preferred outside the U.S.
dogpile [USENET: prob. fr. mainstream "puppy pile"] v. When many people post unfriendly responses in short order to a single posting, they are sometimes said to "dogpile" or "dogpile on" the person to whom they're responding. For example, when a religious missionary posts a simplistic appeal to alt.atheism, he can expect to be dogpiled.
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".]
domainist /doh-mayn'ist/ adj.
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.
dongle-disk /don'gl disk/ n. A special floppy disk that is required in order to perform some task. Some contain special coding that allows an application to identify it uniquely, others *are* special code that does something that normally-resident programs don't or can't. (For example, AT&T's "Unix PC" would only come up in root mode with a special boot disk.) Also called a `key disk'. See dongle.
donuts n.obs. A collective noun for any set of memory bits. This usage 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 that is not visible by default 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. (Therefore, dot files tend to creep --- with every nontrivial application program defining at least one, a user's home directory can be filled with scores of dot files, of course without the user's really being aware of it.) See also profile (sense 1), 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 0-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.
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 `down' and the reverse `up' 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.
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 one last person 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. Hackish 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 suits 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. Folklore had it that PRIME adopted the reversed-8-bit convention in order to save 25 cents per serial line per machine; PRIME old-timers, on the other hand, claim they inherited the disease from Honeywell via customer NASA's compatibility requirements and struggled heroically to cure it. Whoever was responsible, this probably qualifies as one of the most cretinous design tradeoffs ever made. See meta bit. A few other machines have exhibited similar brain damage.
DRECNET /drek'net/ [from Yiddish/German `dreck', meaning filth] 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.
droid [from `android', SF terminology for a humanoid robot of essentially biological (as opposed to mechanical/electronic) construction] n. A person (esp. a low-level bureaucrat or service-business employee) exhibiting most of the following characteristics: (a) naive trust in the wisdom of the parent organization or `the system'; (b) a blind-faith propensity to believe obvious nonsense emitted by authority figures (or computers!); (c) a rule-governed mentality, one unwilling or unable to look beyond the `letter of the law' in exceptional situations; (d) a paralyzing fear of official reprimand or worse if Procedures are not followed No Matter What; and (e) no interest in doing anything above or beyond the call of a very narrowly-interpreted duty, or in particular 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; problems arise 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, sense 2.
drop-outs n.
drugged adj. (also `on drugs')
drum adj, n. 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, A Real Programmer" in Appendix A.
drunk mouse syndrome (also `mouse on drugs') 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.
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."
[For maximal obscurity, the outermost pair of braces above could be actually be removed --- GLS]
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.
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.
dumpster diving /dump'-ster di:'-ving/ n.
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 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.
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.
DWIM /dwim/ [acronym, `Do What I Mean']
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.
dynner /din'r/ 32 bits, by analogy with nybble and byte. Usage: rare and extremely silly. See also playte, tayste, crumb.