Node:rabbit job, Next:, Previous:QWERTY, Up:= R =

rabbit job n.

[Cambridge] A batch job that does little, if any, real work, but creates one or more copies of itself, breeding like rabbits. Compare wabbit, fork bomb.


Node:rain dance, Next:, Previous:rabbit job, Up:= R =

rain dance n.

1. Any ceremonial action taken to correct a hardware problem, with the expectation that nothing will be accomplished. This especially applies to reseating printed circuit boards, reconnecting cables, etc. "I can't boot up the machine. We'll have to wait for Greg to do his rain dance." 2. Any arcane sequence of actions performed with computers or software in order to achieve some goal; the term is usually restricted to rituals that include both an incantation or two and physical activity or motion. Compare magic, voodoo programming, black art, cargo cult programming, wave a dead chicken; see also casting the runes.


Node:rainbow series, Next:, Previous:rain dance, Up:= R =

rainbow series n.

Any of several series of technical manuals distinguished by cover color. The original rainbow series was the NCSC security manuals (see Orange Book, crayola books); the term has also been commonly applied to the PostScript reference set (see Red Book, Green Book, Blue Book, White Book). Which books are meant by "`the' rainbow series" unqualified is thus dependent on one's local technical culture.


Node:random, Next:, Previous:rainbow series, Up:= R =

random adj.

1. Unpredictable (closest to mathematical definition); weird. "The system's been behaving pretty randomly." 2. Assorted; undistinguished. "Who was at the conference?" "Just a bunch of random business types." 3. (pejorative) Frivolous; unproductive; undirected. "He's just a random loser." 4. Incoherent or inelegant; poorly chosen; not well organized. "The program has a random set of misfeatures." "That's a random name for that function." "Well, all the names were chosen pretty randomly." 5. In no particular order, though deterministic. "The I/O channels are in a pool, and when a file is opened one is chosen randomly." 6. Arbitrary. "It generates a random name for the scratch file." 7. Gratuitously wrong, i.e., poorly done and for no good apparent reason. For example, a program that handles file name defaulting in a particularly useless way, or an assembler routine that could easily have been coded using only three registers, but redundantly uses seven for values with non-overlapping lifetimes, so that no one else can invoke it without first saving four extra registers. What randomness! 8. n. A random hacker; used particularly of high-school students who soak up computer time and generally get in the way. 9. n. Anyone who is not a hacker (or, sometimes, anyone not known to the hacker speaking); the noun form of sense 2. "I went to the talk, but the audience was full of randoms asking bogus questions". 10. n. (occasional MIT usage) One who lives at Random Hall. See also J. Random, some random X. 11. [UK] Conversationally, a non sequitur or something similarly out-of-the-blue. As in: "Stop being so random!" This sense equates to `hatstand', taken from the Viz comic character "Roger Irrelevant - He's completely Hatstand."


Node:Random Number God, Next:, Previous:random, Up:= R =

Random Number God

[rec.games.roguelike.angband; often abbreviated `RNG'] The malign force which lurks behind the random number generator in Angband (and by extension elsewhere). A dark god that demands sacrifices and toys with its victims. "I just found a really great item; I suppose the RNG is about to punish me..." Apparently, Angband's random number generator occasionally gets locked in a repetition, so you get something with a 3% chance happening 8 times in a row. Improbable, but far too common to be pure chance. Compare Shub-Internet.


Node:random numbers, Next:, Previous:Random Number God, Up:= R =

random numbers n.

When one wishes to specify a large but random number of things, and the context is inappropriate for N, certain numbers are preferred by hacker tradition (that is, easily recognized as placeholders). These include the following:

17
Long described at MIT as `the least random number'; see 23.
23
Sacred number of Eris, Goddess of Discord (along with 17 and 5).
42
The Answer to the Ultimate Question of Life, the Universe, and Everything ("what is 6 times 9", correct in base 13). (Note that this answer is completely fortuitous. :-))
69
From the sexual act. This one was favored in MIT's ITS culture.
105
69 hex = 105 decimal, and 69 decimal = 105 octal.
666
The Number of the Beast.

For further enlightenment, study the "Principia Discordia", "The Hitchhiker's Guide to the Galaxy", "The Joy of Sex", and the Christian Bible (Revelation 13:18). See also Discordianism or consult your pineal gland. See also for values of.


Node:randomness, Next:, Previous:random numbers, Up:= R =

randomness n.

1. An inexplicable misfeature; gratuitous inelegance. 2. A hack or crock that depends on a complex combination of coincidences (or, possibly, the combination upon which the crock depends for its accidental failure to malfunction). "This hack can output characters 40-57 by putting the character in the four-bit accumulator field of an XCT and then extracting six bits -- the low 2 bits of the XCT opcode are the right thing." "What randomness!" 3. Of people, synonymous with `flakiness'. The connotation is that the person so described is behaving weirdly, incompetently, or inappropriately for reasons which are (a) too tiresome to bother inquiring into, (b) are probably as inscrutable as quantum phenomena anyway, and (c) are likely to pass with time. "Maybe he has a real complaint, or maybe it's just randomness. See if he calls back."

