Full Text Archive logoFull Text Archive — Free Classic E-books

The New Hacker's Dictionary version 4.2.2 by Various editors

Part 5 out of 29

Adobe PDF icon
Download this document as a .pdf
File size: 1.8 MB
What's this? light bulb idea Many people prefer to read off-line or to print out text and read from the real printed page. Others want to carry documents around with them on their mobile phones and read while they are on the move. We have created .pdf files of all out documents to accommodate all these groups of people. We recommend that you download .pdfs onto your mobile phone when it is connected to a WiFi connection for reading off-line.

cd tilde /C-D til-d*/ vi.

To go home. From the Unix C-shell and Korn-shell command cd ~, which
takes one to one's $HOME (cd with no arguments happens to do the same
thing). By extension, may be used with other arguments; thus, over an
electronic chat link, cd ~coffee would mean "I'm going to the coffee

Node:CDA, Next:[2515]cdr, Previous:[2516]cd tilde, Up:[2517]= C =


The "Communications Decency Act" of 1996, passed on [2518]Black
Thursday as section 502 of a major telecommunications reform bill. The
CDA made it a federal crime in the USA to send a communication which
is "obscene, lewd, lascivious, filthy, or indecent, with intent to
annoy, abuse, threaten, or harass another person." It also threatened
with imprisonment anyone who "knowingly" makes accessible to minors
any message that "describes, in terms patently offensive as measured
by contemporary community standards, sexual or excretory activities or

While the CDA was sold as a measure to protect minors from the
putative evils of pornography, the repressive political aims of the
bill were laid bare by the Hyde amendment, which intended to outlaw
discussion of abortion on the Internet.

To say that this direct attack on First Amendment free-speech rights
was not well received on the Internet would be putting it mildly. A
firestorm of protest followed, including a February 29th mass
demonstration by thousands of netters who turned their [2519]home
pages black for 48 hours. Several civil-rights groups and
computing/telecommunications companies mounted a constitutional
challenge. The CDA was demolished by a strongly-worded decision handed
down on in 8th-circuit Federal court and subsequently affirmed by the
U.S. Supreme Court on 26 June 1997 (`White Thursday'). See also

Node:cdr, Next:[2521]chad, Previous:[2522]CDA, Up:[2523]= C =

cdr /ku'dr/ or /kuh'dr/ vt.

[from LISP] To skip past the first item from a list of things
(generalized from the LISP operation on binary tree structures, which
returns a list consisting of all but the first element of its
argument). In the form `cdr down', to trace down a list of elements:
"Shall we cdr down the agenda?" Usage: silly. See also [2524]loop

Historical note: The instruction format of the IBM 704 that hosted the
original LISP implementation featured two 15-bit fields called the
`address' and `decrement' parts. The term `cdr' was originally
`Contents of Decrement part of Register'. Similarly, `car' stood for
`Contents of Address part of Register'.

The cdr and car operations have since become bases for formation of
compound metaphors in non-LISP contexts. GLS recalls, for example, a
programming project in which strings were represented as linked lists;
the get-character and skip-character operations were of course called

Node:chad, Next:[2525]chad box, Previous:[2526]cdr, Up:[2527]= C =

chad /chad/ n.

1. [common] The perforated edge strips on printer paper, after they
have been separated from the printed portion. Also called
[2528]selvage, [2529]perf, and [2530]ripoff. 2. obs. The confetti-like
paper bits punched out of cards or paper tape; this has also been
called `chaff', `computer confetti', and `keypunch droppings'. It's
reported that this was very old Army slang, and it may now be
mainstream; it has been reported seen (1993) in directions for a
card-based voting machine in California.

Historical note: One correspondent believes `chad' (sense 2) derives
from the Chadless keypunch (named for its inventor), which cut little
u-shaped tabs in the card to make a hole when the tab folded back,
rather than punching out a circle/rectangle; it was clear that if the
Chadless keypunch didn't make them, then the stuff that other
keypunches made had to be `chad'. There is a legend that the word was
originally acronymic, standing for "Card Hole Aggregate Debris", but
this has all the earmarks of a [2531]backronym.

Node:chad box, Next:[2532]chain, Previous:[2533]chad, Up:[2534]= C =

chad box n.

A metal box about the size of a lunchbox (or in some models a large
wastebasket), for collecting the [2535]chad (sense 2) that accumulated
in [2536]Iron Age card punches. You had to open the covers of the card
punch periodically and empty the chad box. The [2537]bit bucket was
notionally the equivalent device in the CPU enclosure, which was
typically across the room in another great gray-and-blue box.

Node:chain, Next:[2538]channel, Previous:[2539]chad box, Up:[2540]= C


1. vi. [orig. from BASIC's CHAIN statement] To hand off execution to a
child or successor without going through the [2541]OS command
interpreter that invoked it. The state of the parent program is lost
and there is no returning to it. Though this facility used to be
common on memory-limited micros and is still widely supported for
backward compatibility, the jargon usage is semi-obsolescent; in
particular, most Unix programmers will think of this as an [2542]exec.
Oppose the more modern `subshell'. 2. n. A series of linked data areas
within an operating system or application. `Chain rattling' is the
process of repeatedly running through the linked data areas searching
for one which is of interest to the executing program. The implication
is that there is a very large number of links on the chain.

Node:channel, Next:[2543]channel hopping, Previous:[2544]chain,
Up:[2545]= C =

channel n.

[IRC] The basic unit of discussion on [2546]IRC. Once one joins a
channel, everything one types is read by others on that channel.
Channels are named with strings that begin with a `#' sign and can
have topic descriptions (which are generally irrelevant to the actual
subject of discussion). Some notable channels are #initgame, #hottub,
callahans, and #report. At times of international crisis, #report has
hundreds of members, some of whom take turns listening to various news
services and typing in summaries of the news, or in some cases, giving
first-hand accounts of the action (e.g., Scud missile attacks in Tel
Aviv during the Gulf War in 1991).

Node:channel hopping, Next:[2547]channel op, Previous:[2548]channel,
Up:[2549]= C =

channel hopping n.

[common; IRC, GEnie] To rapidly switch channels on [2550]IRC, or a
GEnie chat board, just as a social butterfly might hop from one group
to another at a party. This term may derive from the TV watcher's
idiom, `channel surfing'.

Node:channel op, Next:[2551]chanop, Previous:[2552]channel hopping,
Up:[2553]= C =

channel op /chan'l op/ n.

[IRC] Someone who is endowed with privileges on a particular [2554]IRC
channel; commonly abbreviated `chanop' or `CHOP' or just `op' (as of
2000 these short forms have almost crowded out the parent usage).
These privileges include the right to [2555]kick users, to change
various status bits, and to make others into CHOPs.

Node:chanop, Next:[2556]char, Previous:[2557]channel op, Up:[2558]= C

chanop /chan'-op/ n.

[IRC] See [2559]channel op.

Node:char, Next:[2560]charityware, Previous:[2561]chanop, Up:[2562]= C

char /keir/ or /char/; rarely, /kar/ n.

Shorthand for `character'. Esp. used by C programmers, as `char' is
C's typename for character data.

Node:charityware, Next:[2563]chase pointers, Previous:[2564]char,
Up:[2565]= C =

charityware /cha'rit-ee-weir`/ n.

Syn. [2566]careware.

Node:chase pointers, Next:[2567]chawmp, Previous:[2568]charityware,
Up:[2569]= C =

chase pointers

1. vi. To go through multiple levels of indirection, as in traversing
a linked list or graph structure. Used esp. by programmers in C, where
explicit pointers are a very common data type. This is techspeak, but
it remains jargon when used of human networks. "I'm chasing pointers.
Bob said you could tell me who to talk to about...." See
[2570]dangling pointer and [2571]snap. 2. [Cambridge] `pointer chase'
or `pointer hunt': The process of going through a [2572]core dump
(sense 1), interactively or on a large piece of paper printed with hex
[2573]runes, following dynamic data-structures. Used only in a
debugging context.

Node:chawmp, Next:[2574]check, Previous:[2575]chase pointers,
Up:[2576]= C =

chawmp n.

[University of Florida] 16 or 18 bits (half of a machine word). This
term was used by FORTH hackers during the late 1970s/early 1980s; it
is said to have been archaic then, and may now be obsolete. It was
coined in revolt against the promiscuous use of `word' for anything
between 16 and 32 bits; `word' has an additional special meaning for
FORTH hacks that made the overloading intolerable. For similar
reasons, /gaw'bl/ (spelled `gawble' or possibly `gawbul') was in use
as a term for 32 or 48 bits (presumably a full machine word, but our
sources are unclear on this). These terms are more easily understood
if one thinks of them as faithful phonetic spellings of `chomp' and
`gobble' pronounced in a Florida or other Southern U.S. dialect. For
general discussion of similar terms, see [2577]nybble.

Node:check, Next:[2578]cheerfully, Previous:[2579]chawmp, Up:[2580]= C

check n.

A hardware-detected error condition, most commonly used to refer to
actual hardware failures rather than software-induced traps. E.g., a
`parity check' is the result of a hardware-detected parity error.
Recorded here because the word often humorously extended to
non-technical problems. For example, the term `child check' has been
used to refer to the problems caused by a small child who is curious
to know what happens when s/he presses all the cute buttons on a
computer's console (of course, this particular problem could have been
prevented with [2581]molly-guards).

Node:cheerfully, Next:[2582]chemist, Previous:[2583]check, Up:[2584]=
C =

cheerfully adv.

See [2585]happily.

Node:chemist, Next:[2586]Chernobyl chicken, Previous:[2587]cheerfully,
Up:[2588]= C =

chemist n.

[Cambridge] Someone who wastes computer time on [2589]number-crunching
when you'd far rather the machine were doing something more
productive, such as working out anagrams of your name or printing
Snoopy calendars or running [2590]life patterns. May or may not refer
to someone who actually studies chemistry.

Node:Chernobyl chicken, Next:[2591]Chernobyl packet,
Previous:[2592]chemist, Up:[2593]= C =

Chernobyl chicken n.

See [2594]laser chicken.

Node:Chernobyl packet, Next:[2595]chicken head,
Previous:[2596]Chernobyl chicken, Up:[2597]= C =

Chernobyl packet /cher-noh'b*l pak'*t/ n.

A network packet that induces a [2598]broadcast storm and/or
[2599]network meltdown, in memory of the April 1986 nuclear accident
at Chernobyl in Ukraine. The typical scenario involves an IP Ethernet
datagram that passes through a gateway with both source and
destination Ether and IP address set as the respective broadcast
addresses for the subnetworks being gated between. Compare
[2600]Christmas tree packet.

Node:chicken head, Next:[2601]chiclet keyboard,
Previous:[2602]Chernobyl packet, Up:[2603]= C =

chicken head n.

[Commodore] The Commodore Business Machines logo, which strongly
resembles a poultry part (within Commodore itself the logo was always
called `chicken lips'). Rendered in ASCII as `C='. With the arguable
exception of the Amiga (see [2604]amoeba), Commodore's machines were
notoriously crocky little [2605]bitty boxes (see also [2606]PETSCII),
albeit people have written multitasking Unix-like operating systems
with TCP/IP networking for them. Thus, this usage may owe something to
Philip K. Dick's novel "Do Androids Dream of Electric Sheep?" (the
basis for the movie "Blade Runner"; the novel is now sold under that
title), in which a `chickenhead' is a mutant with below-average

Node:chiclet keyboard, Next:[2607]Chinese Army technique,
Previous:[2608]chicken head, Up:[2609]= C =

chiclet keyboard n.

A keyboard with a small, flat rectangular or lozenge-shaped rubber or
plastic keys that look like pieces of chewing gum. (Chiclets is the
brand name of a variety of chewing gum that does in fact resemble the
keys of chiclet keyboards.) Used esp. to describe the original IBM
PCjr keyboard. Vendors unanimously liked these because they were
cheap, and a lot of early portable and laptop products got launched
using them. Customers rejected the idea with almost equal unanimity,
and chiclets are not often seen on anything larger than a digital
watch any more.

Node:Chinese Army technique, Next:[2610]choad, Previous:[2611]chiclet
keyboard, Up:[2612]= C =

Chinese Army technique n.

Syn. [2613]Mongolian Hordes technique.

Node:choad, Next:[2614]choke, Previous:[2615]Chinese Army technique,
Up:[2616]= C =

choad /chohd/ n.

Synonym for `penis' used in alt.tasteless and popularized by the
denizens thereof. They say: "We think maybe it's from Middle English
but we're all too damned lazy to check the OED." [I'm not. It isn't.
--ESR] This term is alleged to have been inherited through 1960s
underground comics, and to have been recently sighted in the Beavis
and Butthead cartoons. Speakers of the Hindi, Bengali and Gujarati
languages have confirmed that `choad' is in fact an Indian vernacular
word equivalent to `fuck'; it is therefore likely to have entered
English slang via the British Raj.

