The New Hacker's Dictionary, Eric S. Raymond [bill gates book recommendations .txt] 📗
- Author: Eric S. Raymond
- Performer: 0262680920
Book online «The New Hacker's Dictionary, Eric S. Raymond [bill gates book recommendations .txt] 📗». Author Eric S. Raymond
all, actually fixing the bugs would siphon off the resources needed to
implement the next user-interface frill on marketing's wish list --
and besides, if they started fixing security bugs customers might
begin to expect it and imagine that their warranties of
merchantability gave them some sort of right to a system with fewer
holes in it than a shotgunned Swiss cheese, and then where would we
be?
Historical note: There are conflicting stories about the origin of
this term. It has been claimed that it was first used in the Usenet
newsgroup in comp.sys.apollo during a campaign to get HP/Apollo to fix
security problems in its Unix-[11965]clone Aegis/DomainOS (they didn't
change a thing). [11966]ITS fans, on the other hand, say it was coined
years earlier in opposition to the incredibly paranoid [11967]Multics
people down the hall, for whom security was everything. In the ITS
culture it referred to (1) the fact that by the time a tourist figured
out how to make trouble he'd generally gotten over the urge to make
it, because he felt part of the community; and (2) (self-mockingly)
the poor coverage of the documentation and obscurity of many commands.
One instance of deliberate security through obscurity is recorded; the
command to allow patching the running ITS system (escape escape
control-R) echoed as $$^D. If you actually typed alt alt ^D, that set
a flag that would prevent patching the system even if you later got it
right.
Node:SED, Next:[11968]segfault, Previous:[11969]security through
obscurity, Up:[11970]= S =
SED /S-E-D/ n.
[TMRC, from `Light-Emitting Diode'] Smoke-emitting diode. A
[11971]friode that lost the war. See also [11972]LER.
Node:segfault, Next:[11973]seggie, Previous:[11974]SED, Up:[11975]= S
=
segfault n.,vi.
Syn. [11976]segment, [11977]segmentation fault.
Node:seggie, Next:[11978]segment, Previous:[11979]segfault,
Up:[11980]= S =
seggie /seg'ee/ n.
[Unix] Shorthand for [11981]segmentation fault reported from Britain.
Node:segment, Next:[11982]segmentation fault, Previous:[11983]seggie,
Up:[11984]= S =
segment /seg'ment/ vi.
To experience a [11985]segmentation fault. Confusingly, this is often
pronounced more like the noun `segment' than like mainstream v.
segment; this is because it is actually a noun shorthand that has been
verbed.
Node:segmentation fault, Next:[11986]segv, Previous:[11987]segment,
Up:[11988]= S =
segmentation fault n.
[Unix] 1. [techspeak] An error in which a running program attempts to
access memory not allocated to it and [11989]core dumps with a
segmentation violation error. This is often caused by improper usage
of pointers in the source code, dereferencing a null pointer, or (in
C) inadvertently using a non-pointer variable as a pointer. The
classic example is:
int i;
scanf ("%d", i); / should have used &i /
To lose a train of thought or a line of reasoning. Also uttered asan exclamation at the point of befuddlement.
Node:segv, Next:[11990]self-reference, Previous:[11991]segmentation
fault, Up:[11992]= S =
segv /seg'vee/ n.,vi.
Yet another synonym for [11993]segmentation fault (actually, in this
case, `segmentation violation').
Node:self-reference, Next:[11994]selvage, Previous:[11995]segv,
Up:[11996]= S =
self-reference n.
See [11997]self-reference.
Node:selvage, Next:[11998]semi, Previous:[11999]self-reference,
Up:[12000]= S =
selvage /sel'v*j/ n.
[from sewing and weaving] See [12001]chad (sense 1).
Node:semi, Next:[12002]semi-automated, Previous:[12003]selvage,
Up:[12004]= S =
semi /se'mee/ or /se'mi:/
n. Abbreviation for `semicolon', when speaking. "Commands to[12005]grind are prefixed by semi-semi-star" means that the prefix is
;;*, not 1/4 of a star. 2. A prefix used with words such as
`immediately' as a qualifier. "When is the system coming up?"
"Semi-immediately." (That is, maybe not for an hour.) "We did consider
that possibility semi-seriously." See also [12006]infinite.
Node:semi-automated, Next:[12007]semi-infinite, Previous:[12008]semi,
Up:[12009]= S =
semi-automated adj.
[US Geological Survey] A procedure that has yet to be completely
automated; it still requires a smidge of clueful human interaction.
Semi-automated programs usually come with written-out operator
instructions that are worth their weight in gold - without them, very
nasty things can happen. At USGS semi-automated programs are often
referred to as "semi-automated weapons".
Node:semi-infinite, Next:[12010]senior bit,
Previous:[12011]semi-automated, Up:[12012]= S =
semi-infinite n.
See [12013]infinite.
Node:senior bit, Next:[12014]September that never ended,
Previous:[12015]semi-infinite, Up:[12016]= S =
senior bit n.
[IBM; rare] Syn. [12017]meta bit.
Node:September that never ended, Next:[12018]server,
Previous:[12019]senior bit, Up:[12020]= S =
September that never ended
All time since September 1993. One of the seasonal rhythms of the
Usenet used to be the annual September influx of clueless newbies who,
lacking any sense of [12021]netiquette, made a general nuisance of
themselves. This coincided with people starting college, getting their
first internet accounts, and plunging in without bothering to learn
what was acceptable. These relatively small drafts of newbies could be
assimilated within a few months. But in September 1993, AOL users
became able to post to Usenet, nearly overwhelming the old-timers'
capacity to acculturate them; to those who nostalgically recall the
period before hand, this triggered an inexorable decline in the
quality of discussions on newsgroups. See also [12022]AOL!.
Node:server, Next:[12023]SEX, Previous:[12024]September that never
ended, Up:[12025]= S =
server n.
A kind of [12026]daemon that performs a service for the requester and
which often runs on a computer other than the one on which the server
runs. A particularly common term on the Internet, which is rife with
web servers',name servers', domain servers',news servers',
`finger servers', and the like.
Node:SEX, Next:[12027]sex changer, Previous:[12028]server, Up:[12029]=
S =
SEX /seks/
[Sun Users' Group & elsewhere] n. 1. Software EXchange. A technique
invented by the blue-green algae hundreds of millions of years ago to
speed up their evolution, which had been terribly slow up until then.
Today, SEX parties are popular among hackers and others (of course,
these are no longer limited to exchanges of genetic software). In
general, SEX parties are a [12030]Good Thing, but unprotected SEX can
propagate a [12031]virus. See also [12032]pubic directory. 2. The
rather Freudian mnemonic often used for Sign EXtend, a machine
instruction found in the PDP-11 and many other architectures. The RCA
1802 chip used in the early Elf and SuperElf personal computers had a
`SEt X register' SEX instruction, but this seems to have had little
folkloric impact. The Data General instruction set also had SEX.
[12033]DEC's engineers nearly got a PDP-11 assembler that used the SEX
mnemonic out the door at one time, but (for once) marketing wasn't
asleep and forced a change. That wasn't the last time this happened,
either. The author of "The Intel 8086 Primer", who was one of the
original designers of the 8086, noted that there was originally a SEX
instruction on that processor, too. He says that Intel management got
cold feet and decreed that it be changed, and thus the instruction was
renamed CBW and CWD (depending on what was being extended). Amusingly,
the Intel 8048 (the microcontroller used in IBM PC keyboards) is also
missing straight SEX but has logical-or and logical-and instructions
ORL and ANL.
The Motorola 6809, used in the Radio Shack Color Computer and in
U.K.'s `Dragon 32' personal computer, actually had an official SEX
instruction; the 6502 in the Apple II with which it competed did not.
British hackers thought this made perfect mythic sense; after all, it
was commonly observed, you could (on some theoretical level) have sex
with a dragon, but you can't have sex with an apple.
Node:sex changer, Next:[12034]shambolic link, Previous:[12035]SEX,
Up:[12036]= S =
sex changer n.
Syn. [12037]gender mender.
Node:shambolic link, Next:[12038]shar file, Previous:[12039]sex
changer, Up:[12040]= S =
shambolic link /sham-bol'ik link/ n.
A Unix symbolic link, particularly when it confuses you, points to
nothing at all, or results in your ending up in some completely
unexpected part of the filesystem....
Node:shar file, Next:[12041]sharchive, Previous:[12042]shambolic link,
Up:[12043]= S =
shar file /shar' fi:l/ n.
Syn. [12044]sharchive.
Node:sharchive, Next:[12045]Share and enjoy!, Previous:[12046]shar
file, Up:[12047]= S =
sharchive /shar'ki:v/ n.
[Unix and Usenet; from /bin/sh archive] A [12048]flattened
representation of a set of one or more files, with the unique property
that it can be unflattened (the original files restored) by feeding it
through a standard Unix shell; thus, a sharchive can be distributed to
anyone running Unix, and no special unpacking software is required.
Sharchives are also intriguing in that they are typically created by
shell scripts; the script that produces sharchives is thus a script
which produces self-unpacking scripts, which may themselves contain
scripts. (The downsides of sharchives are that they are an ideal venue
for [12049]Trojan horse attacks and that, for recipients not running
Unix, no simple un-sharchiving program is possible; sharchives can and
do make use of arbitrarily-powerful shell features.) Sharchives are
also commonly referred to as `shar files' after the name of the most
common program for generating them.
Node:Share and enjoy!, Next:[12050]shareware,
Previous:[12051]sharchive, Up:[12052]= S =
Share and enjoy! imp.
Commonly found at the end of software release announcements and[12053]README files, this phrase indicates allegiance to the hacker
ethic of free information sharing (see [12054]hacker ethic, sense 1).
The motto of the complaints division of Sirius CyberneticsCorporation (the ultimate gaggle of incompetent [12055]suits) in
Douglas Adams's "Hitch Hiker's Guide to the Galaxy". The irony of
using this as a cultural recognition signal appeals to hackers.
Node:shareware, Next:[12056]sharing violation, Previous:[12057]Share
and enjoy!, Up:[12058]= S =
shareware /sheir'weir/ n.
A kind of [12059]freeware (sense 1) for which the author requests some
payment, usually in the accompanying documentation files or in an
announcement made by the software itself. Such payment may or may not
buy additional support or functionality. See also [12060]careware,
[12061]charityware, [12062]crippleware, [12063]FRS, [12064]guiltware,
[12065]postcardware, and [12066]-ware; compare [12067]payware.
Node:sharing violation, Next:[12068]shebang,
Previous:[12069]shareware, Up:[12070]= S =
sharing violation
[From a file error common to several [12071]OSs] A response to
receiving information, typically of an excessively personal nature,
that you were probably happier not knowing. "You know those little
noises that Pat makes in bed..?" "Whoa! Sharing violation!" In
contrast to the original file error, which indicated that you were not
being given data that you did want.
Node:shebang, Next:[12072]shelfware, Previous:[12073]sharing
violation, Up:[12074]= S =
shebang /sh*-bang/ n.
The character sequence "#!" that frequently begins executable shell
scripts under Unix. Probably derived from "shell bang" under the
influence of American slang "the whole shebang" (everything, the
works).
Node:shelfware, Next:[12075]shell, Previous:[12076]shebang,
Up:[12077]= S =
shelfware /shelf'weir/ n.
Software purchased on a whim (by an individual user) or in accordance
with policy (by a corporation or government agency), but not actually
required for any particular use. Therefore, it often ends up on some
shelf.
Node:shell, Next:[12078]shell out, Previous:[12079]shelfware,
Up:[12080]= S =
shell [orig. [12081]Multics n.
techspeak, widely propagated via Unix] 1. [techspeak] The command
interpreter used to pass commands to an operating system; so called
because it is the part of the operating system that interfaces with
the outside world. 2. More generally, any interface program that
mediates access to a special resource or [12082]server for
convenience, efficiency, or security reasons; for this meaning, the
usage is usually `a shell around' whatever. This sort of program is
also called a `wrapper'. 3. A skeleton program, created by hand or by
another program (like, say, a parser generator), which provides the
necessary [12083]incantations to set up some task and the control flow
to drive it (the term [12084]driver is sometimes used synonymously).
The user is meant to fill in whatever code is needed to get real work
done. This usage is common in the AI and Microsoft Windows worlds, and
confuses Unix hackers.
Historical note: Apparently, the original Multics shell (sense 1) was
so called because it was a shell (sense 3); it ran user programs not
by starting up separate processes, but by dynamically linking the
programs into its own code, calling them as subroutines, and then
dynamically de-linking them on return. The VMS command interpreter
still does something very like this.
Node:shell out, Next:[12085]shift left (or right) logical,
Previous:[12086]shell, Up:[12087]= S =
shell out vi.
[Unix] To [12088]spawn an interactive subshell from within a program
(e.g., a mailer or editor). "Bang foo runs foo in a subshell, while
bang alone shells out."
Node:shift left (or right) logical,
Comments (0)