Despite the negative connotations jargon uses of this term have, it is worth noting that randomness can actually be a valuable resource, very useful for applications in cryptography and elsewhere. Computers are so thoroughly deterministic that they have a hard time generating high-quality randomess, so hackers have sometimes felt the need to built special-purpose contraptions for this purpose alone. One well-known website offers random bits generated by radioactive decay. Another derives random bits from images of Lava Lite lamps. (Hackers invariably find the latter hilarious. If you have to ask why, you'll never get it.)


Node:rape, Next:, Previous:randomness, Up:= R =

rape vt.

1. To screw someone or something, violently; in particular, to destroy a program or information irrecoverably. Often used in describing file-system damage. "So-and-so was running a program that did absolute disk I/O and ended up raping the master directory." 2. To strip a piece of hardware for parts. 3. [CMU/Pitt] To mass-copy files from an anonymous ftp site. "Last night I raped Simtel's dskutl directory."


Node:rare mode, Next:, Previous:rape, Up:= R =

rare mode adj.

[Unix] CBREAK mode (character-by-character with interrupts enabled). Distinguished from raw mode and cooked mode; the phrase "a sort of half-cooked (rare?) mode" is used in the V7/BSD manuals to describe the mode. Usage: rare.


Node:raster blaster, Next:, Previous:rare mode, Up:= R =

raster blaster n.

[Cambridge] Specialized hardware for bitblt operations (a blitter). Allegedly inspired by `Rasta Blasta', British slang for the sort of portable stereo Americans call a `boom box' or `ghetto blaster'.


Node:raster burn, Next:, Previous:raster blaster, Up:= R =

raster burn n.

Eyestrain brought on by too many hours of looking at low-res, poorly tuned, or glare-ridden monitors, esp. graphics monitors. See terminal illness.


Node:rasterbation, Next:, Previous:raster burn, Up:= R =

rasterbation n.

[portmanteau: raster + masturbation] The gratuitous use of computer generated images and effects in movies and graphic art which would have been better without them. Especially employed as a term of abuse by Photoshop/GIMP users and graphic artists.


Node:rat belt, Next:, Previous:rasterbation, Up:= R =

rat belt n.

A cable tie, esp. the sawtoothed, self-locking plastic kind that you can remove only by cutting (as opposed to a random twist of wire or a twist tie or one of those humongous metal clip frobs). Small cable ties are `mouse belts'.


Node:rat dance, Next:, Previous:rat belt, Up:= R =

rat dance n.

[From the Dilbert comic strip of November 14, 1995] A hacking run that produces results which, while superficially coherent, have little or nothing to do with its original objectives. There are strong connotations that the coding process and the objectives themselves were pretty random. (In the original comic strip, the Ratbert is invited to dance on Dilbert's keyboard in order to produce bugs for him to fix, and authors a Web browser instead.) Compare Infinite-Monkey Theorem.

This term seems to have become widely recognized quite rapidly after the original strip, a fact which testifies to Dilbert's huge popularity among hackers. All too many find the perverse incentives and Kafkaesque atmosphere of Dilbert's mythical workplace reflective of their own experiences.


Node:ratio site, Next:, Previous:rat dance, Up:= R =

ratio site

[warez d00dz] An FTP site storing pirated files where one must first upload something before being able to download. There is a ratio, based on bytes or files count, between the uploads and download. For instance, on a 2:1 site, to download a 4 Mb file, one must first upload at least 2 Mb of files. The hotter the contents of the server are, the smaller the ratio is. More often than not, the server refuses uploads because its disk is full, making it useless for downloading - or the connection magically breaks after one has uploaded a large amount of files, just before the downloading phase begins. See also banner site, leech mode.


Node:rave, Next:, Previous:ratio site, Up:= R =

rave vi.

[WPI] 1. To persist in discussing a specific subject. 2. To speak authoritatively on a subject about which one knows very little. 3. To complain to a person who is not in a position to correct the difficulty. 4. To purposely annoy another person verbally. 5. To evangelize. See flame. 6. Also used to describe a less negative form of blather, such as friendly bullshitting. `Rave' differs slightly from flame in that `rave' implies that it is the persistence or obliviousness of the person speaking that is annoying, while flame implies somewhat more strongly that the tone or content is offensive as well.


Node:rave on!, Next:, Previous:rave, Up:= R =

rave on! imp.

Sarcastic invitation to continue a rave, often by someone who wishes the raver would get a clue but realizes this is unlikely.


Node:ravs, Next:, Previous:rave on!, Up:= R =

ravs /ravz/, also `Chinese ravs' n.

[primarily MIT/Boston usage] Jiao-zi (steamed or boiled) or Guo-tie (pan-fried). A Chinese appetizer, known variously in the plural as dumplings, pot stickers (the literal translation of guo-tie), and (around Boston) `Peking Ravioli'. The term `rav' is short for `ravioli', and among hackers always means the Chinese kind rather than the Italian kind. Both consist of a filling in a pasta shell, but the Chinese kind includes no cheese, uses a thinner pasta, has a pork-vegetable filling (good ones include Chinese chives), and is cooked differently, either by steaming or frying. A rav or dumpling can be cooked any way, but a potsticker is always the pan-fried kind (so called because it sticks to the frying pot and has to be scraped off). "Let's get hot-and-sour soup and three orders of ravs." See also oriental food.


Node:raw mode, Next:, Previous:ravs, Up:= R =

raw mode n.

A mode that allows a program to transfer bits directly to or from an I/O device (or, under bogus operating systems that make a distinction, a disk file) without any processing, abstraction, or interpretation by the operating system. Compare rare mode, cooked mode. This is techspeak under Unix, jargon elsewhere.


Node:RBL, Next:, Previous:raw mode, Up:= R =

RBL /R-B-L/

Abbreviation: "Realtime Blackhole List". A service that allows people to blacklist sites for emitting spam, and makes the blacklist available in real time to electronic-mail transport programs that know how to use RBL so they can filter out mail from those sites. Drastic (and controversial) but effective. There is an RBL home page.


Node:rc file, Next:, Previous:RBL, Up:= R =

rc file /R-C fi:l/ n.

[Unix: from `runcom files' on the CTSS system 1962-63, via the startup script /etc/rc] Script file containing startup instructions for an application program (or an entire operating system), usually a text file containing commands of the sort that might have been invoked manually once the system was running but are to be executed automatically each time the system starts up. See also dot file, profile (sense 1).


Node:RE, Next:, Previous:rc file, Up:= R =

RE /R-E/ n.

Common spoken and written shorthand for regexp.


Node:read-only user, Next:, Previous:RE, Up:= R =

read-only user n.

Describes a luser who uses computers almost exclusively for reading Usenet, bulletin boards, and/or email, rather than writing code or purveying useful information. See twink, terminal junkie, lurker.


Node:README file, Next:, Previous:read-only user, Up:= R =

README file n.

Hacker's-eye introduction traditionally included in the top-level directory of a Unix source distribution, containing a pointer to more detailed documentation, credits, miscellaneous revision history, notes, etc. (The file may be named README, or READ.ME, or rarely ReadMe or readme.txt or some other variant.) In the Mac and PC worlds, software is not usually distributed in source form, and the README is more likely to contain user-oriented material like last-minute documentation changes, error workarounds, and restrictions. When asked, hackers invariably relate the README convention to the famous scene in Lewis Carroll's "Alice's Adventures In Wonderland" in which Alice confronts magic munchies labeled "Eat Me" and "Drink Me".


Node:real, Next:, Previous:README file, Up:= R =

real adj.

Not simulated. Often used as a specific antonym to virtual in any of its jargon senses.


Node:real estate, Next:, Previous:real, Up:= R =

real estate n.

May be used for any critical resource measured in units of area. Most frequently used of `chip real estate', the area available for logic on the surface of an integrated circuit (see also nanoacre). May also be used of floor space in a dinosaur pen, or even space on a crowded desktop (whether physical or electronic).


Node:real hack, Next:, Previous:real estate, Up:= R =

real hack n.

A crock. This is sometimes used affectionately; see hack.


Node:real operating system, Next:, Previous:real hack, Up:= R =

real operating system n.

The sort the speaker is used to. People from the BSDophilic academic community are likely to issue comments like "System V? Why don't you use a real operating system?", people from the commercial/industrial Unix sector are known to complain "BSD? Why don't you use a real operating system?", and people from IBM object "Unix? Why don't you use a real operating system?" Only MS-DOS is universally considered unreal. See holy wars, religious issues, proprietary, Get a real computer!


Node:Real Programmer, Next:, Previous:real operating system, Up:= R =

Real Programmer n.

[indirectly, from the book "Real Men Don't Eat Quiche"] A particular sub-variety of hacker: one possessed of a flippant attitude toward complexity that is arrogant even when justified by experience. The archetypal `Real Programmer' likes to program on the bare metal and is very good at same, remembers the binary opcodes for every machine he has ever programmed, thinks that HLLs are sissy, and uses a debugger to edit his code because full-screen editors are for wimps. Real Programmers aren't satisfied with code that hasn't been bummed into a state of tenseness just short of rupture. Real Programmers never use comments or write documentation: "If it was hard to write", says the Real Programmer, "it should be hard to understand." Real Programmers can make machines do things that were never in their spec sheets; in fact, they are seldom really happy unless doing so. A Real Programmer's code can awe with its fiendish brilliance, even as its crockishness appalls. Real Programmers live on junk food and coffee, hang line-printer art on their walls, and terrify the crap out of other programmers -- because someday, somebody else might have to try to understand their code in order to change it. Their successors generally consider it a Good Thing that there aren't many Real Programmers around any more. For a famous (and somewhat more positive) portrait of a Real Programmer, see "The Story of Mel" in Appendix A. The term itself was popularized by a letter to the editor in the July 1983 Datamation titled "Real Programmers Don't Use Pascal" by Ed Post, still circulating on Usenet and Internet in on-line form. Typing "Real Programmers Don't Use Pascal" into a web search engine should turn up a copy.


Node:Real Soon Now, Next:, Previous:Real Programmer, Up:= R =

Real Soon Now adv.

[orig. from SF's fanzine community, popularized by Jerry Pournelle's column in "BYTE"] 1. Supposed to be available (or fixed, or cheap, or whatever) real soon now according to somebody, but the speaker is quite skeptical. 2. When one's gods, fates, or other time commitments permit one to get to it (in other words, don't hold your breath). Often abbreviated RSN. Compare copious free time.