Node:choke, Next:[2617]chomp, Previous:[2618]choad, Up:[2619]= C =

choke v.

1. [common] To reject input, often ungracefully. "NULs make System V's
lpr(1) choke." "I tried building an [2620]EMACS binary to use [2621]X,
but cpp(1) choked on all those #defines." See [2622]barf, [2623]gag,
[2624]vi. 2. [MIT] More generally, to fail at any endeavor, but with
some flair or bravado; the popular definition is "to snatch defeat
from the jaws of victory."

Node:chomp, Next:[2625]chomper, Previous:[2626]choke, Up:[2627]= C =

chomp vi.

1. To [2628]lose; specifically, to chew on something of which more was
bitten off than one can. Probably related to gnashing of teeth. 2. To
bite the bag; See [2629]bagbiter.

A hand gesture commonly accompanies this. To perform it, hold the four
fingers together and place the thumb against their tips. Now open and
close your hand rapidly to suggest a biting action (much like what
Pac-Man does in the classic video game, though this pantomime seems to
predate that). The gesture alone means `chomp chomp' (see "[2630]Verb
Doubling" in the "[2631]Jargon Construction" section of the
Prependices). The hand may be pointed at the object of complaint, and
for real emphasis you can use both hands at once. Doing this to a
person is equivalent to saying "You chomper!" If you point the gesture
at yourself, it is a humble but humorous admission of some failure.
You might do this if someone told you that a program you had written
had failed in some surprising way and you felt dumb for not having
anticipated it.

Node:chomper, Next:[2632]CHOP, Previous:[2633]chomp, Up:[2634]= C =

chomper n.

Someone or something that is chomping; a loser. See [2635]loser,
[2636]bagbiter, [2637]chomp.

Node:CHOP, Next:[2638]Christmas tree, Previous:[2639]chomper,
Up:[2640]= C =

CHOP /chop/ n.

[IRC] See [2641]channel op.

Node:Christmas tree, Next:[2642]Christmas tree packet,
Previous:[2643]CHOP, Up:[2644]= C =

Christmas tree n.

A kind of RS-232 line tester or breakout box featuring rows of
blinking red and green LEDs suggestive of Christmas lights.

Node:Christmas tree packet, Next:[2645]chrome,
Previous:[2646]Christmas tree, Up:[2647]= C =

Christmas tree packet n.

A packet with every single option set for whatever protocol is in use.
See [2648]kamikaze packet, [2649]Chernobyl packet. (The term doubtless
derives from a fanciful image of each little option bit being
represented by a different-colored light bulb, all turned on.) Compare

Node:chrome, Next:[2651]chug, Previous:[2652]Christmas tree packet,
Up:[2653]= C =

chrome n.

[from automotive slang via wargaming] Showy features added to attract
users but contributing little or nothing to the power of a system.
"The 3D icons in Motif are just chrome, but they certainly are pretty
chrome!" Distinguished from [2654]bells and whistles by the fact that
the latter are usually added to gratify developers' own desires for
featurefulness. Often used as a term of contempt.

Node:chug, Next:[2655]Church of the SubGenius, Previous:[2656]chrome,
Up:[2657]= C =

chug vi.

To run slowly; to [2658]grind or [2659]grovel. "The disk is chugging
like crazy."

Node:Church of the SubGenius, Next:[2660]Cinderella Book,
Previous:[2661]chug, Up:[2662]= C =

Church of the SubGenius n.

A mutant offshoot of [2663]Discordianism launched in 1981 as a spoof
of fundamentalist Christianity by the `Reverend' Ivan Stang, a
brilliant satirist with a gift for promotion. Popular among hackers as
a rich source of bizarre imagery and references such as "Bob" the
divine drilling-equipment salesman, the Benevolent Space Xists, and
the Stark Fist of Removal. Much SubGenius theory is concerned with the
acquisition of the mystical substance or quality of [2664]slack. There
is a home page at [2665]http://www.subgenius.com/.

Node:Cinderella Book, Next:[2666]CI$, Previous:[2667]Church of the
SubGenius, Up:[2668]= C =

Cinderella Book [CMU] n.

"Introduction to Automata Theory, Languages, and Computation", by John
Hopcroft and Jeffrey Ullman, (Addison-Wesley, 1979). So called because
the cover depicts a girl (putatively Cinderella) sitting in front of a
Rube Goldberg device and holding a rope coming out of it. On the back
cover, the device is in shambles after she has (inevitably) pulled on
the rope. See also [2669]book titles.

Node:CI$, Next:[2670]Classic C, Previous:[2671]Cinderella Book,
Up:[2672]= C =

CI$ // n.

Hackerism for `CIS', CompuServe Information Service. The dollar sign
refers to CompuServe's rather steep line charges. Often used in
[2673]sig blocks just before a CompuServe address. Syn.

Node:Classic C, Next:[2675]clean, Previous:[2676]CI$, Up:[2677]= C =

Classic C /klas'ik C/ n.

[a play on `Coke Classic'] The C programming language as defined in
the first edition of [2678]K&R, with some small additions. It is also
known as `K&R C'. The name came into use while C was being
standardized by the ANSI X3J11 committee. Also `C Classic'.

