U

u-: //, pref.

Written shorthand for micro-; techspeak when applied to metric units, jargon when used otherwise. Derived from the Greek letter µ the first letter of “micro” (and which letter looks a lot like the English letter “u”).

UBD: /U·B·D/, n.

[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, PBD; see also brain-damaged.

UBE: //, n.

[abbrev., Unsolicited Bulk Email] A widespread, more formal term for email UCE. The UBE term recognizes that spam is uttered by nonprofit and advocacy groups whose motives are not commercial.

ubergeek: /oo´ber·geek/, n.

[common; often spelled with initial ü; from German über + geek] Almost synonymous with demigod; used as a compliment of someone regarded as a paragon of geek achievement and virtue. Has partially replaced earlier demigod.

UCE: //, n.

[abbrev., Unsolicited Commercial Email] A widespread, more formal term for email spam. Compare UBE, which may be superseding it.

UDP: /U·D·P/, v., n.

[Usenet] Abbreviation for Usenet Death Penalty. Common (probably now more so than the full form), and frequently verbed. Compare IDP.

UN*X: //, n.

Used to refer to the Unix operating system (a trademark of AT&T, then of Novell, then of Unix Systems Laboratories, then of the Open Group; the source code parted company with it after Novell and was owned by SCO, which was acquired by Caldera) in writing, but avoiding the need for the ugly ™ typography (see also (TM)). Also used to refer to any or all varieties of Unixoid operating systems. Ironically, lawyers now say that the requirement for the trademark 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 splat out.

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: //, adj.

[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 (and, it must be admitted, occasionally turning a molehill into a mountain, or a mountain into a tectonic plate). See WOMBAT, toy problem, oppose interesting.

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: //, n.

[ITS] According to a conspiracy theory long popular among 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.)

If there was ever such a conspiracy, it got thoroughly out of the plotters’ control after 1990. AT&T sold its Unix operation to Novell around the same time Linux and other free-Unix distributions were beginning to make noise.

Unix weenie: //, n.

[ITS]

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 Unix conspiracy. See also weenie.

Unix: /yoo´niks/, n.

[In the authors’ words, “A weak pun on Multics”; very early on it was “UNICS”] (also “UNIX”) An interactive timesharing system 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. By 1991, Unix had become the most widely used multiuser general-purpose operating system in the world – and since 1996 the variant called Linux has been at the cutting edge of the open source movement. Many people consider the success of Unix 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, Linux.

Archetypal hackers ken (left) and dmr (right).
(It would I think be far more accurate and helpful
to refer to these two as pioneering hackers, which they most certainly were.
Calling them ‘archetypal’ tends also to say indirectly ‘no women or men who
don’t want to look like survivalists or lost 60s hippies need apply’ which
doesn’t strike me as quite the message ESR was going for.
But then again, maybe it was. Women are not integrated into this
dictionary so much as shoehorned in awkwardly with an implied perpetual
mumble of ‘Computers are for boys!’)

 

Some people are confused over whether this word is appropriately “UNIX” or “Unix”; both forms are common, and used interchangeably. Dennis Ritchie says that the “UNIX” spelling originally happened in CACM’s 1974 paper The UNIX Time-Sharing System because “we had a new typesetter and troff had just been invented and we were intoxicated by being able to produce small caps.” Later, dmr tried to get the spelling changed to “Unix” in a couple of Bell Labs papers, on the grounds that the word is not acronymic. He failed, and eventually (his words) “wimped out” on the issue. So, while the trademark today is “UNIX”, both capitalizations are grounded in ancient usage; the Jargon File uses “Unix” in deference to dmr’s wishes.

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 unixisms 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-protect: //, n.

[MIT: from the name of a LISP operator] 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.”

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 or C++ 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.”

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 system near you (especially a smaller or peripheral “client” system) to one further away from you (especially a larger or central “host” system). A transfer in the other direction is, of course, called a download

2. [speculatively] To move the essential patterns and algorithms that make up one’s mind from one’s brain into a computer. Those who are convinced that such patterns and algorithms capture the complete essence of the self view this prospect with pleasant anticipation.

upstream: //, adj.

[common] Towards the original author(s) or maintainer(s) of a project. Used in connection with software that is distributed both in its original source form and in derived, adapted versions through a distribution (like the Debian version of Linux or one of the BSD ports) that has component maintainers for each of their parts. When a component maintainer receives a bug report or patch, he may choose to retain the patch as a porting tweak to the distribution’s derivative of the project, or to pass it upstream to the project’s maintainer. The antonym “downstream” is rare.

upthread: //, adv.

Earlier in the discussion (see thread), i.e., “above”. “As Joe pointed out upthread...” See also followup.

uptime: //, n.

Technically, a machine’s time since last reboot; jargonically, how long a hacker has gone without sleep. “What’s your uptime?” “Oh, about 28 hours so far, but I think I can probably do another 12.” This is, of course, a reference to the uptime command and the pride with which most Unix types note how long their computers go without reboots. Uptime is a testament to the stability of the OS and the stamina of the hacker.

urchin: //, n.

See munchkin.

URL: /U·R·L/, /erl/, n.

Uniform Resource Locator, an address widget that identifies a document or resource on the World Wide Web. This entry is here primarily to record the fact that the term is commonly pronounced both /erl/, and /U-R-L/ (the latter predominates in more formal contexts).

Usenet Death Penalty: //, n.

[Usenet] A sanction against sites that habitually spew Usenet spam. This can be either passive or active. A passive UDP refers to the dropping of all postings by a particular domain so as to inhibit propagation. An active UDP refers to third-party cancellation of all postings by the UDPed domain. A partial UDP is one which applies only to certain newsgroups or hierarchies in Usenet. Compare Internet Death Penalty, with which this term is sometimes confused.

Usenet: /yoos´net/, /yooz´net/, n.

[from “Users’ Network”; the original spelling was USENET, but the mixed-case form is now widely preferred] 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 and the University of North Carolina, it has swiftly grown to become international in scope and is now probably the largest decentralized information utility in existence. As of late 2002, it hosts over 100,000 newsgroups and an unguessably huge volume of new technical articles, news, discussion, chatter, and flamage every day (and that leaves out the graphics).

By the year the Internet hit the mainstream (1994) the original UUCP transport for Usenet was fading out of use – almost all Usenet connections were over Internet links. A lot of newbies and journalists began to refer to “Internet newsgroups” as though Usenet was and always had been just another Internet service. This ignorance greatly annoys experienced Usenetters.

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

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 lusers. The users are looked down on by hackers to some extent 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.

userland: //, n.

Anywhere outside the kernel. “That code belongs in userland.” This term has been in common use among Unix kernel hackers since at least 1985, and may have have originated in that community. The earliest sighting was reported from the usenet group net.unix-wizards.

Utah teapot, the: //, n.

This object is historically one of the first complex 3D models to be rendered in computer graphics. It consisted of about 110 vertices, and was generated by Martin Newell in 1974 using hand-drawn Bezier curves, based on a real teapot that he and his wife had bought. This model served as a basis for comparing various 3D rendering methodologies for lighting, textures, bump-mapping, etc. By the standards of 2002, the model is trivial to render and thus is often not suited to demonstrate the complexity of modern research. Despite this, the tea pot still appears, now and then, in recent papers. More on the teapot’s history lives at The History Of The Teapot. Compare Stanford Bunny

UTSL: //, n.

[Unix] On-line acronym for “Use the Source, Luke” (a pun on Obi-Wan Kenobi’s “Use the Force, Luke!” in Star Wars) – analogous to RTFS (sense 1), but more polite. This is a common way of suggesting that someone would be better 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 on Usenet that haven’t attracted elder days, everyone running Unix had source. After 1978, AT&T’s policy tightened up, so this objurgation was in theory 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) were so ubiquitous that one could utter it at almost anyone on the network without concern.

Nowadays, free Unix clones have become widely enough distributed that anyone can read source legally. The most widely distributed is certainly Linux, with variants of the NET/2 and 4.4BSD distributions running second. Cheap commercial Unixes with source such as BSD/OS are accelerating this trend.

UUOC: //, n.

[from the comp.unix.shell group on Usenet] Stands for “Useless Use of cat”; the reference is to the Unix command cat(1), not the feline animal. As received wisdom on comp.unix.shell observes, “The purpose of cat is to concatenate (or ‘catenate’) files. If it’s only one file, concatenating it with nothing at all is a waste of time, and costs you a process.” Nevertheless one sees people doing


cat file | some_command and its args ...
 

instead of the equivalent and cheaper


<file some_command and its args ...

or (equivalently and more classically)


some_command and its args ... <file
 

Since 1995, occasional awards for UUOC have been given out, usually by Perl luminary Randal L. Schwartz. There is a web page devoted to this and other similar awards.


Previous | Next | Found Subjects | Moonspeaker