Node:real time, Next:, Previous:Real Soon Now, Up:= R =

real time

1. [techspeak] adj. Describes an application which requires a program to respond to stimuli within some small upper limit of response time (typically milli- or microseconds). Process control at a chemical plant is the canonical example. Such applications often require special operating systems (because everything else must take a back seat to response time) and speed-tuned hardware. 2. adv. In jargon, refers to doing something while people are watching or waiting. "I asked her how to find the calling procedure's program counter on the stack and she came up with an algorithm in real time."


Node:real user, Next:, Previous:real time, Up:= R =

real user n.

1. A commercial user. One who is paying real money for his computer usage. 2. A non-hacker. Someone using the system for an explicit purpose (a research project, a course, etc.) other than pure exploration. See user. Hackers who are also students may also be real users. "I need this fixed so I can do a problem set. I'm not complaining out of randomness, but as a real user." See also luser.


Node:Real World, Next:, Previous:real user, Up:= R =

Real World n.

1. Those institutions at which `programming' may be used in the same sentence as `FORTRAN', `COBOL', `RPG', `IBM', `DBASE', etc. Places where programs do such commercially necessary but intellectually uninspiring things as generating payroll checks and invoices. 2. The location of non-programmers and activities not related to programming. 3. A bizarre dimension in which the standard dress is shirt and tie and in which a person's working hours are defined as 9 to 5 (see code grinder). 4. Anywhere outside a university. "Poor fellow, he's left MIT and gone into the Real World." Used pejoratively by those not in residence there. In conversation, talking of someone who has entered the Real World is not unlike speaking of a deceased person. It is also noteworthy that on the campus of Cambridge University in England, there is a gaily-painted lamp-post which bears the label `REALITY CHECKPOINT'. It marks the boundary between university and the Real World; check your notions of reality before passing. This joke is funnier because the Cambridge `campus' is actually coextensive with the center of Cambridge town. See also fear and loathing, mundane, and uninteresting.