An analogous construction is sometimes applied elsewhere: thus, `X
Classic', where X = Star Trek (referring to the original TV series) or
X = PC (referring to IBM's ISA-bus machines as opposed to the PS/2
series). This construction is especially used of product series in
which the newer versions are considered serious losers relative to the
older ones.

Node:clean, Next:[2679]CLM, Previous:[2680]Classic C, Up:[2681]= C =

clean 1. adj.

Used of hardware or software designs, implies `elegance in the small',
that is, a design or implementation that may not hold any surprises
but does things in a way that is reasonably intuitive and relatively
easy to comprehend from the outside. The antonym is `grungy' or
[2682]crufty. 2. v. To remove unneeded or undesired files in a effort
to reduce clutter: "I'm cleaning up my account." "I cleaned up the
garbage and now have 100 Meg free on that partition."

Node:CLM, Next:[2683]clobber, Previous:[2684]clean, Up:[2685]= C =


[Sun: `Career Limiting Move'] 1. n. An action endangering one's future
prospects of getting plum projects and raises, and possibly one's job:
"His Halloween costume was a parody of his manager. He won the prize
for `best CLM'." 2. adj. Denotes extreme severity of a bug, discovered
by a customer and obviously missed earlier because of poor testing:
"That's a CLM bug!"

Node:clobber, Next:[2686]clock, Previous:[2687]CLM, Up:[2688]= C =

clobber vt.

To overwrite, usually unintentionally: "I walked off the end of the
array and clobbered the stack." Compare [2689]mung, [2690]scribble,
[2691]trash, and [2692]smash the stack.

Node:clock, Next:[2693]clocks, Previous:[2694]clobber, Up:[2695]= C =


1. n 1. [techspeak] The master oscillator that steps a CPU or other
digital circuit through its paces. This has nothing to do with the
time of day, although the software counter that keeps track of the
latter may be derived from the former. 2. vt. To run a CPU or other
digital circuit at a particular rate. "If you clock it at 100MHz, it
gets warm.". See [2696]overclock. 3. vt. To force a digital circuit
from one state to the next by applying a single clock pulse. "The data
must be stable 10ns before you clock the latch."

Node:clocks, Next:[2697]clone, Previous:[2698]clock, Up:[2699]= C =

clocks n.

Processor logic cycles, so called because each generally corresponds
to one clock pulse in the processor's timing. The relative execution
times of instructions on a machine are usually discussed in clocks
rather than absolute fractions of a second; one good reason for this
is that clock speeds for various models of the machine may increase as
technology improves, and it is usually the relative times one is
interested in when discussing the instruction set. Compare
[2700]cycle, [2701]jiffy.

Node:clone, Next:[2702]clone-and-hack coding, Previous:[2703]clocks,
Up:[2704]= C =

clone n.

1. An exact duplicate: "Our product is a clone of their product."
Implies a legal reimplementation from documentation or by
reverse-engineering. Also connotes lower price. 2. A shoddy, spurious
copy: "Their product is a clone of our product." 3. A blatant ripoff,
most likely violating copyright, patent, or trade secret protections:
"Your product is a clone of my product." This use implies legal action
is pending. 4. `PC clone:' a PC-BUS/ISA or EISA-compatible 80x86-based
microcomputer (this use is sometimes spelled `klone' or `PClone').
These invariably have much more bang for the buck than the IBM
archetypes they resemble. 5. In the construction `Unix clone': An OS
designed to deliver a Unix-lookalike environment without Unix license
fees, or with additional `mission-critical' features such as support
for real-time programming. 6. v. To make an exact copy of something.
"Let me clone that" might mean "I want to borrow that paper so I can
make a photocopy" or "Let me get a copy of that file before you
[2705]mung it".

Node:clone-and-hack coding, Next:[2706]clover key,
Previous:[2707]clone, Up:[2708]= C =

clone-and-hack coding n.

[DEC] Syn. [2709]case and paste.

Node:clover key, Next:[2710]clue-by-four,
Previous:[2711]clone-and-hack coding, Up:[2712]= C =

clover key n.

[Mac users] See [2713]feature key.

Node:clue-by-four, Next:[2714]clustergeeking, Previous:[2715]clover
key, Up:[2716]= C =


[Usenet: portmanteau, clue + two-by-four] The notional stick with
which one whacks an aggressively clueless person. This term derives
from a western American folk saying about training a mule "First, you
got to hit him with a two-by-four. That's to get his attention." The
clue-by-four is a close relative of the [2717]LART. Syn. `clue stick'.
This metaphor is commonly elaborated; your editor once heard a hacker
say "I strike you with the great sword Clue-Bringer!"

Node:clustergeeking, Next:[2718]co-lo, Previous:[2719]clue-by-four,
Up:[2720]= C =

clustergeeking /kluh'st*r-gee`king/ n.

[CMU] Spending more time at a computer cluster doing CS homework than
most people spend breathing.

Node:co-lo, Next:[2721]coaster, Previous:[2722]clustergeeking,
Up:[2723]= C =

co-lo /koh'loh`/ n.

[very common; first heard c.1995] Short for `co-location', used of a
machine you own that is physically sited on the premises of an ISP in
order to take advantage of the ISP's direct access to lots of network
bandwidthm. Often in the phrases `co-lo box' or `co-lo machines'.
Co-lo boxes are typically web and FTP servers remote-administered by
their owners, who may seldom or never visit the actual site.

Node:coaster, Next:[2724]COBOL, Previous:[2725]co-lo, Up:[2726]= C =

coaster n.

1. Unuseable CD produced during failed attempt at writing to writeable
or re-writeable CD media. Certainly related to the coaster-like shape
of a CD, and the relative value of these failures. "I made a lot of
coasters before I got a good CD." 2. Useless CDs received in the mail
from the likes of AOL, MSN, CI$, Prodigy, ad nauseam.

In the U.K., `beermat' is often used in these senses.

Node:COBOL, Next:[2727]COBOL fingers, Previous:[2728]coaster,
Up:[2729]= C =

COBOL /koh'bol/ n.

[COmmon Business-Oriented Language] (Synonymous with [2730]evil.) A
weak, verbose, and flabby language used by [2731]card wallopers to do
boring mindless things on [2732]dinosaur mainframes. Hackers believe
that all COBOL programmers are [2733]suits or [2734]code grinders, and
no self-respecting hacker will ever admit to having learned the
language. Its very name is seldom uttered without ritual expressions
of disgust or horror. One popular one is Edsger W. Dijkstra's famous
observation that "The use of COBOL cripples the mind; its teaching
should, therefore, be regarded as a criminal offense." (from "Selected
Writings on Computing: A Personal Perspective") See also [2735]fear
and loathing, [2736]software rot.

Node:COBOL fingers, Next:[2737]cobweb site, Previous:[2738]COBOL,
Up:[2739]= C =

COBOL fingers /koh'bol fing'grz/ n.

Reported from Sweden, a (hypothetical) disease one might get from
coding in COBOL. The language requires code verbose beyond all reason
(see [2740]candygrammar); thus it is alleged that programming too much
in COBOL causes one's fingers to wear down to stubs by the endless
typing. "I refuse to type in all that source code again; it would give
me COBOL fingers!"

Node:cobweb site, Next:[2741]code, Previous:[2742]COBOL fingers,
Up:[2743]= C =

cobweb site n.

A World Wide Web Site that hasn't been updated so long it has
figuratively grown cobwebs.

Node:code, Next:[2744]code grinder, Previous:[2745]cobweb site,
Up:[2746]= C =

code n.

The stuff that software writers write, either in source form or after
translation by a compiler or assembler. Often used in opposition to
"data", which is the stuff that code operates on. This is a mass noun,
as in "How much code does it take to do a [2747]bubble sort?", or "The
code is loaded at the high end of RAM." Anyone referring to software
as "the software codes" is probably a [2748]newbie or a [2749]suit.

Node:code grinder, Next:[2750]code monkey, Previous:[2751]code,
Up:[2752]= C =

code grinder n.

1. A [2753]suit-wearing minion of the sort hired in legion strength by
banks and insurance companies to implement payroll packages in RPG and
other such unspeakable horrors. In its native habitat, the code
grinder often removes the suit jacket to reveal an underplumage
consisting of button-down shirt (starch optional) and a tie. In times
of dire stress, the sleeves (if long) may be rolled up and the tie
loosened about half an inch. It seldom helps. The [2754]code grinder's
milieu is about as far from hackerdom as one can get and still touch a
computer; the term connotes pity. See [2755]Real World, [2756]suit. 2.
Used of or to a hacker, a really serious slur on the person's creative
ability; connotes a design style characterized by primitive technique,
rule-boundedness, [2757]brute force, and utter lack of imagination.
Compare [2758]card walloper; contrast [2759]hacker, [2760]Real

Node:code monkey, Next:[2761]Code of the Geeks, Previous:[2762]code
grinder, Up:[2763]= C =

code monkey n

1. A person only capable of grinding out code, but unable to perform
the higher-primate tasks of software architecture, analysis, and
design. Mildly insulting. Often applied to the most junior people on a
programming team. 2. Anyone who writes code for a living; a
programmer. 3. A self-deprecating way of denying responsibility for a
[2764]management decision, or of complaining about having to live with
such decisions. As in "Don't ask me why we need to write a compiler
in+COBOL, I'm just a code monkey."

Node:Code of the Geeks, Next:[2765]code police, Previous:[2766]code
monkey, Up:[2767]= C =

Code of the Geeks n.

see [2768]geek code.

Node:code police, Next:[2769]codes, Previous:[2770]Code of the Geeks,
Up:[2771]= C =

code police n.

[by analogy with George Orwell's `thought police'] A mythical team of
Gestapo-like storm troopers that might burst into one's office and
arrest one for violating programming style rules. May be used either
seriously, to underline a claim that a particular style violation is
dangerous, or ironically, to suggest that the practice under
discussion is condemned mainly by anal-retentive [2772]weenies. "Dike
out that goto or the code police will get you!" The ironic usage is
perhaps more common.

Node:codes, Next:[2773]codewalker, Previous:[2774]code police,
Up:[2775]= C =

codes n.

[scientific computing] Programs. This usage is common in people who
hack supercomputers and heavy-duty [2776]number-crunching, rare to
unknown elsewhere (if you say "codes" to hackers outside scientific
computing, their first association is likely to be "and cyphers").

Node:codewalker, Next:[2777]coefficient of X, Previous:[2778]codes,
Up:[2779]= C =

codewalker n.

A program component that traverses other programs for a living.
Compilers have codewalkers in their front ends; so do cross-reference
generators and some database front ends. Other utility programs that
try to do too much with source code may turn into codewalkers. As in
"This new vgrind feature would require a codewalker to implement."

Node:coefficient of X, Next:[2780]cokebottle,
Previous:[2781]codewalker, Up:[2782]= C =

coefficient of X n.

Hackish speech makes heavy use of pseudo-mathematical metaphors. Four
particularly important ones involve the terms `coefficient', `factor',
`index of X', and `quotient'. They are often loosely applied to things
you cannot really be quantitative about, but there are subtle
distinctions among them that convey information about the way the
speaker mentally models whatever he or she is describing.

`Foo factor' and `foo quotient' tend to describe something for which
the issue is one of presence or absence. The canonical example is
[2783]fudge factor. It's not important how much you're fudging; the
term simply acknowledges that some fudging is needed. You might talk
of liking a movie for its silliness factor. Quotient tends to imply
that the property is a ratio of two opposing factors: "I would have
won except for my luck quotient." This could also be "I would have won
except for the luck factor", but using quotient emphasizes that it was
bad luck overpowering good luck (or someone else's good luck
overpowering your own).

`Foo index' and `coefficient of foo' both tend to imply that foo is,
if not strictly measurable, at least something that can be larger or
smaller. Thus, you might refer to a paper or person as having a `high
bogosity index', whereas you would be less likely to speak of a `high
bogosity factor'. `Foo index' suggests that foo is a condensation of
many quantities, as in the mundane cost-of-living index; `coefficient
of foo' suggests that foo is a fundamental quantity, as in a
coefficient of friction. The choice between these terms is often one
of personal preference; e.g., some people might feel that bogosity is
a fundamental attribute and thus say `coefficient of bogosity',
whereas others might feel it is a combination of factors and thus say
`bogosity index'.

Node:cokebottle, Next:[2784]cold boot, Previous:[2785]coefficient of
X, Up:[2786]= C =

cokebottle /kohk'bot-l/ n.

Any very unusual character, particularly one you can't type because it
isn't on your keyboard. MIT people used to complain about the
`control-meta-cokebottle' commands at SAIL, and SAIL people complained
right back about the `escape-escape-cokebottle' commands at MIT. After
the demise of the [2787]space-cadet keyboard, `cokebottle' faded away
as serious usage, but was often invoked humorously to describe an
(unspecified) weird or non-intuitive keystroke command. It may be due
for a second inning, however. The OSF/Motif window manager, mwm(1),
has a reserved keystroke for switching to the default set of
keybindings and behavior. This keystroke is (believe it or not)
`control-meta-bang' (see [2788]bang). Since the exclamation point
looks a lot like an upside down Coke bottle, Motif hackers have begun
referring to this keystroke as `cokebottle'. See also [2789]quadruple

Node:cold boot, Next:[2790]COME FROM, Previous:[2791]cokebottle,
Up:[2792]= C =

cold boot n.

See [2793]boot.

Node:COME FROM, Next:[2794]comm mode, Previous:[2795]cold boot,
Up:[2796]= C =


A semi-mythical language construct dual to the `go to'; COME FROM

in which the trapdoor is just after the statement labeled 10. (This is
particularly surprising because the label doesn't appear to have
anything to do with the flow of control at all!)

While sufficiently astonishing to the unsuspecting reader, this form
of COME FROM statement isn't completely general. After all, control
will eventually pass to the following statement. The implementation of
the general form was left to Univac FORTRAN, ca. 1975 (though a
roughly similar feature existed on the IBM 7040 ten years earlier).
The statement AT 100 would perform a COME FROM 100. It was intended
strictly as a debugging aid, with dire consequences promised to anyone
so deranged as to use it in production code. More horrible things had
already been perpetrated in production languages, however; doubters
need only contemplate the ALTER verb in [2801]COBOL.

COME FROM was supported under its own name for the first time 15 years
later, in C-INTERCAL (see [2802]INTERCAL, [2803]retrocomputing);
knowledgeable observers are still reeling from the shock.

Node:comm mode, Next:[2804]command key, Previous:[2805]COME FROM,
Up:[2806]= C =

comm mode /kom mohd/ n.

[ITS: from the feature supporting on-line chat; the term may spelled
with one or two m's] Syn. for [2807]talk mode.

Node:command key, Next:[2808]comment out, Previous:[2809]comm mode,
Up:[2810]= C =

command key n.

[Mac users] Syn. [2811]feature key.

Node:comment out, Next:[2812]Commonwealth Hackish,
Previous:[2813]command key, Up:[2814]= C =

comment out vt.

To surround a section of code with comment delimiters or to prefix
every line in the section with a comment marker; this prevents it from
being compiled or interpreted. Often done when the code is redundant
or obsolete, but is being left in the source to make the intent of the
active code clearer; also when the code in that section is broken and
you want to bypass it in order to debug some other part of the code.
Compare [2815]condition out, usually the preferred technique in
languages (such as [2816]C) that make it possible.

Node:Commonwealth Hackish, Next:[2817]compact, Previous:[2818]comment
out, Up:[2819]= C =

Commonwealth Hackish n.

Hacker jargon as spoken in English outside the U.S., esp. in the
British Commonwealth. It is reported that Commonwealth speakers are
more likely to pronounce truncations like `char' and `soc', etc., as
spelled (/char/, /sok/), as opposed to American /keir/ and /sohsh/.
Dots in [2820]newsgroup names (especially two-component names) tend to
be pronounced more often (so soc.wibble is /sok dot wib'l/ rather than
/sohsh wib'l/).

Preferred [2821]metasyntactic variables include [2822]blurgle, eek,
ook, frodo, and bilbo; [2823]wibble, wobble, and in emergencies
wubble; flob, banana, tom, dick, harry, wombat, frog, [2824]fish,
[2825]womble and so on and on (see [2826]foo, sense 4). Alternatives
to verb doubling include suffixes `-o-rama', `frenzy' (as in feeding
frenzy), and `city' (examples: "barf city!" "hack-o-rama!" "core dump

All the generic differences within the anglophone world inevitably
show themselves in the associated hackish dialects. The Greek letters
beta and zeta are usually pronounced /bee't*/ and /zee't*/; meta may
also be pronounced /mee't*/. Various punctuators (and even letters - Z
is called `zed', not `zee') are named differently: most crucially, for
hackish, where Americans use `parens', `brackets' and `braces' for (),
[] and {}, Commonwealth English uses `brackets', `square brackets' and
`curly brackets', though `parentheses' may be used for the first; the
exclamation mark, `!', is called pling rather than bang and the pound
sign, `#', is called hash; furthermore, the term `the pound sign' is
understood to mean the pound currency symbol (of course).

