The New Hacker's Dictionary - Eric S. Raymond (e book reader online txt) 📗
- Author: Eric S. Raymond
- Performer: 0262680920
Book online «The New Hacker's Dictionary - Eric S. Raymond (e book reader online txt) 📗». Author Eric S. Raymond
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
[5416]WIMP environment, [5417]Macintrash, [5418]point-and-drool
interface, [5419]user-friendly.
Node:for values of, Next:[5420]fora, Previous:[5421]for the rest of
us, Up:[5422]= F =
for values of
[MIT] A common rhetorical maneuver at MIT is to use any of the
canonical [5423]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).
Node:fora, Next:[5424]foreground, Previous:[5425]for values of,
Up:[5426]= F =
fora pl.n.
Plural of [5427]forum.
Node:foreground, Next:[5428]fork, Previous:[5429]fora, Up:[5430]= F =
foreground vt.
[Unix; common] To bring a task to the top of one's [5431]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
[5432]background. Nowadays this term is primarily associated with
[5433]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 [5434]lose.
Node:fork, Next:[5435]fork bomb, Previous:[5436]foreground, Up:[5437]=
F =
fork
In the open-source community, a fork is what occurs when two (or more)
versions of a software package's source code are being developed in
parallel which once shared a common code base, and these multiple
versions of the source code have irreconcilable differences between
them. This should not be confused with a development branch, which may
later be folded back into the original source code base. Nor should it
be confused with what happens when a new distribution of Linux or some
other distribution is created, because that largely assembles pieces
than can and will be used in other distributions without conflict.
Forking is uncommon; in fact, it is so uncommon that individual
instances loom large in hacker folklore. Notable in this class were
the [5438]http://www.xemacs.org/About/XEmacsVsGNUemacs.html, the
GCC/EGCS fork (later healed by a merger) and the forks among the
FreeBSD, NetBSD, and OpenBSD operating systems.
Node:fork bomb, Next:[5439]forked, Previous:[5440]fork, Up:[5441]= F =
fork bomb n.
[Unix] A particular species of [5442]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 [5443]logic bomb.
Node:forked, Next:[5444]Fortrash, Previous:[5445]fork bomb, Up:[5446]=
F =
forked adj.,vi.
[common after 1997, esp. in the Linux community] An open-sourcesoftware project is said to have forked or be forked when the project
group fissions into two or more parts pursuing separate lines of
development (or, less commonly, when a third party unconnected to the
project group ). Forking is considered a [5447]Bad Thing - not merely
because it implies a lot of wasted effort in the future, but because
forks tend to be accompanied by a great deal of strife and acrimony
between the successor groups over issues of legitimacy, succession,
and design direction. There is serious social pressure against
forking. As a result, major forks (such as the Gnu-Emacs/XEmacs split,
the fissionings of the 386BSD group into three daughter project, and
the short-lived GCC/EGCS split) are rare enough that they are
remembered individually in hacker folklore. 2. [Unix; uncommon; prob.
influenced by a mainstream expletive] Terminally slow, or dead.
Originated when one system was slowed to a snail's pace by an
inadvertent [5448]fork bomb.
Node:Fortrash, Next:[5449]fortune cookie, Previous:[5450]forked,
Up:[5451]= F =
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.
Node:fortune cookie, Next:[5452]forum, Previous:[5453]Fortrash,
Up:[5454]= F =
fortune cookie n.
[WAITS, via Unix; common] 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 [5455]cookie file.
Node:forum, Next:[5456]fossil, Previous:[5457]fortune cookie,
Up:[5458]= F =
forum n.
[Usenet, GEnie, CI$; pl. fora' orforums'] Any discussion group
accessible through a dial-in [5459]BBS, a [5460]mailing list, or a
[5461]newsgroup (see [5462]the network). A forum functions much like a
bulletin board; users submit [5463]postings for all to read and
discussion ensues. Contrast real-time chat via [5464]talk mode or
point-to-point personal [5465]email.
Node:fossil, Next:[5466]four-color glossies, Previous:[5467]forum,
Up:[5468]= F =
fossil n.
In software, a misfeature that becomes understandable only inhistorical 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 [5469]C, in spite of the better match of
hexadecimal to ASCII and modern byte-addressable architectures. See
[5470]dusty deck. 2. More restrictively, a feature with past but no
present utility. Example: the force-all-caps (LCASE) bits in the V7
and [5471]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 [5472]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 [5473]brain-dead
routines in the IBM PC ROMs. Fossils are used by most MS-DOS [5474]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 [5475]bare
metal serial port programming otherwise required. Since the FOSSIL
specification allows additional functionality to be hooked in, drivers
that use the [5476]hook but do not provide serial-port access
themselves are named with a modifier, as in `video fossil'.
Node:four-color glossies, Next:[5477]frag, Previous:[5478]fossil,
Up:[5479]= F =
four-color glossies n.
Literature created by [5480]marketroids that allegedly containstechnical specs but which is in fact as superficial as possible
without being totally [5481]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.
Node:frag, Next:[5482]fragile, Previous:[5483]four-color glossies,
Up:[5484]= F =
frag n.,v.
[from Vietnam-era U.S. military slang via the games Doom and Quake] 1.
To kill another player's [5485]avatar in a multiuser game. "I hold the
office Quake record with 40 frags." 2. To completely ruin something.
"Forget that power supply, the lightning strike fragged it. See also
[5486]gib.
Node:fragile, Next:[5487]fred, Previous:[5488]frag, Up:[5489]= F =
fragile adj.
Syn [5490]brittle.
Node:fred, Next:[5491]Fred Foobar, Previous:[5492]fragile, Up:[5493]=
F =
fred n.
The personal name most frequently used as a [5494]metasyntacticvariable (see [5495]foo). Allegedly popular because it's easy for a
non-touch-typist to type on a standard QWERTY keyboard. In Great
Britain, fred',jim' and `sheila' are common metasyntactic variables
because their uppercase versions were official names given to the 3
memory areas that held I/O status registers on the lovingly-remembered
BBC Microcomputer! (It is reported that SHEILA was poked the most
often.) Unlike [5496]J. Random Hacker or `J. Random Loser', the name
`fred' has no positive or negative loading (but see [5497]Dr. Fred
Mbogo). See also [5498]barney. 2. An acronym for `Flipping Ridiculous
Electronic Device'; other F-verbs may be substituted for `flipping'.
Node:Fred Foobar, Next:[5499]frednet, Previous:[5500]fred, Up:[5501]=
F =
Fred Foobar n.
[5502]J. Random Hacker's cousin. Any typical human being, more or less
synomous with `someone' except that Fred Foobar can be
[5503]backreferenced by name later on. "So Fred Foobar will enter his
phone number into the database, and it'll be archived with the others.
Months later, when Fred searches..." See also [5504]Bloggs Family and
[5505]Dr. Fred Mbogo
Node:frednet, Next:[5506]free software, Previous:[5507]Fred Foobar,
Up:[5508]= F =
frednet /fred'net/ n.
Used to refer to some [5509]random and uncommon protocol encountered
on a network. "We're implementing bridging in our router to solve the
frednet problem."
Node:free software, Next:[5510]freeware, Previous:[5511]frednet,
Up:[5512]= F =
free software n.
As defined by Richard M. Stallman and used by the Free Software
movement, this means software that gives users enough freedom to be
used by the free software community. Specifically, users must be free
to modify the software for their private use, and free to redistribute
it either with or without modifications, either commercially or
noncommercially, either gratis or charging a distribution fee. Free
software has existed since the dawn of computing; Free Software as a
movement began in 1984 with the GNU Project. See also [5513]open
source.
Node:freeware, Next:[5514]freeze, Previous:[5515]free software,
Up:[5516]= F =
freeware n.
[common] Free software, often written by enthusiasts and distributed
by users' groups, or via electronic mail, local bulletin boards,
[5517]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 [5518]shareware,
[5519]FRS.
Node:freeze, Next:[5520]fried, Previous:[5521]freeware, Up:[5522]= F =
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.
Node:fried, Next:[5523]frink, Previous:[5524]freeze, Up:[5525]= F =
fried adj.
[common] Non-working due to hardware failure; burnt out. Especiallyused of hardware brought down by a `power glitch' (see [5526]glitch),
[5527]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
Comments (0)