Node:reality check, Next:, Previous:Real World, Up:= R =

reality check n.

1. The simplest kind of test of software or hardware; doing the equivalent of asking it what 2 + 2 is and seeing if you get 4. The software equivalent of a smoke test. 2. The act of letting a real user try out prototype software. Compare sanity check.


Node:reality-distortion field, Next:, Previous:reality check, Up:= R =

reality-distortion field n.

An expression used to describe the persuasive ability of managers like Steve Jobs (the term originated at Apple in the 1980s to describe his peculiar charisma). Those close to these managers become passionately committed to possibly insane projects, without regard to the practicality of their implementation or competitive forces in the marketpace.


Node:reaper, Next:, Previous:reality-distortion field, Up:= R =

reaper n.

A prowler that GFRs files. A file removed in this way is said to have been `reaped'.


Node:recompile the world, Next:, Previous:reaper, Up:= R =

recompile the world

The surprisingly large amount of work that needs to be done as the result of any small but globally visible program change. "The world" may mean the entirety of some huge program, or may in theory refer to every program of a certain class in the entire known universe. For instance, "Add one #define to stdio.h, and you have to recompile the world." This means that any minor change to the standard-I/O header file theoretically mandates recompiling every C program in existence, even if only to verify that the change didn't screw something else up. In practice, you may not actually have to recompile the world, but the implication is that some human cleverness is required to figure out what parts can be safely left out.


Node:rectangle slinger, Next:, Previous:recompile the world, Up:= R =

rectangle slinger n.

See polygon pusher.


Node:recursion, Next:, Previous:rectangle slinger, Up:= R =

recursion n.

See recursion. See also tail recursion.


Node:recursive acronym, Next:, Previous:recursion, Up:= R =

recursive acronym n.

A hackish (and especially MIT) tradition is to choose acronyms/abbreviations that refer humorously to themselves or to other acronyms/abbreviations. The classic examples were two MIT editors called EINE ("EINE Is Not EMACS") and ZWEI ("ZWEI Was EINE Initially"). More recently, there is a Scheme compiler called LIAR (Liar Imitates Apply Recursively), and GNU (q.v., sense 1) stands for "GNU's Not Unix!" -- and a company with the name Cygnus, which expands to "Cygnus, Your GNU Support" (though Cygnus people say this is a backronym). See also mung, EMACS.


Node:Red Book, Next:, Previous:recursive acronym, Up:= R =

Red Book n.

1. Informal name for one of the four standard references on PostScript ("PostScript Language Reference Manual", Adobe Systems (Addison-Wesley, 1985; QA76.73.P67P67; ISBN 0-201-10174-2, or the 1990 second edition ISBN 0-201-18127-4); the others are known as the Green Book, the Blue Book, and the White Book (sense 2). 2. Informal name for one of the 3 standard references on Smalltalk ("Smalltalk-80: The Interactive Programming Environment" by Adele Goldberg (Addison-Wesley, 1984; QA76.8.S635G638; ISBN 0-201-11372-4); this too is associated with blue and green books). 3. Any of the 1984 standards issued by the CCITT eighth plenary assembly. These include, among other things, the X.400 email spec and the Group 1 through 4 fax standards. 4. The new version of the Green Book (sense 4) -- IEEE 1003.1-1990, a.k.a ISO 9945-1 -- is (because of the color and the fact that it is printed on A4 paper) known in the USA as "the Ugly Red Book That Won't Fit On The Shelf" and in Europe as "the Ugly Red Book That's A Sensible Size". 5. The NSA "Trusted Network Interpretation" companion to the Orange Book. 6. Nemeth, Snyder, Seebass, Hein; "Unix System Administration Handbook, Second Edition" (Prentice Hall PTR, New Jersey; 1995; QA76.76.063N45; ISBN 0-13-151051-7). See also book titles.


Node:red wire, Next:, Previous:Red Book, Up:= R =

red wire n.

[IBM] Patch wires installed by programmers who have no business mucking with the hardware. It is said that the only thing more dangerous than a hardware guy with a code patch is a softy with a soldering iron.... Compare blue wire, yellow wire, purple wire.


Node:regexp, Next:, Previous:red wire, Up:= R =

regexp /reg'eksp/ n.

[Unix] (alt. `regex' or `reg-ex') 1. Common written and spoken abbreviation for `regular expression', one of the wildcard patterns used, e.g., by Unix utilities such as grep(1), sed(1), and awk(1). These use conventions similar to but more elaborate than those described under glob. For purposes of this lexicon, it is sufficient to note that regexps also allow complemented character sets using ^; thus, one can specify `any non-alphabetic character' with [^A-Za-z]. 2. Name of a well-known PD regexp-handling package in portable C, written by revered Usenetter Henry Spencer <henry@zoo.toronto.edu>.


