= 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}.