See also [2827]attoparsec, [2828]calculator, [2829]chemist,
[2830]console jockey, [2831]fish, [2832]go-faster stripes,
[2833]grunge, [2834]hakspek, [2835]heavy metal, [2836]leaky heap,
[2837]lord high fixer, [2838]loose bytes, [2839]muddie, [2840]nadger,
[2841]noddy, [2842]psychedelicware, [2843]plingnet, [2844]raster
blaster, [2845]RTBM, [2846]seggie, [2847]spod, [2848]sun lounge,
[2849]terminal junkie, [2850]tick-list features, [2851]weeble,
[2852]weasel, [2853]YABA, and notes or definitions under [2854]Bad
Thing, [2855]barf, [2856]bogus, [2857]bum, [2858]chase pointers,
[2859]cosmic rays, [2860]crippleware, [2861]crunch, [2862]dodgy,
[2863]gonk, [2864]hamster, [2865]hardwarily, [2866]mess-dos,
[2867]nybble, [2868]proglet, [2869]root, [2870]SEX, [2871]tweak,
[2872]womble, and [2873]xyzzy.

Node:compact, Next:[2874]compiler jock, Previous:[2875]Commonwealth
Hackish, Up:[2876]= C =

compact adj.

Of a design, describes the valuable property that it can all be
apprehended at once in one's head. This generally means the thing
created from the design can be used with greater facility and fewer
errors than an equivalent tool that is not compact. Compactness does
not imply triviality or lack of power; for example, C is compact and
FORTRAN is not, but C is more powerful than FORTRAN. Designs become
non-compact through accreting [2877]features and [2878]cruft that
don't merge cleanly into the overall design scheme (thus, some fans of
[2879]Classic C maintain that ANSI C is no longer compact).

Node:compiler jock, Next:[2880]compo, Previous:[2881]compact,
Up:[2882]= C =

compiler jock n.

See [2883]jock (sense 2).

Node:compo, Next:[2884]compress, Previous:[2885]compiler jock,
Up:[2886]= C =

compo n.