Node:register dancing, Next:, Previous:regexp, Up:= R =

register dancing n.

Many older processor architectures suffer from a serious shortage of general-purpose registers. This is especially a problem for compiler-writers, because their generated code needs places to store temporaries for things like intermediate values in expression evaluation. Some designs with this problem, like the Intel 80x86, do have a handful of special-purpose registers that can be pressed into service, providing suitable care is taken to avoid unpleasant side effects on the state of the processor: while the special-purpose register is being used to hold an intermediate value, a delicate minuet is required in which the previous value of the register is saved and then restored just before the official function (and value) of the special-purpose register is again needed.


Node:rehi, Next:, Previous:register dancing, Up:= R =

rehi

[IRC, MUD] "Hello again." Very commonly used to greet people upon returning to an IRC channel after channel hopping.


Node:reincarnation cycle of, Next:, Previous:rehi, Up:= R =

reincarnation, cycle of n.

See cycle of reincarnation.


Node:reinvent the wheel, Next:, Previous:reincarnation cycle of, Up:= R =

reinvent the wheel v.

To design or implement a tool equivalent to an existing one or part of one, with the implication that doing so is silly or a waste of time. This is often a valid criticism. On the other hand, automobiles don't use wooden rollers, and some kinds of wheel have to be reinvented many times before you get them right. On the third hand, people reinventing the wheel do tend to come up with the moral equivalent of a trapezoid with an offset axle.


Node:relay rape, Next:, Previous:reinvent the wheel, Up:= R =

relay rape n.

The hijacking of a third party's unsecured mail server to deliver spam.


Node:religion of CHI, Next:, Previous:relay rape, Up:= R =

religion of CHI /ki:/ n.

[Case Western Reserve University] Yet another hackish parody religion (see also Church of the SubGenius, Discordianism). In the mid-70s, the canonical "Introduction to Programming" courses at CWRU were taught in Algol, and student exercises were punched on cards and run on a Univac 1108 system using a homebrew operating system named CHI. The religion had no doctrines and but one ritual: whenever the worshipper noted that a digital clock read 11:08, he or she would recite the phrase "It is 11:08; ABS, ALPHABETIC, ARCSIN, ARCCOS, ARCTAN." The last five words were the first five functions in the appropriate chapter of the Algol manual; note the special pronunciations /obz/ and /ark'sin/ rather than the more common /ahbz/ and /ark'si:n/. Using an alarm clock to warn of 11:08's arrival was considered harmful.


Node:religious issues, Next:, Previous:religion of CHI, Up:= R =

religious issues n.

Questions which seemingly cannot be raised without touching off holy wars, such as "What is the best operating system (or editor, language, architecture, shell, mail reader, news reader)?", "What about that Heinlein guy, eh?", "What should we add to the new Jargon File?" See holy wars; see also theology, bigot.

This term is a prime example of ha ha only serious. People actually develop the most amazing and religiously intense attachments to their tools, even when the tools are intangible. The most constructive thing one can do when one stumbles into the crossfire is mumble Get a life! and leave -- unless, of course, one's own unassailably rational and obviously correct choices are being slammed.


Node:replicator, Next:, Previous:religious issues, Up:= R =

replicator n.

Any construct that acts to produce copies of itself; this could be a living organism, an idea (see meme), a program (see quine, worm, wabbit, fork bomb, and virus), a pattern in a cellular automaton (see life, sense 1), or (speculatively) a robot or nanobot. It is even claimed by some that Unix and C are the symbiotic halves of an extremely successful replicator; see Unix conspiracy.


Node:reply, Next:, Previous:replicator, Up:= R =

reply n.

See followup.


Node:restriction, Next:, Previous:reply, Up:= R =

restriction n.

A bug or design error that limits a program's capabilities, and which is sufficiently egregious that nobody can quite work up enough nerve to describe it as a feature. Often used (esp. by marketroid types) to make it sound as though some crippling bogosity had been intended by the designers all along, or was forced upon them by arcane technical constraints of a nature no mere user could possibly comprehend (these claims are almost invariably false).

Old-time hacker Joseph M. Newcomer advises that whenever choosing a quantifiable but arbitrary restriction, you should make it either a power of 2 or a power of 2 minus 1. If you impose a limit of 107 items in a list, everyone will know it is a random number -- on the other hand, a limit of 15 or 16 suggests some deep reason (involving 0- or 1-based indexing in binary) and you will get less flamage for it. Limits which are round numbers in base 10 are always especially suspect.


Node:retcon, Next:, Previous:restriction, Up:= R =

retcon /ret'kon/

