`Undocumented feature' is a common, allegedly humorous euphemism
for a {bug}. There's a related joke that is sometimes referred
to as the "one-question geek test". You say to someone "I saw a
Volkswagen Beetle today with a vanity license plate that read
FEATURE". If he/she laughs, he/she is a geek (see {computer
geek}, sense #2).
:feature creature: /n./ [poss. fr. slang `creature feature'
for a horror movie] 1. One who loves to add features to designs or
programs, perhaps at the expense of coherence, concision, or
{taste}. 2. Alternately, a mythical being that induces
otherwise rational programmers to perpetrate such crocks. See also
{feeping creaturism}, {creeping featurism}.
:feature key: /n./ The Macintosh key with the cloverleaf
graphic on its keytop; sometimes referred to as `flower',
`pretzel', `clover', `propeller', `beanie' (an apparent
reference to the major feature of a propeller beanie), {splat},
or the `command key'. The Mac's equivalent of an {alt} key.
The proliferation of terms for this creature may illustrate one
subtle peril of iconic interfaces.
Many people have been mystified by the cloverleaf-like symbol that
appears on the feature key. Its oldest name is `cross of St.
Hannes', but it occurs in pre-Christian Viking art as a decorative
motif. Throughout Scandinavia today the road agencies use it to
mark sites of historical interest. Apple picked up the symbol from
an early Mac developer who happened to be Swedish. Apple
documentation gives the translation "interesting feature"!
There is some dispute as to the proper (Swedish) name of this
symbol. It technically stands for the word `sev"ardhet'
(interesting feature); many of these are old churches. Some Swedes
report as an idiom for it the word `kyrka', cognate to English
`church' and Scots-dialect `kirk' but pronounced /shir'k*/ in
modern Swedish. Others say this is nonsense. Another idiom
reported for the sign is `runsten' /roon'stn/, derived from
the fact that many of the interesting features are Viking
rune-stones.
:feature shock: /n./ [from Alvin Toffler's book title
"Future Shock"] A user's (or programmer's!) confusion when
confronted with a package that has too many features and poor
introductory material.
:featurectomy: /fee`ch*r-ek't*-mee/ /n./ The act of removing
a feature from a program. Featurectomies come in two flavors, the
`righteous' and the `reluctant'. Righteous featurectomies are
performed because the remover believes the program would be more
elegant without the feature, or there is already an equivalent and
better way to achieve the same end. (Doing so is not quite the
same thing as removing a {misfeature}.) Reluctant
featurectomies are performed to satisfy some external constraint
such as code size or execution speed.
:feep: /feep/ 1. /n./ The soft electronic `bell' sound of a
display terminal (except for a VT-52); a beep (in fact, the
microcomputer world seems to prefer {beep}). 2. /vi./ To cause
the display to make a feep sound. ASR-33s (the original TTYs) do
not feep; they have mechanical bells that ring. Alternate forms:
{beep}, `bleep', or just about anything suitably onomatopoeic.
(Jeff MacNelly, in his comic strip "Shoe", uses the word
`eep' for sounds made by computer terminals and video games; this
is perhaps the closest written approximation yet.) The term
`breedle' was sometimes heard at SAIL, where the terminal
bleepers are not particularly soft (they sound more like the
musical equivalent of a raspberry or Bronx cheer; for a close
approximation, imagine the sound of a Star Trek communicator's beep
lasting for five seconds). The `feeper' on a VT-52 has been
compared to the sound of a '52 Chevy stripping its gears. See also
{ding}.
:feeper: /fee'pr/ /n./ The device in a terminal or
workstation (usually a loudspeaker of some kind) that makes the
{feep} sound.
:feeping creature: /n./ [from {feeping creaturism}] An
unnecessary feature; a bit of {chrome} that, in the speaker's
judgment, is the camel's nose for a whole horde of new features.
:feeping creaturism: /fee'ping kree`ch*r-izm/ /n./ A
deliberate spoonerism for {creeping featurism}, meant to imply
that the system or program in question has become a misshapen
creature of hacks. This term isn't really well defined, but it
sounds so neat that most hackers have said or heard it. It is
probably reinforced by an image of terminals prowling about in the
dark making their customary noises.
:feetch feetch: /feech feech/ /interj./ If someone tells you
about some new improvement to a program, you might respond:
"Feetch, feetch!" The meaning of this depends critically on
vocal inflection. With enthusiasm, it means something like "Boy,
that's great! What a great hack!" Grudgingly or with obvious
doubt, it means "I don't know; it sounds like just one more
unnecessary and complicated thing". With a tone of resignation,
it means, "Well, I'd rather keep it simple, but I suppose it has
to be done".
:fence: /n./ 1. A sequence of one or more distinguished
({out-of-band}) characters (or other data items), used to
delimit a piece of data intended to be treated as a unit (the
computer-science literature calls this a `sentinel'). The NUL
(ASCII 0000000) character that terminates strings in C is a fence.
Hex FF is also (though slightly less frequently) used this way.
See {zigamorph}. 2. An extra data value inserted in an array or
other data structure in order to allow some normal test on the
array's contents also to function as a termination test. For
example, a highly optimized routine for finding a value in an array
might artificially place a copy of the value to be searched for
after the last slot of the array, thus allowing the main search
loop to search for the value without having to check at each pass
whether the end of the array had been reached. 3. [among users of
optimizing compilers] Any technique, usually exploiting knowledge
about the compiler, that blocks certain optimizations. Used when
explicit mechanisms are not available or are overkill. Typically a
hack: "I call a dummy procedure there to force a flush of the
optimizer's register-coloring info" can be expressed by the
shorter "That's a fence procedure".
:fencepost error: /n./ 1. A problem with the discrete
equivalent of a boundary condition, often exhibited in programs by
iterative loops. From the following problem: "If you build a
fence 100 feet long with posts 10 feet apart, how many posts do you
need?" (Either 9 or 11 is a better answer than the obvious 10.)
For example, suppose you have a long list or array of items, and
want to process items m through n; how many items are
there? The obvious answer is n - m, but that is off by one;
the right answer is n - m + 1. A program that used the
`obvious' formula would have a fencepost error in it. See also
{zeroth} and {off-by-one error}, and note that not all
off-by-one errors are fencepost errors. The game of Musical Chairs
involves a catastrophic off-by-one error where N people try
to sit in N - 1 chairs, but it's not a fencepost error.
Fencepost errors come from counting things rather than the spaces
between them, or vice versa, or by neglecting to consider whether
one should count one or both ends of a row. 2. [rare] An error
induced by unexpected regularities in input values, which can (for
instance) completely thwart a theoretically efficient binary tree
or hash table implementation. (The error here involves the
difference between expected and worst case behaviors of an
algorithm.)
:fepped out: /fept owt/ /adj./ The Symbolics 3600 LISP
Machine has a Front-End Processor called a `FEP' (compare sense 2
of {box}). When the main processor gets {wedged}, the FEP
takes control of the keyboard and screen. Such a machine is said
to have `fepped out' or `dropped into the fep'.
:FidoNet: /n./ A worldwide hobbyist network of personal
computers which exchanges mail, discussion groups, and files.
Founded in 1984 and originally consisting only of IBM PCs and
compatibles, FidoNet now includes such diverse machines as Apple
][s, Ataris, Amigas, and Unix systems. FidoNet has grown rapidly
and in early 1996 has approximately 38000 nodes.
:field circus: /n./ [a derogatory pun on `field service'] The
field service organization of any hardware manufacturer, but
especially DEC. There is an entire genre of jokes about DEC field
circus engineers:
Q: How can you recognize a DEC field circus engineer
with a flat tire?
A: He's changing one tire at a time to see which one is flat.
Q: How can you recognize a DEC field circus engineer
who is out of gas?
A: He's changing one tire at a time to see which one is flat.
[See {Easter egging} for additional insight on these jokes.]
There is also the `Field Circus Cheer' (from the {plan file} for
DEC on MIT-AI):
Maynard! Maynard!
Don't mess with us!
We're mean and we're tough!
If you get us confused
We'll screw up your stuff.
(DEC's service HQ is located in Maynard, Massachusetts.)
:field servoid: [play on `android'] /fee'ld ser'voyd/ /n./
Representative of a field service organization (see {field
circus}). This has many of the implications of {droid}.
:Fight-o-net: /n./ [FidoNet] Deliberate distortion of {FidoNet},
often applied after a flurry of {flamage} in a particular
{echo}, especially the SYSOP echo or Fidonews (see {'Snooze}).
:File Attach: [FidoNet] 1. /n./ A file sent along with a mail
message from one BBS to another. 2. /vt./ Sending someone a file
by
using the File Attach option in a BBS mailer.
:File Request: [FidoNet] 1. /n./ The {FidoNet} equivalent of
{FTP}, in which one BBS system automatically dials another and
{snarf}s one or more files. Often abbreviated `FReq'; files
are often announced as being "available for FReq" in the same way
that files are announced as being "available for/by anonymous
FTP" on the Internet. 2. /vt./ The act of getting a copy of a file
by using the File Request option of the BBS mailer.
:file signature: /n./ A {magic number}, sense 3.
:filk: /filk/ /n.,v./ [from SF fandom, where a typo for
`folk' was adopted as a new word] A popular or folk song with
lyrics revised or completely new lyrics, intended for humorous
effect when read, and/or to be sung late at night at SF
conventions. There is a flourishing subgenre of these called
`computer filks', written by hackers and often containing rather
sophisticated technical humor. See {double bucky} for an
example. Compare {grilf}, {hing} and {newsfroup}.
:film at 11: [MIT: in parody of TV newscasters] 1. Used in
conversation to announce ordinary events, with a sarcastic
implication that these events are earth-shattering. "{{ITS}}
crashes; film at 11." "Bug found in scheduler; film at 11."
2. Also widely used outside MIT to indicate that additional
information will be available at some future time, *without*
the implication of anything particularly ordinary about the
referenced event. For example, "The mail file server died this
morning; we found garbage all over the root directory. Film at
11." would indicate that a major failure had occurred but that the
people working on it have no additional information about it as
yet; use of the phrase in this way suggests gently that the problem
is liable to be fixed more quickly if the people doing the fixing
can spend time doing the fixing rather than responding to
questions, the answers to which will appear on the normal "11:00
news", if people will just be patient.
:filter: /n./ [orig. {{Unix}}, now also in {{MS-DOS}}] A
program that processes an input data stream into an output data
stream in some well-defined way, and does no I/O to anywhere else
except possibly on error conditions; one designed to be used as a
stage in a `pipeline' (see {plumbing}). Compare {sponge}.
:Finagle's Law: /n./ The generalized or `folk' version of
{Murphy's Law}, fully named "Finagle's Law of Dynamic
Negatives" and usually rendered "Anything that can go wrong,
will". One variant favored among hackers is "The perversity of
the Universe tends towards a maximum" (but see also {Hanlon's
Razor}). The label `Finagle's Law' was popularized by SF author
Larry Niven in several stories depicting a frontier culture of
asteroid miners; this `Belter' culture professed a religion
and/or running joke involving the worship of the dread god Finagle
and his mad prophet Murphy. Some technical and scientific cultures
(e.g., paleontologists) know it under the name `Sod's Law'; this
usage may be more common in Great Britain.
:fine: /adj./ [WPI] Good, but not good enough to be {cuspy}.
The word `fine' is used elsewhere, of course, but without the
implicit comparison to the higher level implied by {cuspy}.
:finger: [WAITS, via BSD Unix] 1. /n./ A program that displays
information about a particular user or all users logged on the
system, or a remote system. Typically shows full name, last login
time, idle time, terminal line, and terminal location (where
applicable). May also display a {plan file} left by the user
(see also {Hacking X for Y}). 2. /vt./ To apply finger to a
username. 3. /vt./ By extension, to check a human's current state
by
any means. "Foodp?" "T!" "OK, finger Lisa and see if she's
idle." 4. Any picture (composed of ASCII characters) depicting
`the finger'. Originally a humorous component of one's plan file
to deter the curious fingerer (sense 2), it has entered the arsenal
of some {flamer}s.
:finger trouble: /n./ Mistyping, typos, or generalized keyboard
incompetence (this is surprisingly common among hackers, given the
amount of time they spend at keyboards). "I keep putting colons at
the end of statements instead of semicolons", "Finger trouble
again, eh?".
:finger-pointing syndrome: /n./ All-too-frequent result of
bugs, esp. in new or experimental configurations. The hardware
vendor points a finger at the software. The software vendor points
a finger at the hardware. All the poor users get is the finger.
:finn: /v./ [IRC] To pull rank on somebody based on the amount
of time one has spent on {IRC}. The term derives from the fact
that IRC was originally written in Finland in 1987. There may be
some influence from the `Finn' character in William Gibson's
seminal cyberpunk novel "Count Zero", who at one point says to
another (much younger) character "I have a pair of shoes older
than you are, so shut up!"
:firebottle: /n./ A large, primitive, power-hungry active
electrical device, similar in function to a FET but constructed out
of glass, metal, and vacuum. Characterized by high cost, low
density, low reliability, high-temperature operation, and high
power dissipation. Sometimes mistakenly called a `tube' in the
U.S. or a `valve' in England; another hackish term is
{glassfet}.
:firefighting: /n./ 1. What sysadmins have to do to correct
sudden operational problems. An opposite of hacking. "Been
hacking your new newsreader?" "No, a power glitch hosed the
network and I spent the whole afternoon fighting fires." 2. The
act of throwing lots of manpower and late nights at a project,
esp. to get it out before deadline. See also {gang bang},
{Mongolian Hordes technique}; however, the term `firefighting'
connotes that the effort is going into chasing bugs rather than
adding features.
:firehose syndrome: /n./ In mainstream folklore it is observed
that trying to drink from a firehose can be a good way to rip your
lips off. On computer networks, the absence or failure of flow
control mechanisms can lead to situations in which the sending
system sprays a massive flood of packets at an unfortunate
receiving system, more than it can handle. Compare {overrun},
{buffer overflow}.
:firewall code: /n./ 1. The code you put in a system (say, a
telephone switch) to make sure that the users can't do any
damage. Since users always want to be able to do everything but
never want to suffer for any mistakes, the construction of a
firewall is a question not only of defensive coding but also of
interface presentation, so that users don't even get curious about
those corners of a system where they can burn themselves.
2. Any sanity check inserted to catch a {can't happen} error.
Wise programmers often change code to fix a bug twice: once to fix
the bug, and once to insert a firewall which would have arrested
the bug before it did quite as much damage.
:firewall machine: /n./ A dedicated gateway machine with
special security precautions on it, used to service outside network
connections and dial-in lines. The idea is to protect a cluster of
more loosely administered machines hidden behind it from
{cracker}s. The typical firewall is an inexpensive micro-based
Unix box kept clean of critical data, with a bunch of modems and
public network ports on it but just one carefully watched
connection back to the rest of the cluster. The special
precautions may include threat monitoring, callback, and even a
complete {iron box} keyable to particular incoming IDs or
activity patterns. Syn. {flytrap}, {Venus flytrap}.
[When first coined in the mid-1980s this term was pure jargon. Now
(1996) it is borderline techspeak, and may have to be dropped from
this lexicon before very long --ESR]
:fireworks mode: /n./ The mode a machine is sometimes said to
be in when it is performing a {crash and burn} operation.
:firmy: /fer'mee/ /n./ Syn. {stiffy} (a 3.5-inch floppy
disk).
:fish: /n./ [Adelaide University, Australia] 1. Another
{metasyntactic variable}. See {foo}. Derived originally
from the Monty Python skit in the middle of "The Meaning of
Life" entitled "Find the Fish". 2. A pun for `microfiche'.
A microfiche file cabinet may be referred to as a `fish tank'.
:FISH queue: /n./ [acronym, by analogy with FIFO (First In,
First Out)] `First In, Still Here'. A joking way of pointing out
that processing of a particular sequence of events or requests has
stopped dead. Also `FISH mode' and `FISHnet'; the latter may
be applied to any network that is running really slowly or
exhibiting extreme flakiness.
:FITNR: // /adj./ [Thinking Machines, Inc.] Fixed In The
Often Next Release. A written-only notation attached to bug
reports.
wishful thinking.
:fix: /n.,v./ What one does when a problem has been reported
too many times to be ignored.
:FIXME: /imp./ A standard tag often put in C comments near a
piece of code that needs work. The point of doing so is that a
`grep' or a similar pattern-matching tool can find all such
places quickly.
/* FIXME: note this is common in {GNU} code. */
Compare {XXX}.
:flag: /n./ A variable or quantity that can take on one of two
values; a bit, particularly one that is used to indicate one of two
outcomes or is used to control which of two things is to be done.
"This flag controls whether to clear the screen before printing
the message." "The program status word contains several flag
bits." Used of humans analogously to {bit}. See also
{hidden flag}, {mode bit}.
:flag day: /n./ A software change that is neither forward- nor
backward-compatible, and which is costly to make and costly to
reverse. "Can we install that without causing a flag day for all
users?" This term has nothing to do with the use of the word
{flag} to mean a variable that has two values. It came into use
when a massive change was made to the {{Multics}} timesharing
system to convert from the old ASCII code to the new one; this was
scheduled for Flag Day (a U.S. holiday), June 14, 1966. See also
{backward combatability}.
:flaky: /adj./ (var sp. `flakey') Subject to frequent
{lossage}. This use is of course related to the common slang
use of the word to describe a person as eccentric, crazy, or just
unreliable. A system that is flaky is working, sort of -- enough
that you are tempted to try to use it -- but fails frequently
enough that the odds in favor of finishing what you start are low.
Commonwealth hackish prefers {dodgy} or {wonky}.
:flamage: /flay'm*j/ /n./ Flaming verbiage, esp. high-noise,
low-signal postings to {Usenet} or other electronic {fora}.
Often in the phrase `the usual flamage'. `Flaming' is the act
itself; `flamage' the content; a `flame' is a single flaming
message. See {flame}, also {dahmum}.
:flame: 1. /vi./ To post an email message intended to insult
and provoke. 2. /vi./ To speak incessantly and/or rabidly on some
relatively uninteresting subject or with a patently ridiculous
attitude. 3. /vt./ Either of senses 1 or 2, directed with
hostility
at a particular person or people. 4. /n./ An instance of flaming.
When a discussion degenerates into useless controversy, one might
tell the participants "Now you're just flaming" or "Stop all
that flamage!" to try to get them to cool down (so to speak).
The term may have been independently invented at several different
places. It has been reported from MIT, Carleton College and RPI
(among many other places) from as far back as 1969.
It is possible that the hackish sense of `flame' is much older than
that. The poet Chaucer was also what passed for a wizard hacker in
his time; he wrote a treatise on the astrolabe, the most advanced
computing device of the day. In Chaucer's "Troilus and
Cressida", Cressida laments her inability to grasp the proof of a
particular mathematical theorem; her uncle Pandarus then observes
that it's called "the fleminge of wrecches." This phrase seems
to have been intended in context as "that which puts the wretches
to flight" but was probably just as ambiguous in Middle English as
"the flaming of wretches" would be today. One suspects that
Chaucer would feel right at home on Usenet.
:flame bait: /n./ A posting intended to trigger a {flame
war}, or one that invites flames in reply. See also {troll}.
:flame on: vi.,/interj./ 1. To begin to {flame}. The
punning reference to Marvel Comics's Human Torch is no longer
widely recognized. 2. To continue to flame. See {rave},
{burble}.
:flame war: /n./ (var. `flamewar') An acrimonious dispute,
especially when conducted on a public electronic forum such as
{Usenet}.
:flamer: /n./ One who habitually {flame}s. Said esp. of
obnoxious {Usenet} personalities.
:flap: /vt./ 1. To unload a DECtape (so it goes flap, flap,
flap...). Old-time hackers at MIT tell of the days when the
disk was device 0 and {microtape}s were 1, 2,... and
attempting to flap device 0 would instead start a motor banging
inside a cabinet near the disk. 2. By extension, to unload any
magnetic tape. See also {macrotape}. Modern cartridge tapes no
longer actually flap, but the usage has remained. (The term could
well be re-applied to DEC's TK50 cartridge tape drive, a
spectacularly misengineered contraption which makes a loud flapping
sound, almost like an old reel-type lawnmower, in one of its many
tape-eating failure modes.)
:flarp: /flarp/ /n./ [Rutgers University] Yet another
{metasyntactic variable} (see {foo}). Among those who use
it, it is associated with a legend that any program not containing
the word `flarp' somewhere will not work. The legend is
discreetly silent on the reliability of programs which *do*
contain the magic word.
:flat: /adj./ 1. Lacking any complex internal structure.
"That {bitty box} has only a flat filesystem, not a
hierarchical one." The verb form is {flatten}. 2. Said of a
memory architecture (like that of the VAX or 680x0) that is one big
linear address space (typically with each possible value of a
processor register corresponding to a unique core address), as
opposed to a `segmented' architecture (like that of the 80x86) in
which addresses are composed from a base-register/offset pair
(segmented designs are generally considered {cretinous}).
Note that sense 1 (at least with respect to filesystems) is usually
used pejoratively, while sense 2 is a {Good Thing}.
:flat-ASCII: /adj./ Said of a text file that contains only
7-bit ASCII characters and uses only ASCII-standard control
characters (that is, has no embedded codes specific to a particular
text formatter markup language, or output device, and no
{meta}-characters). Syn. {plain-ASCII}. Compare
{flat-file}.
:flat-file: /adj./ A {flatten}ed representation of some
database or tree or network structure as a single file from which
the structure could implicitly be rebuilt, esp. one in
{flat-ASCII} form. See also {sharchive}.
:flatten: /vt./ To remove structural information, esp. to
filter something with an implicit tree structure into a simple
sequence of leaves; also tends to imply mapping to
{flat-ASCII}. "This code flattens an expression with
parentheses into an equivalent {canonical} form."
:flavor: /n./ 1. Variety, type, kind. "DDT commands come in
two flavors." "These lights come in two flavors, big red ones
and small green ones." See {vanilla}. 2. The attribute that
causes something to be {flavorful}. Usually used in the phrase
"yields additional flavor". "This convention yields additional
flavor by allowing one to print text either right-side-up or
upside-down." See {vanilla}. This usage was certainly
reinforced by the terminology of quantum chromodynamics, in which
quarks (the constituents of, e.g., protons) come in six flavors
(up, down, strange, charm, top, bottom) and three colors (red,
blue, green) -- however, hackish use of `flavor' at MIT predated
QCD. 3. The term for `class' (in the object-oriented sense) in
the LISP Machine Flavors system. Though the Flavors design has
been superseded (notably by the Common LISP CLOS facility), the
term `flavor' is still used as a general synonym for `class'
by some LISP hackers.
:flavorful: /adj./ Full of {flavor} (sense 2); esthetically
pleasing. See {random} and {losing} for antonyms. See also
the entries for {taste} and {elegant}.
:flippy: /flip'ee/ /n./ A single-sided floppy disk altered
for double-sided use by addition of a second write-notch, so called
because it must be flipped over for the second side to be
accessible. No longer common.
:flood: /v./ [IRC] To dump large amounts of text onto an
{IRC} channel. This is especially rude when the text is
uninteresting and the other users are trying to carry on a serious
conversation.
:flowchart:: /n./ [techspeak] An archaic form of visual
control-flow specification employing arrows and `speech
balloons' of various shapes. Hackers never use flowcharts,
consider them extremely silly, and associate them with {COBOL}
programmers, {card walloper}s, and other lower forms of life.
This attitude follows from the observations that flowcharts (at
least from a hacker's point of view) are no easier to read than
code, are less precise, and tend to fall out of sync with the code
(so that they either obfuscate it rather than explaining it, or
require extra maintenance effort that doesn't improve the code).
See also {pdl}, sense 3.
:flower key: /n./ [Mac users] See {feature key}.
:flush: /v./ 1. To delete something, usually superfluous, or to
abort an operation. "All that nonsense has been flushed."
2. [Unix/C] To force buffered I/O to disk, as with an
`fflush(3)' call. This is *not* an abort or deletion as
in sense 1, but a demand for early completion! 3. To leave at the
end of a day's work (as opposed to leaving for a meal). "I'm
going to flush now." "Time to flush." 4. To exclude someone
from an activity, or to ignore a person.
`Flush' was standard ITS terminology for aborting an output
operation; one spoke of the text that would have been printed, but
was not, as having been flushed. It is speculated that this term
arose from a vivid image of flushing unwanted characters by hosing
down the internal output buffer, washing the characters away before
they could be printed. The Unix/C usage, on the other hand, was
propagated by the `fflush(3)' call in C's standard I/O library
(though it is reported to have been in use among BLISS programmers
at DEC and on Honeywell and IBM machines as far back as 1965).
Unix/C hackers find the ITS usage confusing, and vice versa.
:flypage: /fli:'payj/ /n./ (alt. `fly page') A {banner},
sense 1.
:Flyspeck 3: /n./ Standard name for any font that is so tiny as
to be unreadable (by analogy with names like `Helvetica 10' for
10-point Helvetica). Legal boilerplate is usually printed in
Flyspeck 3.
:flytrap: /n./ See {firewall machine}.
:FM: /F-M/ /n./ 1. *Not* `Frequency Modulation' but
rather an abbreviation for `Fucking Manual', the back-formation
from {RTFM}. Used to refer to the manual itself in the
{RTFM}. "Have you seen the Networking FM lately?"
2. Abbreviation for "Fucking Magic", used in the sense of
{black magic}.
:fnord: /n./ [from the "Illuminatus Trilogy"] 1. A word
used in email and news postings to tag utterances as surrealist
mind-play or humor, esp. in connection with {Discordianism} and
elaborate conspiracy theories. "I heard that David Koresh is
sharing an apartment in Argentina with Hitler. (Fnord.)" "Where
can I fnord get the Principia Discordia from?" 2. A
{metasyntactic variable}, commonly used by hackers with ties to
{Discordianism} or the {Church of the SubGenius}.
:FOAF: // /n./ [Usenet] Acronym for `Friend Of A Friend'.
The source of an unverified, possibly untrue story. This term was
not originated by hackers (it is used in Jan Brunvand's books on
urban folklore), but is much better recognized on Usenet and
elsewhere than in mainstream English.
:FOD: /fod/ /v./ [Abbreviation for `Finger of Death',
originally a spell-name from fantasy gaming] To terminate with
extreme prejudice and with no regard for other people. From
{MUD}s where the wizard command `FOD <player>' results in the
immediate and total death of <player>, usually as punishment for
obnoxious behavior. This usage migrated to other circumstances,
such as "I'm going to fod the process that is burning all the
cycles." Compare {gun}.
In aviation, FOD means Foreign Object Damage, e.g., what happens
when a jet engine sucks up a rock on the runway or a bird in
flight. Finger of Death is a distressingly apt description of
what this generally does to the engine.
:fold case: /v./ See {smash case}. This term tends to be
used more by people who don't mind that their tools smash case. It
also connotes that case is ignored but case distinctions in data
processed by the tool in question aren't destroyed.
:followup: /n./ On Usenet, a {posting} generated in response
to another posting (as opposed to a {reply}, which goes by email
rather than being broadcast). Followups include the ID of the
{parent message} in their headers; smart news-readers can use
this information to present Usenet news in `conversation'
sequence rather than order-of-arrival. See {thread}.
:fontology: /n./ [XEROX PARC] The body of knowledge dealing
with the construction and use of new fonts (e.g., for window
systems and typesetting software). It has been said that fontology
recapitulates file-ogeny.
[Unfortunately, this reference to the embryological dictum that
"Ontogeny recapitulates phylogeny" is not merely a joke. On the
Macintosh, for example, System 7 has to go through contortions to
compensate for an earlier design error that created a whole
different set of abstractions for fonts parallel to `files' and
`folders' --ESR]
:foo: /foo/ 1. /interj./ Term of disgust. 2. Used very
generally as a sample name for absolutely anything, esp. programs
and files (esp. scratch files). 3. First on the standard list of
{metasyntactic variable}s used in syntax examples. See also
{bar}, {baz}, {qux}, {quux}, {corge}, {grault},
{garply}, {waldo}, {fred}, {plugh}, {xyzzy},
{thud}.
The etymology of hackish `foo' is obscure. When used in
connection with `bar' it is generally traced to the WWII-era Army
slang acronym FUBAR (`Fucked Up Beyond All Repair'), later
bowdlerized to {foobar}. (See also {FUBAR}.)
However, the use of the word `foo' itself has more complicated
antecedents, including a long history in comic strips and cartoons.
The old "Smokey Stover" comic strips by Bill Holman often
included the word `FOO', in particular on license plates of cars;
allegedly, `FOO' and `BAR' also occurred in Walt Kelly's
"Pogo" strips. In the 1938 cartoon "The Daffy Doc", a very
early version of Daffy Duck holds up a sign saying "SILENCE IS
FOO!"; oddly, this seems to refer to some approving or positive
affirmative use of foo. It has been suggested that this might be
related to the Chinese word `fu' (sometimes transliterated
`foo'), which can mean "happiness" when spoken with the proper
tone (the lion-dog guardians flanking the steps of many Chinese
restaurants are properly called "fu dogs").
Paul Dickson's excellent book "Words" (Dell, 1982, ISBN
0-440-52260-7) traces "Foo" to an unspecified British naval
magazine in 1946, quoting as follows: "Mr. Foo is a mysterious
Second World War product, gifted with bitter omniscience and
sarcasm."
Other sources confirm that `FOO' was a semi-legendary subject of
WWII British-army graffiti more-or-less equivalent to the American
Kilroy. Where British troops went, the graffito "FOO was here"
or something similar showed up. Several slang dictionaries aver
that FOO probably came from Forward Observation Officer. In this
connection, the later American military slang `foo fighters' is
interesting; at least as far back as the 1950s, radar operators
used it for the kind of mysterious or spurious trace that would
later be called a UFO (the older term resurfaced in popular
American usage in 1995 via the name of one of the better
grunge-rock bands).
Earlier versions of this entry suggested the possibility that
hacker usage actually sprang from "FOO, Lampoons and Parody",
the title of a comic book first issued in September 1958, a joint
project of Charles and Robert Crumb. Though Robert Crumb (then in
his mid-teens) later became one of the most important and
influential artists in underground comics, this venture was hardly
a success; indeed, the brothers later burned most of the existing
copies in disgust. The title FOO was featured in large letters on
the front cover. However, very few copies of this comic actually
circulated, and students of Crumb's `oeuvre' have established
that this title was a reference to the earlier Smokey Stover
comics.
An old-time member reports that in the 1959 "Dictionary of the
TMRC Language", compiled at {TMRC}, there was an entry that went
something like this:
FOO: The first syllable of the sacred chant phrase "FOO MANE
PADME HUM." Our first obligation is to keep the foo counters
turning.
For more about the legendary foo counters, see {TMRC}. Almost
the entire staff of what later became the MIT AI Lab was involved
with TMRC, and probably picked the word up there.
Very probably, hackish `foo' had no single origin and derives
through all these channels from Yiddish `feh' and/or English
`fooey'.
:foobar: /n./ Another common {metasyntactic variable}; see
{foo}. Hackers do *not* generally use this to mean
{FUBAR} in either the slang or jargon sense.
:fool: /n./ As used by hackers, specifically describes a person
who habitually reasons from obviously or demonstrably incorrect
premises and cannot be persuaded by evidence to do otherwise; it is
not generally used in its other senses, i.e., to describe a person
with a native incapacity to reason correctly, or a clown. Indeed,
in hackish experience many fools are capable of reasoning all too
effectively in executing their errors. See also {cretin},
{loser}, {fool file, the}.
The Algol 68-R compiler used to initialize its storage to the
character string "F00LF00LF00LF00L..." because as a pointer or as
a floating point number it caused a crash, and as an integer or a
character string it was very recognizable in a dump. Sadly, one
day a very senior professor at Nottingham University wrote a
program that called him a fool. He proceeded to demonstrate the
correctness of this assertion by lobbying the university (not quite
successfully) to forbid the use of Algol on its computers. See
also {DEADBEEF}.
:fool file, the: /n./ [Usenet] A notional repository of all the
most dramatically and abysmally stupid utterances ever. An entire
subgenre of {sig block}s consists of the header "From the fool
file:" followed by some quote the poster wishes to represent as an
immortal gem of dimwittery; for this usage to be really effective,
the quote has to be so obviously wrong as to be laughable. More
than one Usenetter has achieved an unwanted notoriety by being
quoted in this way.
:Foonly: /n./ 1. The {PDP-10} successor that was to have
been built by the Super Foonly project at the Stanford Artificial
Intelligence Laboratory along with a new operating system. The
intention was to leapfrog from the old DEC timesharing system SAIL
was then running to a new generation, bypassing TENEX which at that
time was the ARPANET standard. ARPA funding for both the Super
Foonly and the new operating system was cut in 1974. Most of the
design team went to DEC and contributed greatly to the design of
the PDP-10 model KL10. 2. The name of the company formed by Dave
Poole, one of the principal Super Foonly designers, and one of
hackerdom's more colorful personalities. Many people remember the
parrot which sat on Poole's shoulder and was a regular companion.
3. Any of the machines built by Poole's company. The first was the
F-1 (a.k.a. Super Foonly), which was the computational engine used
to create the graphics in the movie "TRON". The F-1 was the
fastest PDP-10 ever built, but only one was ever made. The effort
drained Foonly of its financial resources, and the company turned
towards building smaller, slower, and much less expensive machines.
Unfortunately, these ran not the popular {TOPS-20} but a TENEX
variant called Foonex; this seriously limited their market. Also,
the machines shipped were actually wire-wrapped engineering
prototypes requiring individual attention from more than usually
competent site personnel, and thus had significant reliability
problems. Poole's legendary temper and unwillingness to suffer
fools gladly did not help matters. By the time of the Jupiter
project cancellation in 1983, Foonly's proposal to build another
F-1 was eclipsed by the {Mars}, and the company never quite
recovered. See the {Mars} entry for the continuation and moral
of this story.
:footprint: /n./ 1. The floor or desk area taken up by a piece
of hardware. 2. [IBM] The audit trail (if any) left by a crashed
program (often in plural, `footprints'). See also {toeprint}.
3. "RAM footprint": The minimum amount of RAM which an OS or other
program takes; this figure gives one one an idea of how much will
be left for other applications. How actively this RAM is used is
another matter entirely. Recent tendencies to featuritis and
software bloat can expand the RAM footprint of an OS to the point
of making it nearly unusable in practice. [This problem is,
thankfully, limited to operating systems so stupid that they don't
do virtual memory -- ESR]
:for free: /adj./ Said of a capability of a programming
language or hardware that is available by its design without
needing cleverness to implement: "In APL, we get the matrix
operations for free." "And owing to the way revisions are stored
in this system, you get revision trees for free." The term
usually refers to a serendipitous feature of doing things a certain
way (compare {big win}), but it may refer to an intentional but
secondary feature.
:for the rest of us: /adj./ [from the Mac slogan "The computer
for the rest of us"] 1. Used to describe a {spiffy} product
whose affordability shames other comparable products, or (more
often) used sarcastically to describe {spiffy} but very
overpriced products. 2. Describes a program with a limited
interface, deliberately limited capabilities, non-orthogonality,
inability to compose primitives, or any other limitation designed
to not `confuse' a naive user. This places an upper bound on
how far that user can go before the program begins to get in the
way of the task instead of helping accomplish it. Used in
reference to Macintosh software which doesn't provide obvious
capabilities because it is thought that the poor lusers might not
be able to handle them. Becomes `the rest of *them*' when
used in third-party reference; thus, "Yes, it is an attractive
program, but it's designed for The Rest Of Them" means a program
that superficially looks neat but has no depth beyond the surface
flash. See also {WIMP environment}, {Macintrash},
{point-and-drool interface}, {user-friendly}.
:for values of: [MIT] A common rhetorical maneuver at MIT is
to use any of the canonical {random numbers} as placeholders for
variables. "The max function takes 42 arguments, for arbitrary
values of 42." "There are 69 ways to leave your lover, for 69 =
50." This is especially likely when the speaker has uttered a
random number and realizes that it was not recognized as such, but
even `non-random' numbers are occasionally used in this fashion.
A related joke is that pi equals 3 -- for small values
of pi and large values of 3.
Historical note: at MIT this usage has traditionally been traced to
the programming language MAD (Michigan Algorithm Decoder), an
Algol-58-like language that was the most common choice among
mainstream (non-hacker) users at MIT in the mid-60s. It inherited
from Algol-58 a control structure FOR VALUES OF X = 3, 7, 99 DO
... that would repeat the indicated instructions for each value in
the list (unlike the usual FOR that only works for arithmetic
sequences of values). MAD is long extinct, but similar
for-constructs still flourish (e.g., in Unix's shell languages).
:fora: /pl.n./ Plural of {forum}.
:foreground: /vt./ [Unix] To bring a task to the top of one's
{stack} for immediate processing, and hackers often use it in
this sense for non-computer tasks. "If your presentation is due
next week, I guess I'd better foreground writing up the design
document."
Technically, on a time-sharing system, a task executing in
foreground is one able to accept input from and return output to
the user; oppose {background}. Nowadays this term is primarily
associated with {{Unix}}, but it appears first to have been used
in this sense on OS/360. Normally, there is only one foreground
task per terminal (or terminal window); having multiple processes
simultaneously reading the keyboard is a good way to {lose}.
:fork bomb: /n./ [Unix] A particular species of {wabbit}
that can be written in one line of C (`main()
{for(;;)fork();}') or shell (`$0 & $0 &') on any Unix system,
or occasionally created by an egregious coding bug. A fork bomb
process `explodes' by recursively spawning copies of itself
(using the Unix system call `fork(2)'). Eventually it eats
all the process table entries and effectively wedges the system.
Fortunately, fork bombs are relatively easy to spot and kill, so
creating one deliberately seldom accomplishes more than to bring
the just wrath of the gods down upon the perpetrator. See also
{logic bomb}.
:forked: /adj./ [Unix; prob. influenced by a mainstream
expletive] Terminally slow, or dead. Originated when one system
was slowed to a snail's pace by an inadvertent {fork bomb}.
:Fortrash: /for'trash/ /n./ Hackerism for the FORTRAN
(FORmula TRANslator) language, referring to its primitive design,
gross and irregular syntax, limited control constructs, and
slippery, exception-filled semantics.
:fortune cookie: /n./ [WAITS, via Unix] A random quote, item of
trivia, joke, or maxim printed to the user's tty at login time or
(less commonly) at logout time. Items from this lexicon have often
been used as fortune cookies. See {cookie file}.
:forum: /n./ [Usenet, GEnie, CI$; pl. `fora' or `forums']
Any discussion group accessible through a dial-in {BBS}, a
{mailing list}, or a {newsgroup} (see {network, the}). A
forum functions much like a bulletin board; users submit
{posting}s for all to read and discussion ensues. Contrast
real-time chat via {talk mode} or point-to-point personal
{email}.
:fossil: /n./ 1. In software, a misfeature that becomes
understandable only in historical context, as a remnant of times
past retained so as not to break compatibility. Example: the
retention of octal as default base for string escapes in {C}, in
spite of the better match of hexadecimal to ASCII and modern
byte-addressable architectures. See {dusty deck}. 2. More
restrictively, a feature with past but no present utility.
Example: the force-all-caps (LCASE) bits in the V7 and {BSD}
Unix tty driver, designed for use with monocase terminals. (In a
perversion of the usual backward-compatibility goal, this
functionality has actually been expanded and renamed in some later
{USG Unix} releases as the IUCLC and OLCUC bits.) 3. The FOSSIL
(Fido/Opus/Seadog Standard Interface Level) driver specification
for serial-port access to replace the {brain-dead} routines in
the IBM PC ROMs. Fossils are used by most MS-DOS {BBS} software
in preference to the `supported' ROM routines, which do not support
interrupt-driven operation or setting speeds above 9600; the use of
a semistandard FOSSIL library is preferable to the {bare metal}
serial port programming otherwise required. Since the FOSSIL
specification allows additional functionality to be hooked in,
drivers that use the {hook} but do not provide serial-port
access themselves are named with a modifier, as in `video
fossil'.
:four-color glossies: /n./ 1. Literature created by
{marketroid}s that allegedly contains technical specs but which
is in fact as superficial as possible without being totally
{content-free}. "Forget the four-color glossies, give me the
tech ref manuals." Often applied as an indication of
superficiality even when the material is printed on ordinary paper
in black and white. Four-color-glossy manuals are *never*
useful for solving a problem. 2. [rare] Applied by extension to
manual pages that don't contain enough information to diagnose why
the program doesn't produce the expected or desired output.
:fragile: /adj./ Syn {brittle}.
:fred: /n./ 1. The personal name most frequently used as a
{metasyntactic variable} (see {foo}). Allegedly popular
because it's easy for a non-touch-typist to type on a standard
QWERTY keyboard. Unlike {J. Random Hacker} or `J. Random
Loser', this name has no positive or negative loading (but see
{Mbogo, Dr. Fred}). See also {barney}. 2. An acronym for
`Flipping Ridiculous Electronic Device'; other F-verbs may be
substituted for `flipping'.
:frednet: /fred'net/ /n./ Used to refer to some {random}
and uncommon protocol encountered on a network. "We're
implementing bridging in our router to solve the frednet problem."
:freeware: /n./ Free software, often written by enthusiasts and
distributed by users' groups, or via electronic mail, local
bulletin boards, {Usenet}, or other electronic media. At one
time, `freeware' was a trademark of Andrew Fluegelman, the author
of the well-known MS-DOS comm program PC-TALK III. It wasn't
enforced after his mysterious disappearance and presumed death in
1984. See {shareware}, {FRS}.
:freeze: /v./ To lock an evolving software distribution or
document against changes so it can be released with some hope of
stability. Carries the strong implication that the item in
question will `unfreeze' at some future date. "OK, fix that
bug and we'll freeze for release."
There are more specific constructions on this term. A `feature
freeze', for example, locks out modifications intended to introduce
new features but still allows bugfixes and completion of existing
features; a `code freeze' connotes no more changes at all. At
Sun Microsystems and elsewhere, one may also hear references to
`code slush' -- that is, an almost-but-not-quite frozen state.
:fried: /adj./ 1. Non-working due to hardware failure; burnt
out. Especially used of hardware brought down by a `power
glitch' (see {glitch}), {drop-outs}, a short, or some other
electrical event. (Sometimes this literally happens to electronic
circuits! In particular, resistors can burn out and transformers
can melt down, emitting noxious smoke -- see {friode}, {SED}
and {LER}. However, this term is also used metaphorically.)
Compare {frotzed}. 2. Of people, exhausted. Said particularly
of those who continue to work in such a state. Often used as an
explanation or excuse. "Yeah, I know that fix destroyed the file
system, but I was fried when I put it in." Esp. common in
conjunction with `brain': "My brain is fried today, I'm very
short on sleep."
:frink: /frink/ /v./ The unknown ur-verb, fill in your own
meaning. Found esp. on the Usenet newsgroup alt.fan.lemurs,
where it is said that the lemurs know what `frink' means, but
they aren't telling. Compare {gorets}.
:friode: /fri:'ohd/ /n./ [TMRC] A reversible (that is, fused
or blown) diode. Compare {fried}; see also {SED}, {LER}.
:fritterware: /n./ An excess of capability that serves no
productive end. The canonical example is font-diddling software on
the Mac (see {macdink}); the term describes anything that eats
huge amounts of time for quite marginal gains in function but
seduces people into using it anyway. See also {window
shopping}.
:frob: /frob/ 1. /n./ [MIT] The {TMRC} definition was
"FROB = a protruding arm or trunnion"; by metaphoric extension, a
`frob' is any random small thing; an object that you can
comfortably hold in one hand; something you can frob (sense 2).
See {frobnitz}. 2. /vt./ Abbreviated form of {frobnicate}.
3. [from the {MUD} world] A command on some MUDs that changes a
player's experience level (this can be used to make wizards); also,
to request {wizard} privileges on the `professional courtesy'
grounds that one is a wizard elsewhere. The command is actually
`frobnicate' but is universally abbreviated to the shorter form.
:frobnicate: /frob'ni-kayt/ /vt./ [Poss. derived from
{frobnitz}, and usually abbreviated to {frob}, but
`frobnicate' is recognized as the official full form.] To
manipulate or adjust, to tweak. One frequently frobs bits or other
2-state devices. Thus: "Please frob the light switch" (that is,
flip it), but also "Stop frobbing that clasp; you'll break it".
One also sees the construction `to frob a frob'. See {tweak}
and {twiddle}.
Usage: frob, twiddle, and tweak sometimes connote points along a
continuum. `Frob' connotes aimless manipulation; `twiddle'
connotes gross manipulation, often a coarse search for a proper
setting; `tweak' connotes fine-tuning. If someone is turning a
knob on an oscilloscope, then if he's carefully adjusting it, he is
probably tweaking it; if he is just turning it but looking at the
screen, he is probably twiddling it; but if he's just doing it
because turning a knob is fun, he's frobbing it. The variant
`frobnosticate' has been recently reported.
:frobnitz: /frob'nits/, /pl./ `frobnitzem' /frob'nit-zm/ or
`frobni' /frob'ni:/ /n./ [TMRC] An unspecified physical
object, a widget. Also refers to electronic black boxes. This
rare form is usually abbreviated to `frotz', or more commonly to
{frob}. Also used are `frobnule' (/frob'n[y]ool/) and
`frobule' (/frob'yool/). Starting perhaps in 1979, `frobozz'
/fr*-boz'/ (plural: `frobbotzim' /fr*-bot'zm/) has also
become very popular, largely through its exposure as a name via
{Zork}. These variants can also be applied to nonphysical
objects, such as data structures.
Pete Samson, compiler of the original {TMRC} lexicon, adds,
"Under the TMRC [railroad] layout were many storage boxes, managed
(in 1958) by David R. Sawyer. Several had fanciful designations
written on them, such as `Frobnitz Coil Oil'. Perhaps DRS intended
Frobnitz to be a proper name, but the name was quickly taken for
the thing". This was almost certainly the origin of the
term.
:frog: alt. `phrog' 1. /interj./ Term of disgust (we seem
to have a lot of them). 2. Used as a name for just about anything.
See {foo}. 3. /n./ Of things, a crock. 4. /n./ Of people,
somewhere in between a turkey and a toad. 5. `froggy':
/adj./ Similar to {bagbiting}, but milder. "This froggy program
is taking forever to run!"
:frogging: [University of Waterloo] /v./ 1. Partial corruption
of a text file or input stream by some bug or consistent glitch, as
opposed to random events like line noise or media failures. Might
occur, for example, if one bit of each incoming character on a tty
were stuck, so that some characters were correct and others were
not. See {terminak} for a historical example and compare
{dread high-bit disease}. 2. By extension, accidental display
of text in a mode where the output device emits special symbols or
mnemonics rather than conventional ASCII. This often happens, for
example, when using a terminal or comm program on a device like an
IBM PC with a special `high-half' character set and with the
bit-parity assumption wrong. A hacker sufficiently familiar with
ASCII bit patterns might be able to read the display anyway.
:front end: /n./ 1. An intermediary computer that does set-up
and filtering for another (usually more powerful but less friendly)
machine (a `back end'). 2. What you're talking to when you have
a conversation with someone who is making replies without paying
attention. "Look at the dancing elephants!" "Uh-huh." "Do
you know what I just said?" "Sorry, you were talking to the
front end." See also {fepped out}. 3. Software that provides
an interface to another program `behind' it, which may not be as
user-friendly. Probably from analogy with hardware front-ends (see
sense 1) that interfaced with mainframes.
:frotz: /frots/ 1. /n./ See {frobnitz}. 2. `mumble
frotz': An interjection of mildest disgust.
:frotzed: /frotst/ /adj./ {down} because of hardware
problems. Compare {fried}. A machine that is merely frotzed
may be fixable without replacing parts, but a fried machine is more
seriously damaged.
:frowney: /n./ (alt. `frowney face') See {emoticon}.
:FRS: // /n./ Abbreviation for "Freely Redistributable
Software" which entered general use on the Internet in 1995 after
years of low-level confusion over what exactly to call software
written to be passed around and shared (contending terms including
{freeware}, {shareware}, and `sourceware' were never
universally felt to be satisfactory for various subtle reasons).
The first formal conference on freely redistributable software was
held in Cambridge, Massachussetts, in February 1996 (sponsored by
the
Free Software Foundation). The conference organizers used the FRS
abbreviation heavily in its calls for papers and other literature
during 1995; this was probably critical in helping establish the
term.
:fry: 1. /vi./ To fail. Said especially of smoke-producing
hardware failures. More generally, to become non-working. Usage:
never said of software, only of hardware and humans. See
{fried}, {magic smoke}. 2. /vt./ To cause to fail; to
{roach}, {toast}, or {hose} a piece of hardware. Never
used of software or humans, but compare {fried}.
:FSF: /F-S-F/ /abbrev./ Common abbreviation (both spoken and
written) for the name of the Free Software Foundation, a nonprofit
educational association formed to support the {GNU}
project.
:FTP: /F-T-P/, *not* /fit'ip/ 1. [techspeak] /n./ The
File Transfer Protocol for transmitting files between systems on
the Internet. 2. /vt./ To {beam} a file using the File Transfer
Protocol. 3. Sometimes used as a generic even for file transfers
not using {FTP}. "Lemme get a copy of "Wuthering
Heights" ftp'd from uunet."
:FUBAR: /n./ The Failed UniBus Address Register in a VAX. A
good example of how jargon can occasionally be snuck past the
{suit}s; see {foobar}, and {foo} for a fuller etymology.
:fuck me harder: /excl./ Sometimes uttered in response to
egregious misbehavior, esp. in software, and esp. of
misbehaviors which seem unfairly persistent (as though designed in
by the imp of the perverse). Often theatrically elaborated:
"Aiighhh! Fuck me with a piledriver and 16 feet of curare-tipped
wrought-iron fence *and no lubricants*!" The phrase is
sometimes heard abbreviated `FMH' in polite company.
[This entry is an extreme example of the hackish habit of coining
elaborate and evocative terms for lossage. Here we see a quite
self-conscious parody of mainstream expletives that has become a
running gag in part of the hacker culture; it illustrates the
hackish tendency to turn any situation, even one of extreme
frustration, into an intellectual game (the point being, in this
case, to creatively produce a long-winded description of the
most anatomically absurd mental image possible -- the short forms
implicitly allude to all the ridiculous long forms ever spoken).
Scatological language is actually relatively uncommon among
hackers, and there was some controversy over whether this entry
ought to be included at all. As it reflects a live usage
recognizably peculiar to the hacker culture, we feel it is
in the hackish spirit of truthfulness and opposition to all
forms of censorship to record it here. --ESR & GLS]
:FUD: /fuhd/ /n./ Defined by Gene Amdahl after he left IBM to
found his own company: "FUD is the fear, uncertainty, and doubt
that IBM sales people instill in the minds of potential customers
who might be considering [Amdahl] products." The idea, of course,
was to persuade them to go with safe IBM gear rather than with
competitors' equipment. This implicit coercion was traditionally
accomplished by promising that Good Things would happen to people
who stuck with IBM, but Dark Shadows loomed over the future of
competitors' equipment or software. See {IBM}.
:FUD wars: /fuhd worz/ /n./ [from {FUD}] Political
posturing engaged in by hardware and software vendors ostensibly
committed to standardization but actually willing to fragment the
market to protect their own shares. The Unix International vs.
OSF conflict is but one outstanding example.
:fudge: 1. /vt./ To perform in an incomplete but marginally
acceptable way, particularly with respect to the writing of a
program. "I didn't feel like going through that pain and
suffering, so I fudged it -- I'll fix it later." 2. /n./ The
resulting code.
:fudge factor: /n./ A value or parameter that is varied in an
ad hoc way to produce the desired result. The terms `tolerance'
and {slop} are also used, though these usually indicate a
one-sided leeway, such as a buffer that is made larger than
necessary because one isn't sure exactly how large it needs to be,
and it is better to waste a little space than to lose completely
for not having enough. A fudge factor, on the other hand, can
often be tweaked in more than one direction. A good example is the
`fuzz' typically allowed in floating-point calculations: two
numbers being compared for equality must be allowed to differ by a
small amount; if that amount is too small, a computation may never
terminate, while if it is too large, results will be needlessly
inaccurate. Fudge factors are frequently adjusted incorrectly by
programmers who don't fully understand their import. See also
{coefficient of X}.
:fuel up: /vi./ To eat or drink hurriedly in order to get back
to hacking. "Food-p?" "Yeah, let's fuel up." "Time for a
{great-wall}!" See also {{oriental food}}.
:Full Monty, the: /n./ See {monty}, sense 2.
:fum: /n./ [XEROX PARC] At PARC, often the third of the
standard {metasyntactic variable}s (after {foo} and
{bar}). Competes with {baz}, which is more common outside
PARC.
:funky: /adj./ Said of something that functions, but in a
slightly strange, klugey way. It does the job and would be
difficult to change, so its obvious non-optimality is left alone.
Often used to describe interfaces. The more bugs something has
that nobody has bothered to fix because workarounds are easier, the
funkier it is. {TECO} and UUCP are funky. The Intel i860's
exception handling is extraordinarily funky. Most standards
acquire funkiness as they age. "The new mailer is installed, but
is still somewhat funky; if it bounces your mail for no reason, try
resubmitting it." "This UART is pretty funky. The data ready
line is active-high in interrupt mode and active-low in DMA mode."
:funny money: /n./ 1. Notional `dollar' units of computing
time and/or storage handed to students at the beginning of a
computer course; also called `play money' or `purple money' (in
implicit opposition to real or `green' money). In New Zealand
and Germany the odd usage `paper money' has been recorded; in
Germany, the particularly amusing synonym `transfer ruble'
commemmorates the funny money used for trade between COMECON
countries back when the Soviet Bloc still existed. When your funny
money ran out, your account froze and you needed to go to a
professor to get more. Fortunately, the plunging cost of
timesharing cycles has made this less common. The amounts
allocated were almost invariably too small, even for the
non-hackers who wanted to slide by with minimum work. In extreme
cases, the practice led to small-scale black markets in bootlegged
computer accounts. 2. By extension, phantom money or quantity
tickets of any kind used as a resource-allocation hack within a
system. Antonym: `real money'.
:furrfu: // /excl./ [Usenet] Written-only equivalent of
"Sheesh!"; it is, in fact, "sheesh" modified by {rot13}.
Evolved in mid-1992 as a response to notably silly postings
repeating urban myths on the Usenet newsgroup
alt.folklore.urban, after some posters complained that
"Sheesh!" as a response to {newbie}s was being overused. See
also {FOAF}.
:fuzzball: /n./ [TCP/IP hackers] A DEC LSI-11 running a
particular suite of homebrewed software written by Dave Mills and
assorted co-conspirators, used in the early 1980s for Internet
protocol testbedding and experimentation. These were used as
NSFnet backbone sites in its early 56KB-line days; a few were still
active on the Internet as late as mid-1993, doing odd jobs such as
network time service.
= G =
=====
:G: /pref.,suff./ [SI] See {{quantifiers}}.
:g-file: /n./ [Commodore BBS culture] Any file that is written
with the intention of being read by a human rather than a machine,
such as the Jargon File, documentation, humor files, hacker lore,
and technical materials.
This term survives from the nearly forgotten Commodore 64
underground and BBS community. In the early 80s, C-Net had emerged
as the most popular C64 BBS software for systems which encouraged
messaging (as opposed to file transfer). There were three main
options for files: Program files (p-files), which served the same
function as `doors' in today's systems, UD files (the user
upload/download section), and g-files. Anything that was meant to
be read was included in g-files.
:gabriel: /gay'bree-*l/ /n./ [for Dick Gabriel, SAIL LISP
hacker and volleyball fanatic] An unnecessary (in the opinion of
the opponent) stalling tactic, e.g., tying one's shoelaces or
combing one's hair repeatedly, asking the time, etc. Also used to
refer to the perpetrator of such tactics. Also, `pulling a
Gabriel', `Gabriel mode'.
:gag: /vi./ Equivalent to {choke}, but connotes more
disgust. "Hey, this is FORTRAN code. No wonder the C compiler
gagged." See also {barf}.
:gang bang: /n./ The use of large numbers of loosely coupled
programmers in an attempt to wedge a great many features into a
product in a short time. Though there have been memorable gang
bangs (e.g., that over-the-weekend assembler port mentioned in
Steven Levy's "Hackers"), most are perpetrated by large
companies trying to meet deadlines; the inevitable result is
enormous buggy masses of code entirely lacking in
{orthogonal}ity. When market-driven managers make a list of all
the features the competition has and assign one programmer to
implement each, the probability of maintaining a coherent (or even
functional) design goes infinitesimal. See also {firefighting},
{Mongolian Hordes technique}, {Conway's Law}.
:garbage collect: /vi./ (also `garbage collection', n.) See
{GC}.
:garply: /gar'plee/ /n./ [Stanford] Another metasyntactic
variable (see {foo}); once popular among SAIL hackers.
:gas: [as in `gas chamber'] 1. /interj./ A term of disgust
and hatred, implying that gas should be dispensed in generous
quantities, thereby exterminating the source of irritation. "Some
loser just reloaded the system for no reason! Gas!" 2. /interj./
A
suggestion that someone or something ought to be flushed out of
mercy. "The system's getting {wedged} every few minutes.
Gas!" 3. /vt./ To {flush} (sense 1). "You should gas that old
crufty software." 4. [IBM] /n./ Dead space in nonsequentially
organized files that was occupied by data that has since been
deleted; the compression operation that removes it is called
`degassing' (by analogy, perhaps, with the use of the same term
in vacuum technology). 5. [IBM] /n./ Empty space on a disk that
has
been clandestinely allocated against future need.
:gaseous: /adj./ Deserving of being {gas}sed. Disseminated
by Geoff Goodfellow while at SRI; became particularly popular after
the Moscone-Milk killings in San Francisco, when it was learned
that the defendant Dan White (a politician who had supported
Proposition 7) would get the gas chamber under Proposition 7 if
convicted of first-degree murder (he was eventually convicted of
manslaughter).
:gawble: /gaw'bl/ /n./ See {chawmp}.
:GC: /G-C/ [from LISP terminology; `Garbage Collect']
1. /vt./ To clean up and throw away useless things. "I think I'll
GC the top of my desk today." When said of files, this is
equivalent to {GFR}. 2. /vt./ To recycle, reclaim, or put to
another use. 3. /n./ An instantiation of the garbage collector
process.
`Garbage collection' is computer-science techspeak for a
particular class of strategies for dynamically but transparently
reallocating computer memory (i.e., without requiring explicit
allocation and deallocation by higher-level software). One such
strategy involves periodically scanning all the data in memory and
determining what is no longer accessible; useless data items are
then discarded so that the memory they occupy can be recycled and
used for another purpose. Implementations of the LISP language
usually use garbage collection.
In jargon, the full phrase is sometimes heard but the {abbrev}
GC is more frequently used because it is shorter. Note that there
is an ambiguity in usage that has to be resolved by context: "I'm
going to garbage-collect my desk" usually means to clean out the
drawers, but it could also mean to throw away or recycle the desk
itself.
:GCOS:: /jee'kohs/ /n./ A {quick-and-dirty} {clone} of
System/360 DOS that emerged from GE around 1970; originally called
GECOS (the General Electric Comprehensive Operating System). Later
kluged to support primitive timesharing and transaction processing.
After the buyout of GE's computer division by Honeywell, the name
was changed to General Comprehensive Operating System (GCOS).
Other OS groups at Honeywell began referring to it as `God's Chosen
Operating System', allegedly in reaction to the GCOS crowd's
uninformed and snotty attitude about the superiority of their
product. All this might be of zero interest, except for two facts:
(1) The GCOS people won the political war, and this led in the
orphaning and eventual death of Honeywell {{Multics}}, and (2)
GECOS/GCOS left one permanent mark on Unix. Some early Unix
systems at Bell Labs used GCOS machines for print spooling and
various other services; the field added to `/etc/passwd' to
carry GCOS ID information was called the `GECOS field' and
survives today as the `pw_gecos' member used for the user's
full name and other human-ID information. GCOS later played a
major role in keeping Honeywell a dismal also-ran in the mainframe
market, and was itself ditched for Unix in the late 1980s when
Honeywell retired its aging {big iron} designs.
:GECOS:: /jee'kohs/ /n./ See {{GCOS}}.
:gedanken: /g*-dahn'kn/ /adj./ Ungrounded; impractical; not
well-thought-out; untried; untested.
`Gedanken' is a German word for `thought'. A thought
experiment is one you carry out in your head. In physics, the term
`gedanken experiment' is used to refer to an experiment that is
impractical to carry out, but useful to consider because it can
be reasoned about theoretically. (A classic gedanken experiment of
relativity theory involves thinking about a man in an elevator
accelerating through space.) Gedanken experiments are very useful
in physics, but must be used with care. It's too easy to idealize
away some important aspect of the real world in constructing the
`apparatus'.
Among hackers, accordingly, the word has a pejorative connotation.
It is typically used of a project, especially one in artificial
intelligence research, that is written up in grand detail
(typically as a Ph.D. thesis) without ever being implemented to
any great extent. Such a project is usually perpetrated by people
who aren't very good hackers or find programming distasteful or are
just in a hurry. A `gedanken thesis' is usually marked by an
obvious lack of intuition about what is programmable and what is
not, and about what does and does not constitute a clear
specification of an algorithm. See also {AI-complete},
{DWIM}.
:geef: /v./ [ostensibly from `gefingerpoken']
/vt./ Syn. {mung}. See also {blinkenlights}.
:geek code: /n./ (also "Code of the Geeks"). A set of
codes commonly used in {sig block}s to broadcast the interests,
skills, and aspirations of the poster. Features a G at the left
margin followed by numerous letter codes, often suffixed with
plusses or minuses. Because many net users are involved in
computer science, the most common prefix is `GCS'. To see a copy
of the current code, browse
http://krypton.mankato.msus.edu/~hayden/geek.html. Here is a
sample geek code (that or Robert Hayden, the code's inventor) from
that page:
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GED/J d-- s:++>: a- C++(++++)$ ULUO++ P+>+++ L++ !E---- W+(---) N+++
o+ K+++ w+(---) O- M+$>++ V-- PS++(+++)>$ PE++(+)>$ Y++ PGP++ t- 5+++
X++ R+++>$ tv+ b+ DI+++ D+++ G+++++>$ e++$>++++ h r-- y+**
------END GEEK CODE BLOCK------
The geek code originated in 1993; it was inspired (according to the
inventor) by previous "bear", "smurf" and "twink"
style-and-sexual-preference codes from lesbian and gay
{newsgroup}s. It has in turn spawned imitators; there is now
even a "Saturn geek code" for owners of the Saturn car. See also
{computer geek}.
:geek out: /vi./ To temporarily enter techno-nerd mode while in
a non-hackish context, for example at parties held near computer
equipment. Especially used when you need to do or say something
highly technical and don't have time to explain: "Pardon me while
I geek out for a moment." See {computer geek}; see also
{propeller head}.
:gen: /jen/ /n.,v./ Short for {generate}, used frequently
in both spoken and written contexts.
:gender mender: /n./ A cable connector shell with either two
male or two female connectors on it, used to correct the mismatches
that result when some {loser} didn't understand the RS232C
specification and the distinction between DTE and DCE. Used
esp. for RS-232C parts in either the original D-25 or the IBM
PC's bogus D-9 format. Also called `gender bender', `gender
blender', `sex changer', and even `homosexual adapter;'
however, there appears to be some confusion as to whether a `male
homosexual adapter' has pins on both sides (is doubly male) or
sockets on both sides (connects two males).
:General Public Virus: /n./ Pejorative name for some versions
of the {GNU} project {copyleft} or General Public License
(GPL), which requires that any tools or {app}s incorporating
copylefted code must be source-distributed on the same
counter-commercial terms as GNU stuff. Thus it is alleged that the
copyleft `infects' software generated with GNU tools, which may
in turn infect other software that reuses any of its code. The
Free Software Foundation's official position as of January 1991 is
that copyright law limits the scope of the GPL to "programs
textually incorporating significant amounts of GNU code", and that
the `infection' is not passed on to third parties unless actual
GNU source is transmitted (as in, for example, use of the Bison
parser skeleton). Nevertheless, widespread suspicion that the
{copyleft} language is `boobytrapped' has caused many
developers to avoid using GNU tools and the GPL. Recent (July
1991) changes in the language of the version 2.00 license may
eliminate this problem.
:generate: /vt./ To produce something according to an algorithm
or program or set of rules, or as a (possibly unintended) side
effect of the execution of an algorithm or program. The opposite
of {parse}. This term retains its mechanistic connotations
(though often humorously) when used of human behavior. "The guy
is rational most of the time, but mention nuclear energy around him
and he'll generate {infinite} flamage."
:Genius From Mars Technique: /n./ [TMRC] A visionary quality
which enables one to ignore the standard approach and come up with
a totally unexpected new algorithm. An attack on a problem from an
offbeat angle that no one has ever thought of before, but that in
retrospect makes total sense. Compare {grok}, {zen}.
:gensym: /jen'sim/ [from MacLISP for `generated symbol']
1. /v./ To invent a new name for something temporary, in such a way
that the name is almost certainly not in conflict with one already
in use. 2. /n./ The resulting name. The canonical form of a
gensym
is `Gnnnn' where nnnn represents a number; any LISP hacker would
recognize G0093 (for example) as a gensym. 3. A freshly generated
data structure with a gensymmed name. Gensymmed names are useful
for storing or uniquely identifying crufties (see {cruft}).
:Get a life!: /imp./ Hacker-standard way of suggesting that the
person to whom it is directed has succumbed to terminal geekdom
(see {computer geek}). Often heard on {Usenet}, esp. as a
way of suggesting that the target is taking some obscure issue of
{theology} too seriously. This exhortation was popularized by
William Shatner on a "Saturday Night Live" episode in a
speech that ended "Get a *life*!", but some respondents
believe it to have been in use before then. It was certainly in
wide use among hackers for at least five years before achieving
mainstream currency in early 1992.
:Get a real computer!: /imp./ Typical hacker response to news
that somebody is having trouble getting work done on a system that
(a) is single-tasking, (b) has no hard disk, or (c) has an address
space smaller than 16 megabytes. This is as of early 1996; note
that the threshold for `real computer' rises with time. See
{bitty box} and {toy}.
:GFR: /G-F-R/ /vt./ [ITS: from `Grim File Reaper', an ITS and
LISP Machine utility] To remove a file or files according to some
program-automated or semi-automatic manual procedure, especially
one designed to reclaim mass storage space or reduce name-space
clutter (the original GFR actually moved files to tape). Often
generalized to pieces of data below file level. "I used to have
his phone number, but I guess I {GFR}ed it." See also
{prowler}, {reaper}. Compare {GC}, which discards only
provably worthless stuff.
:GIFs at 11: [Fidonet] Fidonet alternative to {film at
11}, especially in echoes (Fidonet topic areas) where uuencoded
GIFs are permitted. Other formats, especially JPEG and MPEG,
may be referenced instead.
:gig: /jig/ or /gig/ /n./ [SI] See {{quantifiers}}.
:giga-: /ji'ga/ or /gi'ga/ /pref./ [SI] See
{{quantifiers}}.
:GIGO: /gi:'goh/ [acronym] 1. `Garbage In, Garbage Out' ---
usually said in response to {luser}s who complain that a program
didn't "do the right thing" when given imperfect input or
otherwise mistreated in some way. Also commonly used to describe
failures in human decision making due to faulty, incomplete, or
imprecise data. 2. `Garbage In, Gospel Out': this more recent
expansion is a sardonic comment on the tendency human beings have
to put excessive trust in `computerized' data.
:gilley: /n./ [Usenet] The unit of analogical bogosity.
According to its originator, the standard for one gilley was "the
act of bogotoficiously comparing the shutting down of 1000 machines
for a day with the killing of one person". The milligilley has
been found to suffice for most normal conversational exchanges.
:gillion: /gil'y*n/ or /jil'y*n/ /n./ [formed from
{giga-} by analogy with mega/million and tera/trillion]
10^9. Same as an American billion or a British `milliard'.
How one pronounces this depends on whether one speaks {giga-}
with a hard or soft `g'.
:GIPS: /gips/ or /jips/ /n./ [analogy with {MIPS}]
Giga-Instructions per Second (also possibly `Gillions of
Instructions per Second'; see {gillion}). In 1991, this is used
of only a handful of highly parallel machines, but this is expected
to change. Compare {KIPS}.
:glark: /glark/ /vt./ To figure something out from context.
"The System III manuals are pretty poor, but you can generally
glark the meaning from context." Interestingly, the word was
originally `glork'; the context was "This gubblick contains many
nonsklarkish English flutzpahs, but the overall pluggandisp can be
glorked [sic] from context" (David Moser, quoted by Douglas
Hofstadter in his "Metamagical Themas" column in the January
1981 "Scientific American"). It is conjectured that hackish
usage mutated the verb to `glark' because {glork} was already
an established jargon term. Compare {grok}, {zen}.
:glass: /n./ [IBM] Synonym for {silicon}.
:glass tty: /glas T-T-Y/ or /glas ti'tee/ /n./ A terminal
that has a display screen but which, because of hardware or
software limitations, behaves like a teletype or some other
printing terminal, thereby combining the disadvantages of both:
like a printing terminal, it can't do fancy display hacks, and like
a display terminal, it doesn't produce hard copy. An example is
the early `dumb' version of Lear-Siegler ADM 3 (without cursor
control). See {tube}, {tty}; compare {dumb terminal},
{smart terminal}. See "{TV Typewriters}" (Appendix
A) for an interesting true story about a glass tty.
:glassfet: /glas'fet/ /n./ [by analogy with MOSFET, the
acronym for `Metal-Oxide-Semiconductor Field-Effect Transistor']
Syn. {firebottle}, a humorous way to refer to a vacuum tube.
:glitch: /glich/ [from German `glitschig' to slip, via
Yiddish `glitshen', to slide or skid] 1. /n./ A sudden interruption
in electric service, sanity, continuity, or program function.
Sometimes recoverable. An interruption in electric service is
specifically called a `power glitch' (also {power hit}), of
grave concern because it usually crashes all the computers. In
jargon, though, a hacker who got to the middle of a sentence and
then forgot how he or she intended to complete it might say,
"Sorry, I just glitched". 2. /vi./ To commit a glitch. See
{gritch}. 3. /vt./ [Stanford] To scroll a display screen, esp.
several lines at a time. {{WAITS}} terminals used to do this in
order to avoid continuous scrolling, which is distracting to the
eye. 4. obs. Same as {magic cookie}, sense 2.
All these uses of `glitch' derive from the specific technical
meaning the term has in the electronic hardware world, where it is
now techspeak. A glitch can occur when the inputs of a circuit
change, and the outputs change to some {random} value for some
very brief time before they settle down to the correct value. If
another circuit inspects the output at just the wrong time, reading
the random value, the results can be very wrong and very hard to
debug (a glitch is one of many causes of electronic {heisenbug}s).
:glob: /glob/, *not* /glohb/ /v.,n./ [Unix] To expand
special characters in a wildcarded name, or the act of so doing
(the action is also called `globbing'). The Unix conventions for
filename wildcarding have become sufficiently pervasive that many
hackers use some of them in written English, especially in email or
news on technical topics. Those commonly encountered include the
following:
*
wildcard for any string (see also {UN*X})
?
wildcard for any single character (generally read this way
only at the beginning or in the middle of a word)
[]
delimits a wildcard matching any of the enclosed characters
{}
alternation of comma-separated alternatives; thus,
`foo{baz,qux}' would be read as `foobaz' or `fooqux'
Some examples: "He said his name was [KC]arl" (expresses
ambiguity). "I don't read talk.politics.*" (any of the
talk.politics subgroups on {Usenet}). Other examples are given
under the entry for {X}. Note that glob patterns are similar,
but not identical, to those used in {regexp}s.
Historical note: The jargon usage derives from `glob', the
name of a subprogram that expanded wildcards in archaic pre-Bourne
versions of the Unix shell.
:glork: /glork/ 1. /interj./ Term of mild surprise, usually
tinged with outrage, as when one attempts to save the results of
two hours of editing and finds that the system has just crashed.
2. Used as a name for just about anything. See {foo}.
3. /vt./ Similar to {glitch}, but usually used reflexively. "My
program just glorked itself." See also {glark}.
:glue: /n./ Generic term for any interface logic or protocol
that connects two component blocks. For example, {Blue Glue} is
IBM's SNA protocol, and hardware designers call anything used to
connect large VLSI's or circuit blocks `glue logic'.
:gnarly: /nar'lee/ /adj./ Both {obscure} and {hairy}
(sense 1). "{Yow!} -- the tuned assembler implementation of
BitBlt is really gnarly!" From a similar but less specific usage
in surfer slang.
:GNU: /gnoo/, *not* /noo/ 1. [acronym: `GNU's Not
Unix!', see {{recursive acronym}}] A Unix-workalike development
effort of the Free Software Foundation headed by Richard Stallman
<rms@gnu.ai.mit.edu>. GNU EMACS and the GNU C compiler, two
tools designed for this project, have become very popular in
hackerdom and elsewhere. The GNU project was designed partly to
proselytize for RMS's position that information is community
property and all software source should be shared. One of its
slogans is "Help stamp out software hoarding!" Though this
remains controversial (because it implicitly denies any right of
designers to own, assign, and sell the results of their labors),
many hackers who disagree with RMS have nevertheless cooperated to
produce large amounts of high-quality software for free
redistribution under the Free Software Foundation's imprimatur.
See {EMACS}, {copyleft}, {General Public Virus},
{Linux}. 2. Noted Unix hacker John Gilmore <gnu@toad.com>,
founder of Usenet's anarchic alt.* hierarchy.
:GNUMACS: /gnoo'maks/ /n./ [contraction of `GNU EMACS']
Often-heard abbreviated name for the {GNU} project's flagship
tool, {EMACS}. Used esp. in contrast with {GOSMACS}.
:go flatline: /v./ [from cyberpunk SF, refers to flattening of
EEG traces upon brain-death] (also adjectival `flatlined'). 1. To
{die}, terminate, or fail, esp. irreversibly. In hacker
parlance, this is used of machines only, human death being
considered somewhat too serious a matter to employ jargon-jokes
about. 2. To go completely quiescent; said of machines undergoing
controlled shutdown. "You can suffer file damage if you shut down
Unix but power off before the system has gone flatline." 3. Of a
video tube, to fail by losing vertical scan, so all one sees is a
bright horizontal line bisecting the screen.
:go root: /vi./ [Unix] To temporarily enter {root mode} in
order to perform a privileged operation. This use is deprecated in
Australia, where /v./ `root' refers to animal sex.
:go-faster stripes: /n./ [UK] Syn. {chrome}. Mainstream in
some parts of UK.
:gobble: /vt./ 1. To consume, usu. used with `up'. "The
output spy gobbles characters out of a {tty} output buffer."
2. To obtain, usu. used with `down'. "I guess I'll gobble down
a copy of the documentation tomorrow." See also {snarf}.
:Godwin's Law: /prov./ [Usenet] "As a Usenet discussion grows
longer, the probability of a comparison involving Nazis or Hitler
approaches one." There is a tradition in many groups that, once
this occurs, that thread is over, and whoever mentioned the Nazis
has automatically lost whatever argument was in progress. Godwin's
Law thus practically guarantees the existence of an upper bound on
thread length in those groups.
:Godzillagram: /god-zil'*-gram/ /n./ [from Japan's national
hero] 1. A network packet that in theory is a broadcast to every
machine in the universe. The typical case is an IP datagram whose
destination IP address is [255.255.255.255]. Fortunately, few
gateways are foolish enough to attempt to implement this case!
2. A network packet of maximum size. An IP Godzillagram has 65,536
octets. Compare {super source quench}.
:golden: /adj./ [prob. from folklore's `golden egg'] When
used to describe a magnetic medium (e.g., `golden disk',
`golden tape'), describes one containing a tested, up-to-spec,
ready-to-ship software version. Compare {platinum-iridium}.
:golf-ball printer: /n. obs./ The IBM 2741, a slow but
letter-quality printing device and terminal based on the IBM
Selectric typewriter. The `golf ball' was a little spherical
frob bearing reversed embossed images of 88 different characters
arranged on four parallels of latitude; one could change the font
by swapping in a different golf ball. The print element spun and
jerked alarmingly in action and when in motion was sometimes
described as an `infuriated golf ball'. This was the technology
that enabled APL to use a non-EBCDIC, non-ASCII, and in fact
completely non-standard character set. This put it 10 years ahead
of its time -- where it stayed, firmly rooted, for the next 20,
until character displays gave way to programmable bit-mapped
devices with the flexibility to support other character sets.
:gonk: /gonk/ /vi.,n./ 1. To prevaricate or to embellish the
truth beyond any reasonable recognition. In German the term is
(mythically) `gonken'; in Spanish the verb becomes `gonkar'.
"You're gonking me. That story you just told me is a bunch of
gonk." In German, for example, "Du gonkst mir" (You're pulling
my leg). See also {gonkulator}. 2. [British] To grab some
sleep at an odd time; compare {gronk out}.
:gonkulator: /gon'kyoo-lay-tr/ /n./ [from the old
"Hogan's Heroes" TV series] A pretentious piece of equipment
that actually serves no useful purpose. Usually used to describe
one's least favorite piece of computer hardware. See {gonk}.
:gonzo: /gon'zoh/ /adj./ [from Hunter S. Thompson]
Overwhelming; outrageous; over the top; very large, esp. used of
collections of source code, source files, or individual functions.
Has some of the connotations of {moby} and {hairy}, but
without the implication of obscurity or complexity.
:Good Thing: /n.,adj./ Often capitalized; always pronounced as
if capitalized. 1. Self-evidently wonderful to anyone in a
position to notice: "The Trailblazer's 19.2Kbaud PEP mode with
on-the-fly Lempel-Ziv compression is a Good Thing for sites
relaying netnews." 2. Something that can't possibly have any ill
side-effects and may save considerable grief later: "Removing the
self-modifying code from that shared library would be a Good
Thing." 3. When said of software tools or libraries, as in "YACC
is a Good Thing", specifically connotes that the thing has
drastically reduced a programmer's work load. Oppose {Bad
Thing}.
:gopher: /n./ A type of Internet service first floated around
1991 and now (1994) being obsolesced by the World Wide Web. Gopher
presents a menuing interface to a tree or graph of links;
the links can be to documents, runnable programs, or other gopher
menus arbitrarily far across the net.
Some claim that the gopher software, which was originally developed
at the University of Minnesota, was named after the Minnesota
Gophers (a sports team). Others claim the word derives from
American slang `gofer' (from "go for", dialectical "go fer"),
one whose job is to run and fetch things. Finally, observe that
gophers (aka woodchucks) dig long tunnels, and the idea of
tunneling through the net to find information was a defining
metaphor for the developers. Probably all three things were true,
but with the first two coming first and the gopher-tunnel metaphor
serendipitously adding flavor and impetus to the project as it
developed out of its concept stage.
:gopher hole: /n./ 1. Any access to a {gopher}. 2. [Amateur
Packet Radio] The terrestrial analog of a {wormhole} (sense
2), from which this term was coined. A gopher hole links two
amateur packet relays through some non-ham radio medium.
:gorets: /gor'ets/ /n./ The unknown ur-noun, fill in your own
meaning. Found esp. on the Usenet newsgroup alt.gorets, which
seems to be a running contest to redefine the word by implication
in the funniest and most peculiar way, with the understanding that
no definition is ever final. [A correspondent from the Former
Soviet Union informs me that `gorets' is Russian for `mountain
dweller' --ESR] Compare {frink}.
:gorilla arm: /n./ The side-effect that destroyed touch-screens
as a mainstream input technology despite a promising start in the
early 1980s. It seems the designers of all those {spiffy}
touch-menu systems failed to notice that humans aren't designed to
hold their arms in front of their faces making small motions.
After more than a very few selections, the arm begins to feel sore,
cramped, and oversized -- the operator looks like a gorilla while
using the touch screen and feels like one afterwards. This is now
considered a classic cautionary tale to human-factors designers;
"Remember the gorilla arm!" is shorthand for "How is this going
to fly in *real* use?".
:gorp: /gorp/ /n./ [CMU: perhaps from the canonical hiker's
food, Good Old Raisins and Peanuts] Another {metasyntactic
variable}, like {foo} and {bar}.
:GOSMACS: /goz'maks/ /n./ [contraction of `Gosling EMACS']
The first {EMACS}-in-C implementation, predating but now largely
eclipsed by {GNUMACS}. Originally freeware; a commercial
version is now modestly popular as `UniPress EMACS'. The author,
James Gosling, went on to invent {NeWS} and the programming
language Java; the latter earned him {demigod} status.
:Gosperism: /gos'p*r-izm/ /n./ A hack, invention, or saying
due to arch-hacker R. William (Bill) Gosper. This notion merits
its own term because there are so many of them. Many of the
entries in {HAKMEM} are Gosperisms; see also {life}.
:gotcha: /n./ A {misfeature} of a system, especially a
programming language or environment, that tends to breed bugs or
mistakes because it both enticingly easy to invoke and completely
unexpected and/or unreasonable in its outcome. For example, a
classic gotcha in {C} is the fact that `if (a=b) {code;}'
is syntactically valid and sometimes even correct. It puts the
value of `b' into `a' and then executes `code' if
`a' is non-zero. What the programmer probably meant was
`if (a==b) {code;}', which executes `code' if `a'
and `b' are equal.
:GPL: /G-P-L/ /n./ Abbreviation for `General Public
License' in widespread use; see {copyleft}, {General Public
Virus}.
:GPV: /G-P-V/ /n./ Abbrev. for {General Public Virus} in
widespread use.
:grault: /grawlt/ /n./ Yet another {metasyntactic
variable}, invented by Mike Gallaher and propagated by the
{GOSMACS} documentation. See {corge}.
:gray goo: /n./ A hypothetical substance composed of
{sagan}s of sub-micron-sized self-replicating robots programmed
to make copies of themselves out of whatever is available. The
image that goes with the term is one of the entire biosphere of
Earth being eventually converted to robot goo. This is the
simplest of the {{nanotechnology}} disaster scenarios, easily
refuted by arguments from energy requirements and elemental
abundances. Compare {blue goo}.
:Great Renaming: /n./ The {flag day} in 1985 on which all of
the non-local groups on the {Usenet} had their names changed
from the net.- format to the current multiple-hierarchies scheme.
Used esp. in discussing the history of newsgroup names. "The
oldest sources group is comp.sources.misc; before the Great
Renaming, it was net.sources."
:Great Runes: /n./ Uppercase-only text or display messages.
Some archaic operating systems still emit these. See also
{runes}, {smash case}, {fold case}.
Decades ago, back in the days when it was the sole supplier of
long-distance hardcopy transmittal devices, the Teletype
Corporation was faced with a major design choice. To shorten code
lengths and cut complexity in the printing mechanism, it had been
decided that teletypes would use a monocase font, either ALL UPPER
or all lower. The Question Of The Day was therefore, which one to
choose. A study was conducted on readability under various
conditions of bad ribbon, worn print hammers, etc. Lowercase won;
it is less dense and has more distinctive letterforms, and is thus
much easier to read both under ideal conditions and when the
letters are mangled or partly obscured. The results were filtered
up through {management}. The chairman of Teletype killed the
proposal because it failed one incredibly important criterion:
"It would be impossible to spell the name of the Deity
correctly."
In this way (or so, at least, hacker folklore has it) superstition
triumphed over utility. Teletypes were the major input devices on
most early computers, and terminal manufacturers looking for
corners to cut naturally followed suit until well into the 1970s.
Thus, that one bad call stuck us with Great Runes for thirty years.
:Great Worm, the: /n./ The 1988 Internet {worm} perpetrated
by {RTM}. This is a play on Tolkien (compare {elvish},
{elder days}). In the fantasy history of his Middle Earth
books, there were dragons powerful enough to lay waste to entire
regions; two of these (Scatha and Glaurung) were known as "the
Great Worms". This usage expresses the connotation that the RTM
hack was a sort of devastating watershed event in hackish history;
certainly it did more to make non-hackers nervous about the
Internet than anything before or since.
:great-wall: /vi.,n./ [from SF fandom] A mass expedition to an
oriental restaurant, esp. one where food is served family-style
and shared. There is a common heuristic about the amount of food
to order, expressed as "Get N - 1 entrees"; the value of
N, which is the number of people in the group, can be
inferred from context (see {N}). See {{oriental food}},
{ravs}, {stir-fried random}.
:Green Book: /n./ 1. One of the three standard {{PostScript}}
references: "PostScript Language Program Design", bylined
`Adobe Systems' (Addison-Wesley, 1988; QA76.73.P67P66 ISBN
0-201-14396-8); see also {Red Book}, {Blue Book}, and the
{White Book} (sense 2). 2. Informal name for one of the three
standard references on SmallTalk: "Smalltalk-80: Bits of
History, Words of Advice", by Glenn Krasner (Addison-Wesley, 1983;
QA76.8.S635S58; ISBN 0-201-11669-3) (this, too, is associated with
blue and red books). 3. The "X/Open Compatibility Guide",
which defines an international standard {{Unix}} environment that
is a proper superset of POSIX/SVID; also includes descriptions of a
standard utility toolkit, systems administrations features, and the
like. This grimoire is taken with particular seriousness in
Europe. See {Purple Book}. 4. The IEEE 1003.1 POSIX Operating
Systems Interface standard has been dubbed "The Ugly Green Book".
5. Any of the 1992 standards issued by the CCITT's tenth plenary
assembly. These include, among other things, the X.400 email
standard and the Group 1 through 4 fax standards. See also
{{book titles}}.
:green bytes: /n./ (also `green words') 1. Meta-information
embedded in a file, such as the length of the file or its name; as
opposed to keeping such information in a separate description file
or record. The term comes from an IBM user's group meeting
(ca. 1962) at which these two approaches were being debated and the
diagram of the file on the blackboard had the `green bytes' drawn
in green. 2. By extension, the non-data bits in any
self-describing format. "A GIF file contains, among other things,
green bytes describing the packing method for the image." Compare
{out-of-band}, {zigamorph}, {fence} (sense 1).
:green card: /n./ [after the "IBM System/360 Reference
Data" card] A summary of an assembly language, even if the color is
not green. Less frequently used now because of the decrease in the
use of assembly language. "I'll go get my green card so I can
check the addressing mode for that instruction." Some green cards
are actually booklets.
The original green card became a yellow card when the System/370
was introduced, and later a yellow booklet. An anecdote from IBM
refers to a scene that took place in a programmers' terminal room
at Yorktown in 1978. A {luser} overheard one of the programmers
ask another "Do you have a green card?" The other grunted and
passed the first a thick yellow booklet. At this point the luser
turned a delicate shade of olive and rapidly left the room, never
to return.
:green lightning: /n./ [IBM] 1. Apparently random flashing
streaks on the face of 3278-9 terminals while a new symbol set is
being downloaded. This hardware bug was left deliberately unfixed,
as some genius within IBM suggested it would let the user know that
`something is happening'. That, it certainly does. Later
microprocessor-driven IBM color graphics displays were actually
*programmed* to produce green lightning! 2. [proposed] Any
bug perverted into an alleged feature by adroit rationalization or
marketing. "Motorola calls the CISC cruft in the 88000
architecture `compatibility logic', but I call it green
lightning". See also {feature} (sense 6).
:green machine: /n./ A computer or peripheral device that has
been designed and built to military specifications for field
equipment (that is, to withstand mechanical shock, extremes of
temperature and humidity, and so forth). Comes from the olive-drab
`uniform' paint used for military equipment.
:Green's Theorem: /prov./ [TMRC] For any story, in any group of
people there will be at least one person who has not heard the
story. A refinement of the theorem states that there will be
*exactly* one person (if there were more than one, it wouldn't
be as bad to re-tell the story). [The name of this theorem is a
play on a fundamental theorem in calculus. --ESR]
:grep: /grep/ /vi./ [from the qed/ed editor idiom g/re/p,
where re stands for a regular expression, to Globally search
for the Regular Expression and Print the lines containing matches
to it, via {{Unix}} `grep(1)'] To rapidly scan a file or set
of files looking for a particular string or pattern (when browsing
through a large set of files, one may speak of `grepping
around'). By extension, to look for something by pattern. "Grep
the bulletin board for the system backup schedule, would you?"
See also {vgrep}.
:grilf: // /n./ Girlfriend. Like {newsfroup} and
{filk}, a typo reincarnated as a new word. Seems to have
originated sometime in 1992 on {Usenet}. [A friend tells me
there was a Lloyd Biggle SF novel "Watchers Of The Dark", in
which alien species after species goes insane and begins to chant
"Grilf! Grilf!". A human detective eventually determines that
the word means "Liar!" I hope this has nothing to do with the
popularity of the Usenet term. --ESR]
:grind: /vt./ 1. [MIT and Berkeley] To prettify hardcopy of
code, especially LISP code, by reindenting lines, printing keywords
and comments in distinct fonts (if available), etc. This usage was
associated with the MacLISP community and is now rare;
{prettyprint} was and is the generic term for such
operations. 2. [Unix] To generate the formatted version of a
document from the {{nroff}}, {{troff}}, {{TeX}}, or Scribe
source. 3. To run seemingly interminably, esp. (but not
necessarily) if performing some tedious and inherently useless
task. Similar to {crunch} or {grovel}. Grinding has a
connotation of using a lot of CPU time, but it is possible to grind
a disk, network, etc. See also {hog}. 4. To make the whole
system slow. "Troff really grinds a PDP-11." 5. `grind grind'
/excl./ Roughly, "Isn't the machine slow today!"
:grind crank: /n./ A mythical accessory to a terminal. A
crank on the side of a monitor, which when operated makes a zizzing
noise and causes the computer to run faster. Usually one does not
refer to a grind crank out loud, but merely makes the appropriate
gesture and noise. See {grind} and {wugga wugga}.
Historical note: At least one real machine actually had a grind
crank -- the R1, a research machine built toward the end of the
days of the great vacuum tube computers, in 1959. R1 (also known
as `The Rice Institute Computer' (TRIC) and later as `The Rice
University Computer' (TRUC)) had a single-step/free-run switch for
use when debugging programs. Since single-stepping through a large
program was rather tedious, there was also a crank with a cam and
gear arrangement that repeatedly pushed the single-step button.
This allowed one to `crank' through a lot of code, then slow
down to single-step for a bit when you got near the code of
interest, poke at some registers using the console typewriter, and
then keep on cranking.
:gripenet: /n./ [IBM] A wry (and thoroughly unofficial) name
for IBM's internal VNET system, deriving from its common use by
IBMers to voice pointed criticism of IBM management that would be
taboo in more formal channels.
:gritch: /grich/ [MIT] 1. /n./ A complaint (often caused by a
{glitch}). 2. /vi./ To complain. Often verb-doubled: "Gritch
gritch". 3. A synonym for {glitch} (as verb or noun).
Interestingly, this word seems to have a separate history from
{glitch}, with which it is often confused. Back in the early
1960s, when `glitch' was strictly a hardware-tech's term of art,
the Burton House dorm at M.I.T. maintained a "Gritch Book", a
blank volume, into which the residents hand-wrote complaints,
suggestions, and witticisms. Previous years' volumes of this
tradition were maintained, dating back to antiquity. The word
"gritch" was described as a portmanteau of "gripe" and
"bitch". Thus, sense 3 above is at least historically incorrect.
:grok: /grok/, var. /grohk/ /vt./ [from the novel
"Stranger in a Strange Land", by Robert A. Heinlein, where it
is a Martian word meaning literally `to drink' and metaphorically
`to be one with'] The emphatic form is `grok in
fullness'. 1. To understand, usually in a global sense. Connotes
intimate and exhaustive knowledge. Contrast {zen}, which is
similar supernal understanding experienced as a single brief flash.
See also {glark}. 2. Used of programs, may connote merely
sufficient understanding. "Almost all C compilers grok the
`void' type these days."
:gronk: /gronk/ /vt./ [popularized by Johnny Hart's comic
strip "B.C." but the word apparently predates that] 1. To
clear the state of a wedged device and restart it. More severe
than `to {frob}' (sense 2). 2. [TMRC] To cut, sever, smash,
or similarly disable. 3. The sound made by many 3.5-inch diskette
drives. In particular, the microfloppies on a Commodore Amiga go
"grink, gronk".
:gronk out: /vi./ To cease functioning. Of people, to go home
and go to sleep. "I guess I'll gronk out now; see you all
tomorrow."
:gronked: /adj./ 1. Broken. "The teletype scanner was
gronked, so we took the system down." 2. Of people, the condition
of feeling very tired or (less commonly) sick. "I've been chasing
that bug for 17 hours now and I am thoroughly gronked!" Compare
{broken}, which means about the same as {gronk} used of
hardware, but connotes depression or mental/emotional problems in
people.
:grovel: /vi./ 1. To work interminably and without apparent
progress. Often used transitively with `over' or `through'.
"The file scavenger has been groveling through the /usr
directories for 10 minutes now." Compare {grind} and
{crunch}. Emphatic form: `grovel obscenely'. 2. To examine
minutely or in complete detail. "The compiler grovels over the
entire source program before beginning to translate it." "I
grovelled through all the documentation, but I still couldn't find
the command I wanted."
:grunge: /gruhnj/ /n./ 1. That which is grungy, or that which
makes it so. 2. [Cambridge] Code which is inaccessible due to
changes in other parts of the program. The preferred term in North
America is {dead code}.
:gubbish: /guhb'*sh/ /n./ [a portmanteau of `garbage' and
`rubbish'; may have originated with SF author Philip K. Dick]
Garbage; crap; nonsense. "What is all this gubbish?" The
opposite portmanteau `rubbage' is also reported; in fact, it was
British slang during the 19th century and appears in Dickens.
:guiltware: /gilt'weir/ /n./ 1. A piece of {freeware}
decorated with a message telling one how long and hard the author
worked on it and intimating that one is a no-good freeloader if one
does not immediately send the poor suffering martyr gobs of money.
2. A piece of {shareware} that works.
:gumby: /guhm'bee/ /n./ [from a class of Monty Python
characters, poss. with some influence from the 1960s claymation
character] An act of minor but conspicuous stupidity, often in
`gumby maneuver' or `pull a gumby'. 2. [NRL] /n./ A bureaucrat,
or other technical incompetent who impedes the progress of real
work. 3. /adj./ Relating to things typically associated with
people
in sense 2. (e.g. "Ran would be writing code, but Richard gave
him gumby work that's due on Friday", or, "Dammit! Travel
screwed up my plane tickets. I have to go out on gumby patrol.")
:gun: /vt./ [ITS: from the `:GUN' command] To forcibly
terminate a program or job (computer, not career). "Some idiot
left a background process running soaking up half the cycles, so I
gunned it." Usage: now rare. Compare {can}, {blammo}.
:gunch: /guhnch/ /vt./ [TMRC] To push, prod, or poke at a
device that has almost (but not quite) produced the desired result.
Implies a threat to {mung}.
:gurfle: /ger'fl/ /interj./ An expression of shocked
disbelief. "He said we have to recode this thing in FORTRAN by
next week. Gurfle!" Compare {weeble}.
:guru: /n./ [Unix] An expert. Implies not only {wizard}
skill but also a history of being a knowledge resource for others.
Less often, used (with a qualifier) for other experts on other
systems, as in `VMS guru'. See {source of all good bits}.
:guru meditation: /n./ Amiga equivalent of `panic' in Unix
(sometimes just called a `guru' or `guru event'). When the
system crashes, a cryptic message of the form "GURU MEDITATION
#XXXXXXXX.YYYYYYYY" may appear, indicating what the problem was.
An Amiga guru can figure things out from the numbers. Sometimes a
{guru} event must be followed by a {Vulcan nerve pinch}.
This term is (no surprise) an in-joke from the earliest days of the
Amiga. There used to be a device called a `Joyboard' which was
basically a plastic board built onto a joystick-like device; it was
sold with a skiing game cartridge for the Atari game machine. It
is said that whenever the prototype OS crashed, the system
programmer responsible would calm down by concentrating on a
solution while sitting cross-legged on a Joyboard trying to keep
the board in balance. This position resembled that of a meditating
guru. Sadly, the joke was removed in AmigaOS 2.04 (actually in
2.00, a buggy post-2.0 release on the A3000 only).
:gweep: /gweep/ [WPI] 1. /v./ To {hack}, usually at night.
At WPI, from 1975 onwards, one who gweeped could often be found at
the College Computing Center punching cards or crashing the
{PDP-10} or, later, the DEC-20. A correspondent who was there at
the time opines that the term was originally onomatopoetic,
describing the keyclick sound of the Datapoint terminals long
connected to the PDP-10. The term has survived the demise of those
technologies, however, and was still alive in late 1991. "I'm
going to go gweep for a while. See you in the morning." "I gweep
from 8 PM till 3 AM during the week." 2. /n./ One who habitually
gweeps in sense 1; a {hacker}. "He's a hard-core gweep,
mumbles code in his sleep."
= H =
=====
:h: [from SF fandom] A method of `marking' common words,
i.e., calling attention to the fact that they are being used in a
nonstandard, ironic, or humorous way. Originated in the fannish
catchphrase "Bheer is the One True Ghod!" from decades ago.
H-infix marking of `Ghod' and other words spread into the 1960s
counterculture via underground comix, and into early hackerdom
either from the counterculture or from SF fandom (the three
overlapped heavily at the time). More recently, the h infix has
become an expected feature of benchmark names (Dhrystone,
Rhealstone, etc.); this is probably patterning on the original
Whetstone (the name of a laboratory) but influenced by the
fannish/counterculture h infix.
:ha ha only serious: [from SF fandom, orig. as mutation of
HHOK, `Ha Ha Only Kidding'] A phrase (often seen abbreviated as
HHOS) that aptly captures the flavor of much hacker discourse.
Applied especially to parodies, absurdities, and ironic jokes that
are both intended and perceived to contain a possibly disquieting
amount of truth, or truths that are constructed on in-joke and
self-parody. This lexicon contains many examples of
ha-ha-only-serious in both form and content. Indeed, the entirety
of hacker culture is often perceived as ha-ha-only-serious by
hackers themselves; to take it either too lightly or too seriously
marks a person as an outsider, a {wannabee}, or in {larval
stage}. For further enlightenment on this subject, consult any Zen
master. See also {{hacker humor}}, and {AI koans}.
:hack: 1. /n./ Originally, a quick job that produces what is
needed, but not well. 2. /n./ An incredibly good, and perhaps very
time-consuming, piece of work that produces exactly what is needed.
3. /vt./ To bear emotionally or physically. "I can't hack this
heat!" 4. /vt./ To work on something (typically a program). In an
immediate sense: "What are you doing?" "I'm hacking TECO."
In a general (time-extended) sense: "What do you do around here?"
"I hack TECO." More generally, "I hack `foo'" is roughly
equivalent to "`foo' is my major interest (or project)". "I
hack solid-state physics." See {Hacking X for Y}. 5. /vt./ To
pull a prank on. See sense 2 and {hacker} (sense 5). 6. /vi./ To
interact with a computer in a playful and exploratory rather than
goal-directed way. "Whatcha up to?" "Oh, just hacking."
7. /n./ Short for {hacker}. 8. See {nethack}. 9. [MIT] /v./ To
explore the basements, roof ledges, and steam tunnels of a large,
institutional building, to the dismay of Physical Plant workers and
(since this is usually performed at educational institutions) the
Campus Police. This activity has been found to be eerily similar
to playing adventure games such as Dungeons and Dragons and
{Zork}. See also {vadding}.
Constructions on this term abound. They include `happy hacking'
(a farewell), `how's hacking?' (a friendly greeting among
hackers) and `hack, hack' (a fairly content-free but friendly
comment, often used as a temporary farewell). For more on this
totipotent term see "{The Meaning of `Hack'}". See
also {neat hack}, {real hack}.
:hack attack: /n./ [poss. by analogy with `Big Mac Attack'
from ads for the McDonald's fast-food chain; the variant `big
hack attack' is reported] Nearly synonymous with {hacking run},
though the latter more strongly implies an all-nighter.
:hack mode: /n./ 1. What one is in when hacking, of course.
2. More specifically, a Zen-like state of total focus on The
Problem that may be achieved when one is hacking (this is why every
good hacker is part mystic). Ability to enter such concentration
at will correlates strongly with wizardliness; it is one of the
most important skills learned during {larval stage}. Sometimes
amplified as `deep hack mode'.
Being yanked out of hack mode (see {priority interrupt}) may be
experienced as a physical shock, and the sensation of being in hack
mode is more than a little habituating. The intensity of this
experience is probably by itself sufficient explanation for the
existence of hackers, and explains why many resist being promoted
out of positions where they can code. See also {cyberspace}
(sense 2).
Some aspects of hackish etiquette will appear quite odd to an
observer unaware of the high value placed on hack mode. For
example, if someone appears at your door, it is perfectly okay to
hold up a hand (without turning one's eyes away from the screen) to
avoid being interrupted. One may read, type, and interact with the
computer for quite some time before further acknowledging the
other's presence (of course, he or she is reciprocally free to
leave without a word). The understanding is that you might be in
{hack mode} with a lot of delicate {state} (sense 2) in your
head, and you dare not {swap} that context out until you have
reached a good point to pause. See also {juggling eggs}.
:hack on: /vt./ To {hack}; implies that the subject is some
pre-existing hunk of code that one is evolving, as opposed to
something one might {hack up}.
:hack together: /vt./ To throw something together so it will
work. Unlike `kluge together' or {cruft together}, this does
not necessarily have negative connotations.
:hack up: /vt./ To {hack}, but generally implies that the
result is a hack in sense 1 (a quick hack). Contrast this with
{hack on}. To `hack up on' implies a {quick-and-dirty}
modification to an existing system. Contrast {hacked up};
compare {kluge up}, {monkey up}, {cruft together}.
:hack value: /n./ Often adduced as the reason or motivation for
expending effort toward a seemingly useless goal, the point being
that the accomplished goal is a hack. For example, MacLISP had
features for reading and printing Roman numerals, which were
installed purely for hack value. See {display hack} for one
method of computing hack value, but this cannot really be
explained, only experienced. As Louis Armstrong once said when
asked to explain jazz: "Man, if you gotta ask you'll never know."
(Feminists please note Fats Waller's explanation of rhythm: "Lady,
if you got to ask, you ain't got it.")
:hacked off: /adj./ [analogous to `pissed off'] Said of
system administrators who have become annoyed, upset, or touchy
owing to suspicions that their sites have been or are going to be
victimized by crackers, or used for inappropriate, technically
illegal, or even overtly criminal activities. For example, having
unreadable files in your home directory called `worm',
`lockpick', or `goroot' would probably be an effective (as well
as impressively obvious and stupid) way to get your sysadmin hacked
off at you.
It has been pointed out that there is precedent for this usage in
U.S. Navy slang, in which officers under discipline are sometimes
said to be "in hack" and one may speak of "hacking off the C.O.".
:hacked up: /adj./ Sufficiently patched, kluged, and tweaked
that the surgical scars are beginning to crowd out normal tissue
(compare {critical mass}). Not all programs that are hacked
become `hacked up'; if modifications are done with some eye to
coherence and continued maintainability, the software may emerge
better for the experience. Contrast {hack up}.
:hacker: /n./ [originally, someone who makes furniture with an
axe] 1. A person who enjoys exploring the details of programmable
systems and how to stretch their capabilities, as opposed to most
users, who prefer to learn only the minimum necessary. 2. One who
programs enthusiastically (even obsessively) or who enjoys
programming rather than just theorizing about programming. 3. A
person capable of appreciating {hack value}. 4. A person who is
good at programming quickly. 5. An expert at a particular program,
or one who frequently does work using it or on it; as in `a Unix
hacker'. (Definitions 1 through 5 are correlated, and people who
fit them congregate.) 6. An expert or enthusiast of any kind. One
might be an astronomy hacker, for example. 7. One who enjoys the
intellectual challenge of creatively overcoming or circumventing
limitations. 8. [deprecated] A malicious meddler who tries to
discover sensitive information by poking around. Hence `password
hacker', `network hacker'. The correct term for this sense is
{cracker}.
The term `hacker' also tends to connote membership in the global
community defined by the net (see {network, the} and
{Internet address}). It also implies that the person described
is seen to subscribe to some version of the hacker ethic (see
{hacker ethic}).
It is better to be described as a hacker by others than to describe
oneself that way. Hackers consider themselves something of an
elite (a meritocracy based on ability), though one to which new
members are gladly welcome. There is thus a certain ego
satisfaction to be had in identifying yourself as a hacker (but if
you claim to be one and are not, you'll quickly be labeled
{bogus}). See also {wannabee}.
:hacker ethic: /n./ 1. The belief that information-sharing
is a powerful positive good, and that it is an ethical duty of
hackers to share their expertise by writing free software and
facilitating access to information and to computing resources
wherever possible. 2. The belief that system-cracking for fun and
exploration is ethically OK as long as the cracker commits no
theft, vandalism, or breach of confidentiality.
Both of these normative ethical principles are widely, but by no
means universally, accepted among hackers. Most hackers subscribe
to the hacker ethic in sense 1, and many act on it by writing and
giving away free software. A few go further and assert that
*all* information should be free and *any* proprietary
control of it is bad; this is the philosophy behind the {GNU}
project.
Sense 2 is more controversial: some people consider the act of
cracking itself to be unethical, like breaking and entering. But
the belief that `ethical' cracking excludes destruction at least
moderates the behavior of people who see themselves as `benign'
crackers (see also {samurai}). On this view, it may be one of
the highest forms of hackerly courtesy to (a) break into a system,
and then (b) explain to the sysop, preferably by email from a
{superuser} account, exactly how it was done and how the hole
can be plugged -- acting as an unpaid (and unsolicited) {tiger
team}.
The most reliable manifestation of either version of the hacker
ethic is that almost all hackers are actively willing to share
technical tricks, software, and (where possible) computing
resources with other hackers. Huge cooperative networks such as
{Usenet}, {FidoNet} and Internet (see {Internet address})
can function without central control because of this trait; they
both rely on and reinforce a sense of community that may be
hackerdom's most valuable intangible asset.
:hacker humor:: A distinctive style of shared
intellectual humor found among hackers, having the following marked
characteristics:
1. Fascination with form-vs.-content jokes, paradoxes, and humor
having to do with confusion of metalevels (see {meta}). One way
to make a hacker laugh: hold a red index card in front of him/her
with "GREEN" written on it, or vice-versa (note, however, that
this is funny only the first time).
2. Elaborate deadpan parodies of large intellectual constructs,
such as specifications (see {write-only memory}), standards
documents, language descriptions (see {INTERCAL}), and even
entire scientific theories (see {quantum bogodynamics},
{computron}).
3. Jokes that involve screwily precise reasoning from bizarre,
ludicrous, or just grossly counter-intuitive premises.