[[2887]demoscene] Finnish-originated slang for `competition'. Demo
compos are held at a [2888]demoparty. The usual protocol is that
several groups make demos for a compo, they are shown on a big screen,
and then the party participants vote for the best one. Prizes (from
sponsors and party entrance fees) are given. Standard compo formats
include [2889]intro compos (4k or 64k demos), music compos, graphics
compos, quick [2890]demo compos (build a demo within 4 hours for
example), etc.

Node:compress, Next:[2891]Compu$erve, Previous:[2892]compo, Up:[2893]=
C =

compress [Unix] vt.

When used without a qualifier, generally refers to [2894]crunching of
a file using a particular C implementation of compression by Joseph M.
Orost et al. and widely circulated via [2895]Usenet; use of
[2896]crunch itself in this sense is rare among Unix hackers.
Specifically, compress is built around the Lempel-Ziv-Welch algorithm
as described in "A Technique for High Performance Data Compression",
Terry A. Welch, "IEEE Computer", vol. 17, no. 6 (June 1984), pp. 8-19.

Node:Compu$erve, Next:[2897]computer confetti,
Previous:[2898]compress, Up:[2899]= C =

Compu$erve n.

See [2900]CI$. Synonyms CompuSpend and Compu$pend are also reported.

Node:computer confetti, Next:[2901]computer geek,
Previous:[2902]Compu$erve, Up:[2903]= C =

computer confetti n.

Syn. [2904]chad. Though this term is common, this use of punched-card
chad is not a good idea, as the pieces are stiff and have sharp
corners that could injure the eyes. GLS reports that he once attended
a wedding at MIT during which he and a few other guests
enthusiastically threw chad instead of rice. The groom later grumbled
that he and his bride had spent most of the evening trying to get the
stuff out of their hair.

Node:computer geek, Next:[2905]computron, Previous:[2906]computer
confetti, Up:[2907]= C =

computer geek n.

1. One who eats (computer) bugs for a living. One who fulfills all the
dreariest negative stereotypes about hackers: an asocial, malodorous,
pasty-faced monomaniac with all the personality of a cheese grater.
Cannot be used by outsiders without implied insult to all hackers;
compare black-on-black vs. white-on-black usage of `nigger'. A
computer geek may be either a fundamentally clueless individual or a
proto-hacker in [2908]larval stage. Also called `turbo nerd', `turbo
geek'. See also [2909]propeller head, [2910]clustergeeking, [2911]geek
out, [2912]wannabee, [2913]terminal junkie, [2914]spod, [2915]weenie.
2. Some self-described computer geeks use this term in a positive
sense and protest sense 1 (this seems to have been a post-1990
development). For one such argument, see
[2916]http://www.darkwater.com/omni/geek.php. See also [2917]geek

Node:computron, Next:[2918]con, Previous:[2919]computer geek,
Up:[2920]= C =

computron /kom'pyoo-tron`/