[short for `retroactive continuity', from the Usenet newsgroup rec.arts.comics] 1. n. The common situation in pulp fiction (esp. comics or soap operas) where a new story `reveals' things about events in previous stories, usually leaving the `facts' the same (thus preserving continuity) while completely changing their interpretation. For example, revealing that a whole season of "Dallas" was a dream was a retcon. 2. vt. To write such a story about a character or fictitious object. "Byrne has retconned Superman's cape so that it is no longer unbreakable." "Marvelman's old adventures were retconned into synthetic dreams." "Swamp Thing was retconned from a transformed person into a sentient vegetable."

[This term is included because it is a good example of hackish linguistic innovation in a field completely unrelated to computers. The word `retcon' will probably spread through comics fandom and lose its association with hackerdom within a couple of years; for the record, it started here. --ESR]

[1993 update: some comics fans on the net now claim that retcon was independently in use in comics fandom before rec.arts.comics. In lexicography, nothing is ever simple. --ESR]


Node:RETI, Next:, Previous:retcon, Up:= R =

RETI v.

Syn. RTI


Node:retrocomputing, Next:, Previous:RETI, Up:= R =

retrocomputing /ret'-roh-k*m-pyoo'ting/ n.

Refers to emulations of way-behind-the-state-of-the-art hardware or software, or implementations of never-was-state-of-the-art; esp. if such implementations are elaborate practical jokes and/or parodies, written mostly for hack value, of more `serious' designs. Perhaps the most widely distributed retrocomputing utility was the pnch(6) or bcd(6) program on V7 and other early Unix versions, which would accept up to 80 characters of text argument and display the corresponding pattern in punched card code. Other well-known retrocomputing hacks have included the programming language INTERCAL, a JCL-emulating shell for Unix, the card-punch-emulating editor named 029, and various elaborate PDP-11 hardware emulators and RT-11 OS emulators written just to keep an old, sourceless Zork binary running.

A tasty selection of retrocomputing programs are made available at the Retrocomputing Museum, http://www.tuxedo.org/retro.


Node:return from the dead, Next:, Previous:retrocomputing, Up:= R =

return from the dead v.

To regain access to the net after a long absence. Compare person of no account.


Node:RFC, Next:, Previous:return from the dead, Up:= R =

RFC /R-F-C/ n.

[Request For Comment] One of a long-established series of numbered Internet informational documents and standards widely followed by commercial software and freeware in the Internet and Unix communities. Perhaps the single most influential one has been RFC-822 (the Internet mail-format standard). The RFCs are unusual in that they are floated by technical experts acting on their own initiative and reviewed by the Internet at large, rather than formally promulgated through an institution such as ANSI. For this reason, they remain known as RFCs even once adopted as standards.

The RFC tradition of pragmatic, experience-driven, after-the-fact standard writing done by individuals or small working groups has important advantages over the more formal, committee-driven process typical of ANSI or ISO. Emblematic of some of these advantages is the existence of a flourishing tradition of `joke' RFCs; usually at least one a year is published, usually on April 1st. Well-known joke RFCs have included 527 ("ARPAWOCKY", R. Merryman, UCSD; 22 June 1973), 748 ("Telnet Randomly-Lose Option", Mark R. Crispin; 1 April 1978), and 1149 ("A Standard for the Transmission of IP Datagrams on Avian Carriers", D. Waitzman, BBN STC; 1 April 1990). The first was a Lewis Carroll pastiche; the second a parody of the TCP-IP documentation style, and the third a deadpan skewering of standards-document legalese, describing protocols for transmitting Internet data packets by carrier pigeon (since actually implemented; see Appendix A). See also Infinite-Monkey Theorem.

The RFCs are most remarkable for how well they work -- they frequently manage to have neither the ambiguities that are usually rife in informal specifications, nor the committee-perpetrated misfeatures that often haunt formal standards, and they define a network that has grown to truly worldwide proportions.


Node:RFE, Next:, Previous:RFC, Up:= R =

RFE /R-F-E/ n.

1. [techspeak] Request For Enhancement (compare RFC). 2. [from `Radio Free Europe', Bellcore and Sun] Radio Free Ethernet, a system (originated by Peter Langston) for broadcasting audio among Sun SPARCstations over the ethernet.


Node:rib site, Next:, Previous:RFE, Up:= R =

rib site n.

[by analogy with backbone site] A machine that has an on-demand high-speed link to a backbone site and serves as a regional distribution point for lots of third-party traffic in email and Usenet news. Compare leaf site, backbone site.


Node:rice box, Next:, Previous:rib site, Up:= R =

rice box n.

[from ham radio slang] Any Asian-made commodity computer, esp. an 80x86-based machine built to IBM PC-compatible ISA or EISA-bus standards.


Node:Right Thing, Next:, Previous:rice box, Up:= R =

Right Thing n.

That which is compellingly the correct or appropriate thing to use, do, say, etc. Often capitalized, always emphasized in speech as though capitalized. Use of this term often implies that in fact reasonable people may disagree. "What's the right thing for LISP to do when it sees (mod a 0)? Should it return a, or give a divide-by-0 error?" Oppose Wrong Thing.


Node:rip, Next:, Previous:Right Thing, Up:= R =

rip v.

1. To extract the digital representation of a piece of music from an audio CD. Software that does this is often called a "CD ripper". 2. [Amiga hackers] To extract sound or graphics from a program that they have been compiled/assembled into, or which generates them at run-time. In the case of older Amiga games this entails searching through memory shortly after a reboot. This sense has been in use for many years and probably gave rise to the (now more common) sense 1.


Node:ripoff, Next:, Previous:rip, Up:= R =

ripoff n.

Synonym for chad, sense 1.


Node:RL, Next:, Previous:ripoff, Up:= R =

RL // n.

[MUD community] Real Life. "Firiss laughs in RL" means that Firiss's player is laughing. Compare meatspace; oppose VR.


Node:roach, Next:, Previous:RL, Up:= R =

roach vt.

[Bell Labs] To destroy, esp. of a data structure. Hardware gets toasted or fried, software gets roached. Probably derived from '70s and '80s drug slang; marijuana smokers used `roach' to refer to the unsmokable remnant of a joint, and to `roach' a joint was therefore to destroy it.


Node:robocanceller, Next:, Previous:roach, Up:= R =

robocanceller /roh-boh-kan'sel-*r/

A program that monitors Usenet feeds, attempting to detect and eliminate spam by sending appropriate cancel messages. Robocancellers may use the Breidbart Index as a trigger. Programming them is not a game for amateurs; see ARMM. See also Dave the Resurrector.


Node:robot, Next:, Previous:robocanceller, Up:= R =

robot n.

See bot.


Node:robust, Next:, Previous:robot, Up:= R =

robust adj.

Said of a system that has demonstrated an ability to recover gracefully from the whole range of exceptional inputs and situations in a given environment. One step below bulletproof. Carries the additional connotation of elegance in addition to just careful attention to detail. Compare smart, oppose brittle.


Node:rococo, Next:, Previous:robust, Up:= R =

rococo adj.

Terminally baroque. Used to imply that a program has become so encrusted with the software equivalent of gold leaf and curlicues that they have completely swamped the underlying design. Called after the later and more extreme forms of Baroque architecture and decoration prevalent during the mid-1700s in Europe. Alan Perlis said: "Every program eventually becomes rococo, and then rubble." Compare critical mass.


Node:rogue, Next:, Previous:rococo, Up:= R =

rogue

1. [Unix] n. A Dungeons-and-Dragons-like game using character graphics, written under BSD Unix and subsequently ported to other Unix systems. The original BSD curses(3) screen-handling package was hacked together by Ken Arnold primarily to support games, and the development of rogue(6) popularized its use; it has since become one of Unix's most important and heavily used application libraries. Nethack, Omega, Larn, Angband, and an entire subgenre of computer dungeon games (all known as `roguelikes') all took off from the inspiration provided by rogue(6); the popular Windows game Diablo, though graphics-intensive, has very similar play logic. See also nethack, moria, Angband. 2. [Usenet] adj. An ISP which permits net abuse (usually in the form of spamming) by its customers, or which itself engages in such activities. Rogue ISPs are sometimes subject to IDPs or UDPs. Sometimes deliberately misspelled as "rouge".


Node:room-temperature IQ, Next:, Previous:rogue, Up:= R =

room-temperature IQ quant.

[IBM] 80 or below (nominal room temperature is 72 degrees Fahrenheit, 22 degrees Celsius). Used in describing the expected intelligence range of the luser. "Well, but how's this interface going to play with the room-temperature IQ crowd?" See drool-proof paper. This is a much more insulting phrase in countries that use Celsius thermometers.


Node:root, Next:, Previous:room-temperature IQ, Up:= R =

root n.

[Unix] 1. The superuser account (with user name `root') that ignores permission bits, user number 0 on a Unix system. The term avatar is also used. 2. The top node of the system directory structure; historically the home directory of the root user, but probably named after the root of an (inverted) tree. 3. By extension, the privileged system-maintenance login on any OS. See root mode, go root, see also wheel.


Node:root mode, Next:, Previous:root, Up:= R =

root mode n.

Syn. with wizard mode or `wheel mode'. Like these, it is often generalized to describe privileged states in systems other than OSes.


Node:rot13, Next:, Previous:root mode, Up:= R =

rot13 /rot ther'teen/ n.,v.

[Usenet: from `rotate alphabet 13 places'] The simple Caesar-cypher encryption that replaces each English letter with the one 13 places forward or back along the alphabet, so that "The butler did it!" becomes "Gur ohgyre qvq vg!" Most Usenet news reading and posting programs include a rot13 feature. It is used to enclose the text in a sealed wrapper that the reader must choose to open -- e.g., for posting things that might offend some readers, or spoilers. A major advantage of rot13 over rot(N) for other N is that it is self-inverse, so the same code can be used for encoding and decoding. See also spoiler space, which has partly displaced rot13 since non-Unix-based newsreaders became common.


Node:rotary debugger, Next:, Previous:rot13, Up:= R =

rotary debugger n.

[Commodore] Essential equipment for those late-night or early-morning debugging sessions. Mainly used as sustenance for the hacker. Comes in many decorator colors, such as Sausage, Pepperoni, and Garbage. See ANSI standard pizza.


Node:round tape, Next:, Previous:rotary debugger, Up:= R =

round tape n.

Industry-standard 1/2-inch magnetic tape (7- or 9-track) on traditional circular reels. See macrotape, oppose square tape.


Node:RSN, Next:, Previous:round tape, Up:= R =

RSN /R-S-N/ adj.

See Real Soon Now.


Node:RTBM, Next:, Previous:RSN, Up:= R =

RTBM /R-T-B-M/ imp.

[Unix] Commonwealth Hackish variant of RTFM; expands to `Read The Bloody Manual'. RTBM is often the entire text of the first reply to a question from a newbie; the second would escalate to "RTFM".


Node:RTFAQ, Next:, Previous:RTBM, Up:= R =

RTFAQ /R-T-F-A-Q/ imp.

[Usenet: primarily written, by analogy with RTFM] Abbrev. for `Read the FAQ!', an exhortation that the person addressed ought to read the newsgroup's FAQ list before posting questions.


Node:RTFB, Next:, Previous:RTFAQ, Up:= R =

RTFB /R-T-F-B/ imp.

[Unix] Abbreviation for `Read The Fucking Binary'. Used when neither documentation nor source for the problem at hand exists, and the only thing to do is use some debugger or monitor and directly analyze the assembler or even the machine code. "No source for the buggy port driver? Aaargh! I hate proprietary operating systems. Time to RTFB."

Of the various RTF? forms, `RTFB' is the least pejorative against anyone asking a question for which RTFB is the answer; the anger here is directed at the absence of both source and adequate documentation.


Node:RTFM, Next:, Previous:RTFB, Up:= R =

RTFM /R-T-F-M/ imp.

[Unix] Abbreviation for `Read The Fucking Manual'. 1. Used by gurus to brush off questions they consider trivial or annoying. Compare Don't do that then!. 2. Used when reporting a problem to indicate that you aren't just asking out of randomness. "No, I can't figure out how to interface Unix to my toaster, and yes, I have RTFM." Unlike sense 1, this use is considered polite. See also FM, RTFAQ, RTFB, RTFS, STFW, RTM, all of which mutated from RTFM, and compare UTSL.


Node:RTFS, Next:, Previous:RTFM, Up:= R =

RTFS /R-T-F-S/

[Unix] 1. imp. Abbreviation for `Read The Fucking Source'. Variant form of RTFM, used when the problem at hand is not necessarily obvious and not answerable from the manuals -- or the manuals are not yet written and maybe never will be. For even trickier situations, see RTFB. Unlike RTFM, the anger inherent in RTFS is not usually directed at the person asking the question, but rather at the people who failed to provide adequate documentation. 2. imp. `Read The Fucking Standard'; this oath can only be used when the problem area (e.g., a language or operating system interface) has actually been codified in a ratified standards document. The existence of these standards documents (and the technically inappropriate but politically mandated compromises that they inevitably contain, and the impenetrable legalese in which they are invariably written, and the unbelievably tedious bureaucratic process by which they are produced) can be unnerving to hackers, who are used to a certain amount of ambiguity in the specifications of the systems they use. (Hackers feel that such ambiguities are acceptable as long as the Right Thing to do is obvious to any thinking observer; sadly, this casual attitude towards specifications becomes unworkable when a system becomes popular in the Real World.) Since a hacker is likely to feel that a standards document is both unnecessary and technically deficient, the deprecation inherent in this term may be directed as much against the standard as against the person who ought to read it.


Node:RTI, Next:, Previous:RTFS, Up:= R =

RTI /R-T-I/ interj.

The mnemonic for the `return from interrupt' instruction on many computers including the 6502 and 6800. The variant `RETI' is found among Z80 hackers. Equivalent to "Now, where was I?" or used to end a conversational digression. See pop; see also POPJ.


Node:RTM, Next:, Previous:RTI, Up:= R =

RTM /R-T-M/

[Usenet: abbreviation for `Read The Manual'] 1. Politer variant of RTFM. 2. Robert Tappan Morris, perpetrator of the great Internet worm of 1988 (see Great Worm); villain to many, naive hacker gone wrong to a few. Morris claimed that the worm that brought the Internet to its knees was a benign experiment that got out of control as the result of a coding error. After the storm of negative publicity that followed this blunder, Morris's username on ITS was hacked from RTM to RTFM.


Node:RTS, Next:, Previous:RTM, Up:= R =

RTS /R-T-S/ imp.

Abbreviation for `Read The Screen'. Mainly used by hackers in the microcomputer world. Refers to what one would like to tell the suit one is forced to explain an extremely simple application to. Particularly appropriate when the suit failed to notice the `Press any key to continue' prompt, and wishes to know `why won't it do anything'. Also seen as `RTFS' in especially deserving cases.


Node:rude, Next:, Previous:RTS, Up:= R =

rude [WPI] adj.

1. (of a program) Badly written. 2. Functionally poor, e.g., a program that is very difficult to use because of gratuitously poor (random?) design decisions. Oppose cuspy. 3. Anything that manipulates a shared resource without regard for its other users in such a way as to cause a (non-fatal) problem. Examples: programs that change tty modes without resetting them on exit, or windowing programs that keep forcing themselves to the top of the window stack. Compare all-elbows.


Node:runes, Next:, Previous:rude, Up:= R =

runes pl.n.

1. Anything that requires heavy wizardry or black art to parse: core dumps, JCL commands, APL, or code in a language you haven't a clue how to read. Not quite as bad as line noise, but close. Compare casting the runes, Great Runes. 2. Special display characters (for example, the high-half graphics on an IBM PC). 3. [borderline techspeak] 16-bit characters from the Unicode multilingual character set.


Node:runic, Next:, Previous:runes, Up:= R =

runic adj.

Syn. obscure. VMS fans sometimes refer to Unix as `Runix'; Unix fans return the compliment by expanding VMS to `Very Messy Syntax' or `Vachement Mauvais Système' (French idiom, "Hugely Bad System").


Node:rusty iron, Next:, Previous:runic, Up:= R =

rusty iron n.

Syn. tired iron. It has been claimed that this is the inevitable fate of water MIPS.


Node:rusty memory, Next:, Previous:rusty iron, Up:= R =

rusty memory n.

Mass-storage that uses iron-oxide-based magnetic media (esp. tape and the pre-Winchester removable disk packs used in washing machines). Compare donuts.


Node:rusty wire, Next:, Previous:rusty memory, Up:= R =

rusty wire n.

[Amateur Packet Radio] Any very noisy network medium, in which the packets are subject to frequent corruption. Most prevalent in reference to wireless links subject to all the vagaries of RF noise and marginal propagation conditions. "Yes, but how good is your whizbang new protocol on really rusty wire?".