The Jargon File, Version 2.9.10, 01 Jul 1992
Part 14
: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; 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.
: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}.
: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. 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 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 (early 1991) AT&T is attempting to recover from a disastrously bad first six years in the hardware industry by absorbing 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 hit}s).
: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 `{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 {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 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, [email protected] 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}.
[Note: in early 1992, advertising copy from Rainbow Technologies (a manufacturer of dongles) included a claim that the word derived from "Don Gall", allegedly the inventor of the device. The company's receptionist will cheerfully tell you that the story is a myth invented for the ad copy. Nevertheless, I expect it to haunt my life as a lexicographer for at least the next ten years. ---ESR]
:dongle-disk: /don'gl disk/ n. See {dongle}; a `dongle-disk' is a floppy disk which 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'.
: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 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 {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}.
: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'.