n. 1. [common] A notional unit of computing power combining
instruction speed and storage capacity, dimensioned roughly in
instructions-per-second times megabytes-of-main-store times
megabytes-of-mass-storage. "That machine can't run GNU Emacs, it
doesn't have enough computrons!" This usage is usually found in
metaphors that treat computing power as a fungible commodity good,
like a crop yield or diesel horsepower. See [2921]bitty box, [2922]Get
a real computer!, [2923]toy, [2924]crank. 2. A mythical subatomic
particle that bears the unit quantity of computation or information,
in much the same way that an electron bears one unit of electric
charge (see also [2925]bogon). An elaborate pseudo-scientific theory
of computrons has been developed based on the physical fact that the
molecules in a solid object move more rapidly as it is heated. It is
argued that an object melts because the molecules have lost their
information about where they are supposed to be (that is, they have
emitted computrons). This explains why computers get so hot and
require air conditioning; they use up computrons. Conversely, it
should be possible to cool down an object by placing it in the path of
a computron beam. It is believed that this may also explain why
machines that work at the factory fail in the computer room: the
computrons there have been all used up by the other hardware. (The
popularity of this theory probably owes something to the "Warlock"
stories by Larry Niven, the best known being "What Good is a Glass
Dagger?", in which magic is fueled by an exhaustible natural resource
called `mana'.)

Node:con, Next:[2926]condition out, Previous:[2927]computron,
Up:[2928]= C =

con n.

[from SF fandom] A science-fiction convention. Not used of other sorts
of conventions, such as professional meetings. This term, unlike many
others imported from SF-fan slang, is widely recognized even by
hackers who aren't [2929]fans. "We'd been corresponding on the net for
months, then we met face-to-face at a con."

Node:condition out, Next:[2930]condom, Previous:[2931]con, Up:[2932]=
C =

condition out vt.

To prevent a section of code from being compiled by surrounding it
with a conditional-compilation directive whose condition is always
false. The [2933]canonical examples of these directives are #if 0 (or
#ifdef notdef, though some find the latter [2934]bletcherous) and
#endif in C. Compare [2935]comment out.

Node:condom, Next:[2936]confuser, Previous:[2937]condition out,
Up:[2938]= C =

condom n.

1. The protective plastic bag that accompanies 3.5-inch microfloppy
diskettes. Rarely, also used of (paper) disk envelopes. Unlike the
write protect tab, the condom (when left on) not only impedes the
practice of [2939]SEX but has also been shown to have a high failure
rate as drive mechanisms attempt to access the disk -- and can even
fatally frustrate insertion. 2. The protective cladding on a
[2940]light pipe. 3. `keyboard condom': A flexible, transparent
plastic cover for a keyboard, designed to provide some protection
against dust and [2941]programming fluid without impeding typing. 4.
`elephant condom': the plastic shipping bags used inside cardboard
boxes to protect hardware in transit. 5. n. obs. A dummy directory
/usr/tmp/sh, created to foil the [2942]Great Worm by exploiting a
portability bug in one of its parts. So named in the title of a
comp.risks article by Gene Spafford during the Worm crisis, and again
in the text of "The Internet Worm Program: An Analysis", Purdue
Technical Report CSD-TR-823.

Node:confuser, Next:[2943]connector conspiracy, Previous:[2944]condom,
Up:[2945]= C =

confuser n.

Common soundalike slang for `computer'. Usually encountered in
compounds such as `confuser room', `personal confuser', `confuser
guru'. Usage: silly.

Node:connector conspiracy, Next:[2946]cons, Previous:[2947]confuser,
Up:[2948]= C =

connector conspiracy n.

[probably came into prominence with the appearance of the KL-10 (one
model of the [2949]PDP-10), none of whose connectors matched anything
else] The tendency of manufacturers (or, by extension, programmers or
purveyors of anything) to come up with new products that don't fit
together with the old stuff, thereby making you buy either all new
stuff or expensive interface devices. The KL-10 Massbus connector was
actually patented by [2950]DEC, which reputedly refused to license the
design and thus effectively locked third parties out of competition
for the lucrative Massbus peripherals market. This policy is a source
of never-ending frustration for the diehards who maintain older PDP-10
or VAX systems. Their CPUs work fine, but they are stuck with dying,
obsolescent disk and tape drives with low capacity and high power

(A closely related phenomenon, with a slightly different intent, is
the habit manufacturers have of inventing new screw heads so that only
Designated Persons, possessing the magic screwdrivers, can remove
covers and make repairs or install options. A good 1990s example is
the use of Torx screws for cable-TV set-top boxes. Older Apple
Macintoshes took this one step further, requiring not only a long Torx
screwdriver but a specialized case-cracking tool to open the box.)

In these latter days of open-systems computing this term has fallen
somewhat into disuse, to be replaced by the observation that
"Standards are great! There are so many of them to choose from!"
Compare [2951]backward combatability.

Node:cons, Next:[2952]considered harmful, Previous:[2953]connector
conspiracy, Up:[2954]= C =

cons /konz/ or /kons/

[from LISP] 1. vt. To add a new element to a specified list, esp. at
the top. "OK, cons picking a replacement for the console TTY onto the
agenda." 2. `cons up': vt. To synthesize from smaller pieces: "to cons
up an example".

In LISP itself, cons is the most fundamental operation for building
structures. It takes any two objects and returns a `dot-pair' or
two-branched tree with one object hanging from each branch. Because
the result of a cons is an object, it can be used to build binary
trees of any shape and complexity. Hackers think of it as a sort of
universal constructor, and that is where the jargon meanings spring

Node:considered harmful, Next:[2955]console, Previous:[2956]cons,
Up:[2957]= C =

considered harmful adj.

[very common] Edsger W. Dijkstra's note in the March 1968
"Communications of the ACM", "Goto Statement Considered Harmful",
fired the first salvo in the structured programming wars (text at
[2958]http://www.acm.org/classics). Amusingly, the ACM considered the
resulting acrimony sufficiently harmful that it will (by policy) no
longer print an article taking so assertive a position against a
coding practice. (Years afterwards, a contrary view was uttered in a
CACM letter called, inevitably, "`Goto considered harmful' considered
harmful'"'. In the ensuing decades, a large number of both serious
papers and parodies have borne titles of the form "X considered Y".
The structured-programming wars eventually blew over with the
realization that both sides were wrong, but use of such titles has
remained as a persistent minor in-joke (the `considered silly' found
at various places in this lexicon is related).

Node:console, Next:[2959]console jockey, Previous:[2960]considered
harmful, Up:[2961]= C =

console n.

1. The operator's station of a [2962]mainframe. In times past, this
was a privileged location that conveyed godlike powers to anyone with
fingers on its keys. Under Unix and other modern timesharing OSes,
such privileges are guarded by passwords instead, and the console is
just the [2963]tty the system was booted from. Some of the mystique
remains, however, and it is traditional for sysadmins to post urgent
messages to all users from the console (on Unix, /dev/console). 2. On
microcomputer Unix boxes, the main screen and keyboard (as opposed to
character-only terminals talking to a serial port). Typically only the
console can do real graphics or run [2964]X.

Node:console jockey, Next:[2965]content-free, Previous:[2966]console,
Up:[2967]= C =

console jockey n.

See [2968]terminal junkie.

Node:content-free, Next:[2969]control-C, Previous:[2970]console
jockey, Up:[2971]= C =

content-free adj.

[by analogy with techspeak `context-free'] Used of a message that adds
nothing to the recipient's knowledge. Though this adjective is
sometimes applied to [2972]flamage, it more usually connotes derision
for communication styles that exalt form over substance or are
centered on concerns irrelevant to the subject ostensibly at hand.
Perhaps most used with reference to speeches by company presidents and
other professional manipulators. "Content-free? Uh... that's anything
printed on glossy paper." (See also [2973]four-color glossies.) "He
gave a talk on the implications of electronic networks for
postmodernism and the fin-de-siecle aesthetic. It was content-free."

Node:control-C, Next:[2974]control-O, Previous:[2975]content-free,
Up:[2976]= C =

control-C vi.

1. "Stop whatever you are doing." From the interrupt character used on
many operating systems to abort a running program. Considered silly.
2. interj. Among BSD Unix hackers, the canonical humorous response to
"Give me a break!"

Node:control-O, Next:[2977]control-Q, Previous:[2978]control-C,
Up:[2979]= C =

control-O vi.

"Stop talking." From the character used on some operating systems to
abort output but allow the program to keep on running. Generally means
that you are not interested in hearing anything more from that person,
at least on that topic; a standard response to someone who is flaming.
Considered silly. Compare [2980]control-S.

Node:control-Q, Next:[2981]control-S, Previous:[2982]control-O,
Up:[2983]= C =

control-Q vi.

"Resume." From the ASCII DC1 or [2984]XON character (the pronunciation
/X-on/ is therefore also used), used to undo a previous

Node:control-S, Next:[2986]Conway's Law, Previous:[2987]control-Q,
Up:[2988]= C =

control-S vi.

"Stop talking for a second." From the ASCII DC3 or XOFF character (the
pronunciation /X-of/ is therefore also used). Control-S differs from
[2989]control-O in that the person is asked to stop talking (perhaps
because you are on the phone) but will be allowed to continue when
you're ready to listen to him -- as opposed to control-O, which has
more of the meaning of "Shut up." Considered silly.

Node:Conway's Law, Next:[2990]cookbook, Previous:[2991]control-S,
Up:[2992]= C =

Conway's Law prov.

The rule that the organization of the software and the organization of
the software team will be congruent; commonly stated as "If you have
four groups working on a compiler, you'll get a 4-pass compiler". The
original statement was more general, "Organizations which design
systems are constrained to produce designs which are copies of the
communication structures of these organizations." This first appeared
in the April 1968 issue of [2993]Datamation. Compare [2994]SNAFU

The law was named after Melvin Conway, an early proto-hacker who wrote
an assembler for the Burroughs 220 called SAVE. (The name `SAVE'
didn't stand for anything; it was just that you lost fewer card decks
and listings because they all had SAVE written on them.)

There is also Tom Cheatham's amendment of Conway's Law: "If a group of
N persons implements a COBOL compiler, there will be N-1 passes.
Someone in the group has to be the manager."

Node:cookbook, Next:[2995]cooked mode, Previous:[2996]Conway's Law,
Up:[2997]= C =

cookbook n.

[from amateur electronics and radio] A book of small code segments
that the reader can use to do various [2998]magic things in programs.
One current example is the "[2999]PostScript Language Tutorial and
Cookbook" by Adobe Systems, Inc (Addison-Wesley, ISBN 0-201-10179-3),
also known as the [3000]Blue Book which has recipes for things like
wrapping text around arbitrary curves and making 3D fonts. Cookbooks,
slavishly followed, can lead one into [3001]voodoo programming, but
are useful for hackers trying to [3002]monkey up small programs in
unknown languages. This function is analogous to the role of
phrasebooks in human languages.

Node:cooked mode, Next:[3003]cookie, Previous:[3004]cookbook,
Up:[3005]= C =

cooked mode n.

[Unix, by opposition from [3006]raw mode] The normal character-input
mode, with interrupts enabled and with erase, kill and other
special-character interpretations performed directly by the tty
driver. Oppose [3007]raw mode, [3008]rare mode. This term is techspeak
under Unix but jargon elsewhere; other operating systems often have
similar mode distinctions, and the raw/rare/cooked way of describing
them has spread widely along with the C language and other Unix
exports. Most generally, `cooked mode' may refer to any mode of a
system that does extensive preprocessing before presenting data to a

Node:cookie, Next:[3009]cookie bear, Previous:[3010]cooked mode,
Up:[3011]= C =

cookie n.

A handle, transaction ID, or other token of agreement between
cooperating programs. "I give him a packet, he gives me back a
cookie." The claim check you get from a dry-cleaning shop is a perfect
mundane example of a cookie; the only thing it's useful for is to
relate a later transaction to this one (so you get the same clothes
back). Compare [3012]magic cookie; see also [3013]fortune cookie. Now
mainstream in the specific sense of web-browser cookies.

Node:cookie bear, Next:[3014]cookie file, Previous:[3015]cookie,
Up:[3016]= C =

cookie bear n. obs.

Original term, pre-Sesame-Street, for what is now universally called a
[3017]cookie monster. A correspondent observes "In those days, hackers
were actually getting their yucks from...sit down now...Andy Williams.
Yes, that Andy Williams. Seems he had a rather hip (by the standards
of the day) TV variety show. One of the best parts of the show was the
recurring `cookie bear' sketch. In these sketches, a guy in a bear
suit tried all sorts of tricks to get a cookie out of Williams. The
sketches would always end with Williams shrieking (and I don't mean
figuratively), `No cookies! Not now, not ever...NEVER!!!' And the bear
would fall down. Great stuff."

Node:cookie file, Next:[3018]cookie jar, Previous:[3019]cookie bear,
Up:[3020]= C =

cookie file n.

A collection of [3021]fortune cookies in a format that facilitates
retrieval by a fortune program. There are several different cookie
files in public distribution, and site admins often assemble their own
from various sources including this lexicon.

Node:cookie jar, Next:[3022]cookie monster, Previous:[3023]cookie
file, Up:[3024]= C =

cookie jar n.

An area of memory set aside for storing [3025]cookies. Most commonly
heard in the Atari ST community; many useful ST programs record their
presence by storing a distinctive [3026]magic number in the jar.
Programs can inquire after the presence or otherwise of other programs
by searching the contents of the jar.

Node:cookie monster, Next:[3027]copious free time,
Previous:[3028]cookie jar, Up:[3029]= C =

cookie monster n.

[from the children's TV program "Sesame Street"] Any of a family of
early (1970s) hacks reported on [3030]TOPS-10, [3031]ITS,
[3032]Multics, and elsewhere that would lock up either the victim's
terminal (on a time-sharing machine) or the [3033]console (on a batch
[3034]mainframe), repeatedly demanding "I WANT A COOKIE". The required
responses ranged in complexity from "COOKIE" through "HAVE A COOKIE"
and upward. Folklorist Jan Brunvand (see [3035]FOAF) has described
these programs as urban legends (implying they probably never existed)
but they existed, all right, in several different versions. See also
[3036]wabbit. Interestingly, the term `cookie monster' appears to be a
[3037]retcon; the original term was [3038]cookie bear.

Node:copious free time, Next:[3039]copper, Previous:[3040]cookie
monster, Up:[3041]= C =

copious free time n.

[Apple; orig. fr. the intro to Tom Lehrer's song "It Makes A Fellow
Proud To Be A Soldier"] 1. [used ironically to indicate the speaker's
lack of the quantity in question] A mythical schedule slot for
accomplishing tasks held to be unlikely or impossible. Sometimes used
to indicate that the speaker is interested in accomplishing the task,
but believes that the opportunity will not arise. "I'll implement the
automatic layout stuff in my copious free time." 2. [Archly] Time
reserved for bogus or otherwise idiotic tasks, such as implementation
of [3042]chrome, or the stroking of [3043]suits. "I'll get back to him
on that feature in my copious free time."

Node:copper, Next:[3044]copy protection, Previous:[3045]copious free
time, Up:[3046]= C =

copper n.

Conventional electron-carrying network cable with a core conductor of
copper -- or aluminum! Opposed to [3047]light pipe or, say, a
short-range microwave link.

Node:copy protection, Next:[3048]copybroke, Previous:[3049]copper,
Up:[3050]= C =

copy protection n.

A class of methods for preventing incompetent pirates from stealing
software and legitimate customers from using it. Considered silly.

Node:copybroke, Next:[3051]copycenter, Previous:[3052]copy protection,
Up:[3053]= C =

copybroke /kop'ee-brohk/ adj.

1. [play on `copyright'] Used to describe an instance of a
copy-protected program that has been `broken'; that is, a copy with
the copy-protection scheme disabled. Syn. [3054]copywronged. 2.
Copy-protected software which is unusable because of some bit-rot or
bug that has confused the anti-piracy check. See also [3055]copy

Node:copycenter, Next:[3056]copyleft, Previous:[3057]copybroke,
Up:[3058]= C =

copycenter n.

[play on `copyright' and `copyleft'] 1. The copyright notice carried
by the various flavors of freeware BSD. According to Kirk McKusick at
BSDCon 1999: "The way it was characterized politically, you had
copyright, which is what the big companies use to lock everything up;
you had copyleft, which is free software's way of making sure they
can't lock it up; and then Berkeley had what we called "copycenter",
which is "take it down to the copy center and make as many copies as
you want".

Node:copyleft, Next:[3059]copyparty, Previous:[3060]copycenter,
Up:[3061]= C =

copyleft /kop'ee-left/ n.

[play on `copyright'] 1. The copyright notice (`General Public
License') carried by [3062]GNU [3063]EMACS and other Free Software
Foundation software, granting reuse and reproduction rights to all
comers (but see also [3064]General Public Virus). 2. By extension, any
copyright notice intended to achieve similar aims.

Node:copyparty, Next:[3065]copywronged, Previous:[3066]copyleft,
Up:[3067]= C =

copyparty n.

[C64/amiga [3068]demoscene ]A computer party organized so demosceners
can meet other in real life, and to facilitate software copying
(mostly pirated software). The copyparty has become less common as the
Internet makes communication easier. The demoscene has gradually
evolved the [3069]demoparty to replace it.

Node:copywronged, Next:[3070]core, Previous:[3071]copyparty,
Up:[3072]= C =

copywronged /kop'ee-rongd/ adj.

[play on `copyright'] Syn. for [3073]copybroke.

Node:core, Next:[3074]core cancer, Previous:[3075]copywronged,
Up:[3076]= C =

core n.

Main storage or RAM. Dates from the days of ferrite-core memory; now
archaic as techspeak most places outside IBM, but also still used in
the Unix community and by old-time hackers or those who would sound
like them. Some derived idioms are quite current; `in core', for
example, means `in memory' (as opposed to `on disk'), and both
[3077]core dump and the `core image' or `core file' produced by one
are terms in favor. Some varieties of Commonwealth hackish prefer

Node:core cancer, Next:[3079]core dump, Previous:[3080]core,
Up:[3081]= C =

core cancer n.

[rare] A process that exhibits a slow but inexorable resource
[3082]leak -- like a cancer, it kills by crowding out productive

Node:core dump, Next:[3083]core leak, Previous:[3084]core cancer,
Up:[3085]= C =

core dump n.

[common [3086]Iron Age jargon, preserved by Unix] 1. [techspeak] A
copy of the contents of [3087]core, produced when a process is aborted
by certain kinds of internal error. 2. By extension, used for humans
passing out, vomiting, or registering extreme shock. "He dumped core.
All over the floor. What a mess." "He heard about X and dumped core."
3. Occasionally used for a human rambling on pointlessly at great
length; esp. in apology: "Sorry, I dumped core on you". 4. A
recapitulation of knowledge (compare [3088]bits, sense 1). Hence,
spewing all one knows about a topic (syn. [3089]brain dump), esp. in a
lecture or answer to an exam question. "Short, concise answers are
better than core dumps" (from the instructions to an exam at
Columbia). See [3090]core.

Node:core leak, Next:[3091]Core Wars, Previous:[3092]core dump,
Up:[3093]= C =

core leak n.

Syn. [3094]memory leak.

Node:Core Wars, Next:[3095]corge, Previous:[3096]core leak, Up:[3097]=
C =

Core Wars n.

A game between `assembler' programs in a machine or machine simulator,
where the objective is to kill your opponent's program by overwriting
it. Popularized in the 1980s by A. K. Dewdney's column in "Scientific
American" magazine, but described in "Software Practice And
Experience" a decade earlier. The game was actually devised and played
by Victor Vyssotsky, Robert Morris Sr., and Doug McIlroy in the early
1960s (Dennis Ritchie is sometimes incorrectly cited as a co-author,
but was not involved). Their original game was called `Darwin' and ran
on a IBM 7090 at Bell Labs. See [3098]core. For information on the
modern game, do a web search for the `rec.games.corewar FAQ' or surf
to the [3099]King Of The Hill site.

Node:corge, Next:[3100]cosmic rays, Previous:[3101]Core Wars,
Up:[3102]= C =

corge /korj/ n.

[originally, the name of a cat] Yet another [3103]metasyntactic
variable, invented by Mike Gallaher and propagated by the
[3104]GOSMACS documentation. See [3105]grault.

Node:cosmic rays, Next:[3106]cough and die, Previous:[3107]corge,
Up:[3108]= C =

cosmic rays n.

Notionally, the cause of [3109]bit rot. However, this is a
semi-independent usage that may be invoked as a humorous way to
[3110]handwave away any minor [3111]randomness that doesn't seem worth
the bother of investigating. "Hey, Eric -- I just got a burst of
garbage on my [3112]tube, where did that come from?" "Cosmic rays, I
guess." Compare [3113]sunspots, [3114]phase of the moon. The British
seem to prefer the usage `cosmic showers'; `alpha particles' is also
heard, because stray alpha particles passing through a memory chip can
cause single-bit errors (this becomes increasingly more likely as
memory sizes and densities increase).

Factual note: Alpha particles cause bit rot, cosmic rays do not
(except occasionally in spaceborne computers). Intel could not explain
random bit drops in their early chips, and one hypothesis was cosmic
rays. So they created the World's Largest Lead Safe, using 25 tons of
the stuff, and used two identical boards for testing. One was placed
in the safe, one outside. The hypothesis was that if cosmic rays were
causing the bit drops, they should see a statistically significant
difference between the error rates on the two boards. They did not
observe such a difference. Further investigation demonstrated
conclusively that the bit drops were due to alpha particle emissions
from thorium (and to a much lesser degree uranium) in the
encapsulation material. Since it is impossible to eliminate these
radioactives (they are uniformly distributed through the earth's
crust, with the statistically insignificant exception of uranium
lodes) it became obvious that one has to design memories to withstand
these hits.

Node:cough and die, Next:[3115]courier, Previous:[3116]cosmic rays,
Up:[3117]= C =

cough and die v.

Syn. [3118]barf. Connotes that the program is throwing its hands up by
design rather than because of a bug or oversight. "The parser saw a
control-A in its input where it was looking for a printable, so it
coughed and died." Compare [3119]die, [3120]die horribly, [3121]scream
and die.

Node:courier, Next:[3122]cow orker, Previous:[3123]cough and die,
Up:[3124]= C =


[BBS & cracker cultures] A person who distributes newly cracked
[3125]warez, as opposed to a [3126]server who makes them available for
download or a [3127]leech who merely downloads them. Hackers recognize
this term but don't use it themselves, as the act is not part of their
culture. See also [3128]warez d00dz, [3129]cracker, [3130]elite.

Node:cow orker, Next:[3131]cowboy, Previous:[3132]courier, Up:[3133]=
C =

cow orker n.

[Usenet] n. fortuitous typo for co-worker, widely used in Usenet, with
perhaps a hint that orking cows is illegal. This term was popularized
by Scott Adams (the creator of [3134]Dilbert) but already appears in
the January 1996 version of the [3135]scary devil monastery FAQ. There
are plausible reports that it was in use on talk.bizarre as early as
1992. Compare [3136]hing, [3137]grilf, [3138]filk, [3139]newsfroup.

Node:cowboy, Next:[3140]CP/M, Previous:[3141]cow orker, Up:[3142]= C =

cowboy n.

[Sun, from William Gibson's [3143]cyberpunk SF] Synonym for
[3144]hacker. It is reported that at Sun this word is often said with

Node:CP/M, Next:[3145]CPU Wars, Previous:[3146]cowboy, Up:[3147]= C =

CP/M /C-P-M/ n.

[Control Program/Monitor; later [3148]retconned to Control Program for
Microcomputers] An early microcomputer [3149]OS written by hacker Gary
Kildall for 8080- and Z80-based machines, very popular in the late
1970s but virtually wiped out by MS-DOS after the release of the IBM
PC in 1981. Legend has it that Kildall's company blew its chance to
write the OS for the IBM PC because Kildall decided to spend a day
IBM's reps wanted to meet with him enjoying the perfect flying weather
in his private plane. Many of CP/M's features and conventions strongly
resemble those of early [3150]DEC operating systems such as
[3151]TOPS-10, OS/8, RSTS, and RSX-11. See [3152]MS-DOS,
[3153]operating system.

Node:CPU Wars, Next:[3154]crack, Previous:[3155]CP/M, Up:[3156]= C =

CPU Wars /C-P-U worz/ n.

A 1979 large-format comic by Chas Andres chronicling the attempts of
the brainwashed androids of IPM (Impossible to Program Machines) to
conquer and destroy the peaceful denizens of HEC (Human Engineered
Computers). This rather transparent allegory featured many references
to [3157]ADVENT and the immortal line "Eat flaming death, minicomputer
mongrels!" (uttered, of course, by an IPM stormtrooper). The whole
shebang is now [3158]available on the Web.

It is alleged that the author subsequently received a letter of
appreciation on IBM company stationery from the head of IBM's Thomas
J. Watson Research Laboratories (then, as now, one of the few islands
of true hackerdom in the IBM archipelago). The lower loop of the B in
the IBM logo, it is said, had been carefully whited out. See [3159]eat
flaming death.

Node:crack, Next:[3160]crack root, Previous:[3161]CPU Wars, Up:[3162]=
C =


[warez d00dz] 1. v. To break into a system (compare [3163]cracker). 2.
v. Action of removing the copy protection from a commercial program.
People who write cracks consider themselves challenged by the copy
protection measures. They will often do it as much to show that they
are smarter than the developper who designed the copy protection
scheme than to actually copy the program. 3. n. A program,
instructions or patch used to remove the copy protection of a program
or to uncripple features from a demo/time limited program. 4. An

Node:crack root, Next:[3165]cracker, Previous:[3166]crack, Up:[3167]=
C =

crack root v.

[very common] To defeat the security system of a Unix machine and gain
[3168]root privileges thereby; see [3169]cracking.

Node:cracker, Next:[3170]cracking, Previous:[3171]crack root,
Up:[3172]= C =

cracker n.

One who breaks security on a system. Coined ca. 1985 by hackers in
defense against journalistic misuse of [3173]hacker (q.v., sense 8).
An earlier attempt to establish `worm' in this sense around 1981-82 on
Usenet was largely a failure.

Use of both these neologisms reflects a strong revulsion against the
theft and vandalism perpetrated by cracking rings. While it is
expected that any real hacker will have done some playful cracking and
knows many of the basic techniques, anyone past [3174]larval stage is
expected to have outgrown the desire to do so except for immediate,
benign, practical reasons (for example, if it's necessary to get
around some security in order to get some work done).

Thus, there is far less overlap between hackerdom and crackerdom than
the [3175]mundane reader misled by sensationalistic journalism might
expect. Crackers tend to gather in small, tight-knit, very secretive
groups that have little overlap with the huge, open poly-culture this
lexicon describes; though crackers often like to describe themselves
as hackers, most true hackers consider them a separate and lower form
of life.

Ethical considerations aside, hackers figure that anyone who can't
imagine a more interesting way to play with their computers than
breaking into someone else's has to be pretty [3176]losing. Some other
reasons crackers are looked down on are discussed in the entries on
[3177]cracking and [3178]phreaking. See also [3179]samurai,
[3180]dark-side hacker, and [3181]hacker ethic. For a portrait of the
typical teenage cracker, see [3182]warez d00dz.

Node:cracking, Next:[3183]crank, Previous:[3184]cracker, Up:[3185]= C

cracking n.

[very common] The act of breaking into a computer system; what a
[3186]cracker does. Contrary to widespread myth, this does not usually
involve some mysterious leap of hackerly brilliance, but rather
persistence and the dogged repetition of a handful of fairly
well-known tricks that exploit common weaknesses in the security of
target systems. Accordingly, most crackers are only mediocre hackers.

Node:crank, Next:[3187]crapplet, Previous:[3188]cracking, Up:[3189]= C

crank vt.

[from automotive slang] Verb used to describe the performance of a
machine, especially sustained performance. "This box cranks (or,
cranks at) about 6 megaflops, with a burst mode of twice that on
vectorized operations."

Node:crapplet, Next:[3190]CrApTeX, Previous:[3191]crank, Up:[3192]= C

crapplet n.

[portmanteau, crap + applet] A worthless applet, esp. a Java widget
attached to a web page that doesn't work or even crashes your browser.
Also spelled `craplet'.

Node:CrApTeX, Next:[3193]crash, Previous:[3194]crapplet, Up:[3195]= C

CrApTeX /krap'tekh/ n.

[University of York, England] Term of abuse used to describe TeX and
LaTeX when they don't work (when used by TeXhackers), or all the time
(by everyone else). The non-TeX-enthusiasts generally dislike it
because it is more verbose than other formatters (e.g. [3196]troff)
and because (particularly if the standard Computer Modern fonts are
used) it generates vast output files. See [3197]religious issues,

Node:crash, Next:[3199]crash and burn, Previous:[3200]CrApTeX,
Up:[3201]= C =


1. n. A sudden, usually drastic failure. Most often said of the
[3202]system (q.v., sense 1), esp. of magnetic disk drives (the term
originally described what happens when the air gap of a hard disk
collapses). "Three [3203]lusers lost their files in last night's disk
crash." A disk crash that involves the read/write heads dropping onto
the surface of the disks and scraping off the oxide may also be
referred to as a `head crash', whereas the term `system crash'
usually, though not always, implies that the operating system or other
software was at fault. 2. v. To fail suddenly. "Has the system just
crashed?" "Something crashed the OS!" See [3204]down. Also used
transitively to indicate the cause of the crash (usually a person or a
program, or both). "Those idiots playing [3205]SPACEWAR crashed the
system." 3. vi. Sometimes said of people hitting the sack after a long
[3206]hacking run; see [3207]gronk out.

Node:crash and burn, Next:[3208]crawling horror, Previous:[3209]crash,
Up:[3210]= C =

crash and burn vi.,n.

A spectacular crash, in the mode of the conclusion of the car-chase
scene in the movie "Bullitt" and many subsequent imitators (compare
[3211]die horribly). Sun-3 monitors losing the flyback transformer and
lightning strikes on VAX-11/780 backplanes are notable crash and burn
generators. The construction `crash-and-burn machine' is reported for
a computer used exclusively for alpha or [3212]beta testing, or
reproducing bugs (i.e., not for development). The implication is that
it wouldn't be such a disaster if that machine crashed, since only the
testers would be inconvenienced.

Node:crawling horror, Next:[3213]cray, Previous:[3214]crash and burn,
Up:[3215]= C =

crawling horror n.

Ancient crufty hardware or software that is kept obstinately alive by
forces beyond the control of the hackers at a site. Like [3216]dusty
deck or [3217]gonkulator, but connotes that the thing described is not
just an irritation but an active menace to health and sanity. "Mostly
we code new stuff in C, but they pay us to maintain one big FORTRAN II
application from nineteen-sixty-X that's a real crawling horror...."
Compare [3218]WOMBAT.

Node:cray, Next:[3219]cray instability, Previous:[3220]crawling
horror, Up:[3221]= C =

cray /kray/ n.

1. (properly, capitalized) One of the line of supercomputers designed
by Cray Research. 2. Any supercomputer at all. 3. The [3222]canonical
[3223]number-crunching machine.

The term is actually the lowercased last name of Seymour Cray, a noted
computer architect and co-founder of the company. Numerous vivid
legends surround him, some true and some admittedly invented by Cray
Research brass to shape their corporate culture and image.

Node:cray instability, Next:[3224]crayola, Previous:[3225]cray,
Up:[3226]= C =

cray instability n.

1. A shortcoming of a program or algorithm that manifests itself only
when a large problem is being run on a powerful machine (see
[3227]cray). Generally more subtle than bugs that can be detected in
smaller problems running on a workstation or mini. 2. More
specifically, a shortcoming of algorithms which are well behaved when
run on gentle floating point hardware (such as IEEE-standard or
PDP-series machines) but which break down badly when exposed to a
Cray's unique `rounding' rules.

Node:crayola, Next:[3228]crayola books, Previous:[3229]cray
instability, Up:[3230]= C =

crayola /kray-oh'l*/ n.

A super-mini or -micro computer that provides some reasonable
percentage of supercomputer performance for an unreasonably low price.
Might also be a [3231]killer micro.

Node:crayola books, Next:[3232]crayon, Previous:[3233]crayola,
Up:[3234]= C =

crayola books n.

The [3235]rainbow series of National Computer Security Center (NCSC)
computer security standards (see [3236]Orange Book). Usage: humorous
and/or disparaging.

Node:crayon, Next:[3237]creationism, Previous:[3238]crayola books,
Up:[3239]= C =

crayon n.

1. Someone who works on Cray supercomputers. More specifically, it
implies a programmer, probably of the CDC ilk, probably male, and
almost certainly wearing a tie (irrespective of gender). Systems types
who have a Unix background tend not to be described as crayons. 2.
Formerly, anyone who worked for Cray Research; since the buyout by
SGI, anyone they inherited from Cray. 3. A [3240]computron (sense 2)
that participates only in [3241]number-crunching. 4. A unit of
computational power equal to that of a single Cray-1. There is a
standard joke about this usage that derives from an old Crayola crayon
promotional gimmick: When you buy 64 crayons you get a free sharpener.

Node:creationism, Next:[3242]creep, Previous:[3243]crayon, Up:[3244]=
C =

creationism n.

The (false) belief that large, innovative software designs can be
completely specified in advance and then painlessly magicked out of
the void by the normal efforts of a team of normally talented
programmers. In fact, experience has shown repeatedly that good
designs arise only from evolutionary, exploratory interaction between
one (or at most a small handful of) exceptionally able designer(s) and
an active user population -- and that the first try at a big new idea
is always wrong. Unfortunately, because these truths don't fit the
planning models beloved of [3245]management, they are generally

Node:creep, Next:[3246]creeping elegance, Previous:[3247]creationism,
Up:[3248]= C =

creep v.

To advance, grow, or multiply inexorably. In hackish usage this verb
has overtones of menace and silliness, evoking the creeping horrors of
low-budget monster movies.

Node:creeping elegance, Next:[3249]creeping featurism,
Previous:[3250]creep, Up:[3251]= C =

creeping elegance n.

Describes a tendency for parts of a design to become [3252]elegant
past the point of diminishing return, something which often happens at
the expense of the less interesting parts of the design, the schedule,
and other things deemed important in the [3253]Real World. See also
[3254]creeping featurism, [3255]second-system effect, [3256]tense.

Book of the day: