= P =
=====

   :P-mail: n.  [rare] Physical mail, as opposed to {email}.
Synonymous with {snail-mail}, but much less common.

   :P.O.D.: /P-O-D/  [rare] Acronym for `Piece Of Data' (as    opposed
to a code section).  See also {pod}.

   :padded cell: n.  Where you put {luser}s so they can't hurt
anything.  A program that limits a luser to a carefully restricted
subset of the capabilities of the host system (for example, the
`rsh(1)' utility on USG Unix).  Note that this is different    from an
{iron box} because it is overt and not aimed at    enforcing security
so much as protecting others (and the luser)    from the consequences
of the luser's boundless naivete (see    {naive}).  Also `padded cell
environment'.

   :page in: v.  [MIT] 1. To become aware of one's surroundings
again after having paged out (see {page out}).  Usually confined    to
the sarcastic comment: "Eric pages in, {film at 11}!"     2. Syn. `swap
in'; see {swap}.

   :page out: vi.  [MIT] 1. To become unaware of one's    surroundings
temporarily, due to daydreaming or preoccupation.     "Can you repeat
that?  I paged out for a minute."  See {page    in}.  Compare {glitch},
{thinko}.  2. Syn. `swap out'; see    {swap}.

   :pain in the net: n.  A {flamer}.

   :Pangloss parity: n.  [from Dr. Pangloss, the eternal optimist    in
Voltaire's "Candide"] In corporate DP shops, a common    condition of
severe but equally shared {lossage} resulting from    the theory that
as long as everyone in the organization has the    exactly the _same_
model of obsolete computer, everything will    be fine.

   :paper-net: n.  Hackish way of referring to the postal    service,
analogizing it to a very slow, low-reliability network.     Usenet {sig
block}s sometimes include a "Paper-Net:" header    just before the
sender's postal address; common variants of this    are "Papernet" and
"P-Net".  Note that the standard    {netiquette} guidelines discourage
this practice as a waste of    bandwidth, since netters are quite
unlikely to casually use postal    addresses.  Compare {voice-net},
{snail-mail}, {P-mail}.

   :param: /p*-ram'/ n.  [common] Shorthand for    `parameter'.  See
also {parm}; compare {arg}, {var}.

   :PARC: n.  See {XEROX PARC}.

   :parent message: n.  What a {followup} follows up.

   :parity errors: pl.n.  Little lapses of attention or (in    more
severe cases) consciousness, usually brought on by having    spent all
night and most of the next day hacking.  "I need to go    home and
crash; I'm starting to get a lot of parity errors."     Derives from a
relatively common but nearly always correctable    transient error in
memory hardware. It predates RAM; in fact, this    term is reported to
have already have been in use in its jargoin    sense back in the 1960s
when magnetic cores ruled.  Parity errors    can also afflict mass
storage and serial communication lines; this    is more serious because
not always correctable.

   :Parkinson's Law of Data: prov.  "Data expands to fill    the space
available for storage"; buying more memory encourages    the use of
more memory-intensive techniques.  It has been observed    since the
mid-1980s that the memory usage of evolving systems tends    to double
roughly once every 18 months.  Fortunately, memory    density available
for constant dollars also tends to about double    once every 18 months
(see {Moore's Law}); unfortunately, the    laws of physics guarantee
that the latter cannot continue    indefinitely.

   :parm: /parm/ n.  Further-compressed form of {param}.     This term
is an IBMism, and written use is almost unknown    outside IBM shops;
spoken /parm/ is more widely distributed, but    the synonym {arg} is
favored among hackers.  Compare {arg},    {var}.

   :parse: [from linguistic terminology] vt.  1. To determine the
syntactic structure of a sentence or other utterance (close to the
standard English meaning).  "That was the one I saw you."  "I    can't
parse that."  2. More generally, to understand or    comprehend.  "It's
very simple; you just kretch the glims and then    aos the zotz."  "I
can't parse that."  3. Of fish, to have to    remove the bones
yourself.  "I object to parsing fish", means "I    don't want to get a
whole fish, but a sliced one is okay".  A    `parsed fish' has been
deboned.  There is some controversy over    whether `unparsed' should
mean `bony', or also mean    `deboned'.

   :Pascal:: n.  An Algol-descended language designed by    Niklaus
Wirth on the CDC 6600 around 1967-68 as an instructional    tool for
elementary programming.  This language, designed primarily    to keep
students from shooting themselves in the foot and thus    extremely
restrictive from a general-purpose-programming point of    view, was
later promoted as a general-purpose tool and, in fact,    became the
ancestor of a large family of languages including    Modula-2 and
{{Ada}} (see also {bondage-and-discipline    language}).  The hackish
point of view on Pascal was probably best    summed up by a devastating
(and, in its deadpan way, screamingly    funny) 1981 paper by Brian
Kernighan (of {K&R} fame) entitled    "Why Pascal is Not My Favorite
Programming Language", which    was turned down by the technical
journals but circulated widely via    photocopies.  It was eventually
published in "Comparing and    Assessing Programming Languages", edited
by Alan Feuer and Narain    Gehani (Prentice-Hall, 1984).  Part of his
discussion is worth    repeating here, because its criticisms are still
apposite to Pascal    itself after ten years of improvement and could
also stand as an    indictment of many other bondage-and-discipline
languages.  At the    end of a summary of the case against Pascal,
Kernighan wrote:

     9. There is no escape

     This last point is perhaps the most important.  The language is
     inadequate but circumscribed, because there is no way to escape its
     limitations.  There are no casts to disable the type-checking when
     necessary.  There is no way to replace the defective run-time
     environment with a sensible one, unless one controls the compiler
     that defines the "standard procedures".  The language is closed.

     People who use Pascal for serious programming fall into a fatal
     trap.  Because the language is impotent, it must be extended.  But
     each group extends Pascal in its own direction, to make it look
     like whatever language they really want.  Extensions for separate
     compilation, FORTRAN-like COMMON, string data types, internal
     static variables, initialization, octal numbers, bit operators,
     etc., all add to the utility of the language for one group but
     destroy its portability to others.

     I feel that it is a mistake to use Pascal for anything much beyond
     its original target.  In its pure form, Pascal is a toy language,
     suitable for teaching but not for real programming.

Pascal has since been almost entirely displaced (by {C}) from the
niches it had acquired in serious applications and systems
programming, but retains some popularity as a hobbyist language in
the MS-DOS and Macintosh worlds.

   :pastie: /pay'stee/ n.  An adhesive-backed label designed to    be
attached to a key on a keyboard to indicate some non-standard
character which can be accessed through that key.  Pasties are
likely to be used in APL environments, where almost every key is
associated with a special character.  A pastie on the R key, for
example, might remind the user that it is used to generate the    rho
character.  The term properly refers to    nipple-concealing devices
formerly worn by strippers in concession    to indecent-exposure laws;
compare {tits on a keyboard}.

   :patch:  1. n. A temporary addition to a piece of code,    usually
as a {quick-and-dirty} remedy to an existing bug or    misfeature.  A
patch may or may not work, and may or may not    eventually be
incorporated permanently into the program.     Distinguished from a
{diff} or {mod} by the fact that a patch    is generated by more
primitive means than the rest of the program;    the classical examples
are instructions modified by using the front    panel switches, and
changes made directly to the binary executable    of a program
originally written in an {HLL}.  Compare    {one-line fix}.  2. vt. To
insert a patch into a piece of code.     3. [in the Unix world] n. A
{diff} (sense 2).  4. A set of    modifications to binaries to be
applied by a patching program.  IBM    operating systems often receive
updates to the operating system in    the form of absolute hexadecimal
patches.  If you have modified    your OS, you have to disassemble
these back to the source.  The    patches might later be corrected by
other patches on top of them    (patches were said to "grow scar
tissue").  The result was often    a convoluted {patch space} and
headaches galore.  5. [Unix] the    `patch(1)' program, written by
Larry Wall, which automatically    applies a patch (sense 3) to a set
of source code.

   There is a classic story of a {tiger team} penetrating a secure
military computer that illustrates the danger inherent in binary
patches (or, indeed, any patches that you can't -- or don't --
inspect and examine before installing).  They couldn't find any
{trap door}s or any way to penetrate security of IBM's OS, so    they
made a site visit to an IBM office (remember, these were    official
military types who were purportedly on official business),    swiped
some IBM stationery, and created a fake patch.  The patch    was
actually the trapdoor they needed.  The patch was distributed    at
about the right time for an IBM patch, had official stationery    and
all accompanying documentation, and was dutifully installed.     The
installation manager very shortly thereafter learned something    about
proper procedures.

   :patch pumpkin: n.  [Perl hackers] A notional token passed    around
among the members of a project.  Possession of the patch    pumpkin
means one has the exclusive authority to make    changes on the
project's master source tree.  The implicit    assumption is that
`pumpkin holder' status is temporary and    rotates periodically among
senior project members.

   This term comes from the Perl development community, but has been
sighted elsewhere.  It derives from a stuffed-toy pumpkin    that was
passed around at a development shop years ago as    the access control
for a shared backup-tape drive.

   :patch space: n.  An unused block of bits left in a binary    so
that it can later be modified by insertion of machine-language
instructions there (typically, the patch space is modified to
contain new code, and the superseded code is patched to contain a
jump or call to the patch space).  The near-universal use of
compilers and interpreters has made this term rare; it is now
primarily historical outside IBM shops.  See {patch} (sense 4),
{zap} (sense 4), {hook}.

   :path: n.  1. A {bang path} or explicitly routed    {{Internet
address}}; a node-by-node specification of a link    between two
machines.  2. [Unix] A filename, fully specified    relative to the
root directory (as opposed to relative to the    current directory; the
latter is sometimes called a `relative    path').  This is also called
a `pathname'.  3. [Unix and MS-DOS]    The `search path', an
environment variable specifying the    directories in which the {shell}
(COMMAND.COM, under MS-DOS)    should look for commands.  Other,
similar constructs abound under    Unix (for example, the C
preprocessor has a `search path' it    uses in looking for `#include'
files).

   :pathological: adj.  1. [scientific computation] Used of a    data
set that is grossly atypical of normal expected input, esp.     one
that exposes a weakness or bug in whatever algorithm one is    using.
An algorithm that can be broken by pathological inputs may    still be
useful if such inputs are very unlikely to occur in    practice.  2.
When used of test input, implies that it was    purposefully engineered
as a worst case.  The implication in both    senses is that the data is
spectacularly ill-conditioned or that    someone had to explicitly set
out to break the algorithm in order    to come up with such a crazy
example.  3. Also said of an unlikely    collection of circumstances.
"If the network is down and comes up    halfway through the execution
of that command by root, the system    may just crash."  "Yes, but
that's a pathological case."  Often    used to dismiss the case from
discussion, with the implication that    the consequences are
acceptable, since they will happen so    infrequently (if at all) that
it doesn't seem worth going to the    extra trouble to handle that case
(see sense 1).

   :payware: /pay'weir/ n.  Commercial software.  Oppose    {shareware}
or {freeware}.

   :PBD: /P-B-D/ n.  [abbrev. of `Programmer Brain Damage']    Applied
to bug reports revealing places where the program was    obviously
broken by an incompetent or short-sighted programmer.     Compare
{UBD}; see also {brain-damaged}.

   :PC-ism: /P-C-izm/ n.  A piece of code or coding    technique that
takes advantage of the unprotected single-tasking    environment in IBM
PCs and the like running DOS, e.g., by    busy-waiting on a hardware
register, direct diddling of screen    memory, or using hard timing
loops.  Compare {ill-behaved},    {vaxism}, {unixism}.  Also, `PC-ware'
n., a program full of    PC-isms on a machine with a more capable
operating system.     Pejorative.

   :PD: /P-D/ adj.  [common] Abbreviation for `public    domain',
applied to software distributed over {Usenet} and from    Internet
archive sites.  Much of this software is not in fact    public domain
in the legal sense but travels under various    copyrights granting
reproduction and use rights to anyone who can    {snarf} a copy.  See
{copyleft}.

   :PDL: /P-D-L/, /pid'l/, /p*d'l/ or /puhd'l/     1. n. `Program
Design Language'.  Any of a large class of formal    and profoundly
useless pseudo-languages in which {management}    forces one to design
programs.  Too often, management expects PDL    descriptions to be
maintained in parallel with the code, imposing    massive overhead to
little or no benefit.  See also {{flowchart}}.     2. v. To design
using a program design language.  "I've been    pdling so long my eyes
won't focus beyond 2 feet."  3. n. `Page    Description Language'.
Refers to any language which is used to    control a graphics device,
usually a laserprinter.  The most common    example is, of course,
Adobe's {{PostScript}} language, but there    are many others, such as
Xerox InterPress, etc.     4. In ITS days, the preferred MITism for
{stack}.  See    {overflow pdl}.  5. Dave Lebling, one of the
co-authors of    {Zork}; (his {network address} on the ITS machines was
at one    time pdl@dms).

   :PDP-10: n.  [Programmed Data Processor model 10] The    machine
that made timesharing real.  It looms large in hacker    folklore
because of its adoption in the mid-1970s by many    university
computing facilities and research labs, including the    MIT AI Lab,
Stanford, and CMU.  Some aspects of the instruction    set (most
notably the bit-field instructions) are still considered
unsurpassed.  The 10 was eventually eclipsed by the VAX machines
(descendants of the PDP-11) when {DEC} recognized that the 10    and
VAX product lines were competing with each other and decided to
concentrate its software development effort on the more profitable
VAX.  The machine was finally dropped from DEC's line in 1983,
following the failure of the Jupiter Project at DEC to build a
viable new model.  (Some attempts by other companies to market
clones came to nothing; see {Foonly} and {Mars}.)  This event
spelled the doom of {{ITS}} and the technical cultures that had
spawned the original Jargon File, but by mid-1991 it had become
something of a badge of honorable old-timerhood among hackers to
have cut one's teeth on a PDP-10.  See {{TOPS-10}}, {{ITS}},    {BLT},
{DDT}, {DPB}, {EXCH}, {HAKMEM}, {LDB},    {pop}, {push}.

   :PDP-20: n.  The most famous computer that never was.     {PDP-10}
computers running the {{TOPS-10}} operating system    were labeled
`DECsystem-10' as a way of differentiating them from    the PDP-11.
Later on, those systems running {TOPS-20} were labeled
`DECSYSTEM-20' (the block capitals being the result of a lawsuit
brought against DEC by Singer, which once made a computer called
`system-10'), but contrary to popular lore there was never a
`PDP-20'; the only difference between a 10 and a 20 was the
operating system and the color of the paint.  Most (but not all)
machines sold to run TOPS-10 were painted `Basil Blue', whereas    most
TOPS-20 machines were painted `Chinese Red' (often mistakenly    called
orange).

   :PEBKAC: /peb'kak/  [Abbrev., "Problem Exists Between    Keyboard
And Chair"] Used by support people, particularly at call    centers and
help desks. Not used with the public.  Denotes pilot    error as the
cause of the crash, especially stupid errors that even    a luser could
figure out. Very derogatory. Usage: "Did you ever    figure out why
that guy couldn't print?" "Yeah, he kept    cancelling the operation
before it could finish. PEBKAC."

   :peek: n.,vt.  (and {poke}) The commands in most    microcomputer
BASICs for directly accessing memory contents at an    absolute
address; often extended to mean the corresponding    constructs in any
{HLL} (peek reads memory, poke modifies it).     Much hacking on small,
non-MMU micros used to consist of `peek'ing    around memory, more or
less at random, to find the location where    the system keeps
interesting stuff.  Long (and variably accurate)    lists of such
addresses for various computers circulated (see    {{interrupt list}}).
The results of `poke's at these    addresses may be highly useful,
mildly amusing, useless but neat,    or (most likely) total {lossage}
(see {killer poke}).

   Since a {real operating system} provides useful, higher-level
services for the tasks commonly performed with peeks and pokes on
micros, and real languages tend not to encourage low-level memory
groveling, a question like "How do I do a peek in C?" is    diagnostic
of the {newbie}.  (Of course, OS kernels often have to    do exactly
this; a real kernel hacker would unhesitatingly, if    unportably,
assign an absolute address to a pointer variable and    indirect
through it.)

   :pencil and paper: n.  An archaic information storage and
transmission device that works by depositing smears of graphite on
bleached wood pulp.  More recent developments in paper-based
technology include improved `write-once' update devices which use
tiny rolling heads similar to mouse balls to deposit colored
pigment.  All these devices require an operator skilled at    so-called
`handwriting' technique.  These technologies are    ubiquitous outside
hackerdom, but nearly forgotten inside it.  Most    hackers had
terrible handwriting to begin with, and years of    keyboarding tend to
have encouraged it to degrade further.  Perhaps    for this reason,
hackers deprecate pencil-and-paper technology and    often resist using
it in any but the most trivial contexts.

   :Pentagram Pro: n.   A humorous corruption of "Pentium    Pro", with
a Satanic reference, implying that the chip is    inherently {evil}.
Often used with "666 MHz"; there is a    T-shirt.  See {Pentium}

   :Pentium: n.  The name given to Intel's P5 chip, the    successor to
the 80486. The name was chosen because of difficulties    Intel had in
trademarking a number. It suggests the number five    (implying 586)
while (according to Intel) conveying a meaning of    strength "like
titanium".  Among hackers, the plural is    frequently `pentia'. See
also {Pentagram Pro}.

   Intel did not stick to this convention when naming its P6 processor
 the Pentium Pro; many believe this is due to difficulties in
selling a chip with "sex" in its name.  Successor chips have been
called `Pentium II' and `Pentium III'.

   :peon: n.  A person with no special ({root} or {wheel})
privileges on a computer system.  "I can't create an account on
_foovax_ for you; I'm only a peon there."

   :percent-S: /per-sent' es'/ n.  [From the code in C's    `printf(3)'
library function used to insert an arbitrary    string argument] An
unspecified person or object.  "I was just    talking to some percent-s
in administration."  Compare    {random}.

   :perf: /perf/ n.  Syn. {chad} (sense 1).  The term    `perfory'
/per'f*-ree/ is also heard.  The term {perf} may    also refer to the
perforations themselves, rather than the chad    they produce when torn
(philatelists use it this way).

   :perfect programmer syndrome: n.  Arrogance; the egotistical
conviction that one is above normal human error.  Most frequently
found among programmers of some native ability but relatively    little
experience (especially new graduates; their perceptions may    be
distorted by a history of excellent performance at solving    {toy
problem}s).  "Of course my program is correct, there is no    need to
test it."  "Yes, I can see there may be a problem here,    but _I'll_
never type `rm -r /' while in {root    mode}."

   :Perl: /perl/ n.  [Practical Extraction and Report    Language,
a.k.a. Pathologically Eclectic Rubbish Lister] An    interpreted
language developed by Larry Wall    (<<larry@wall.org>>, author of
`patch(1)' and    `rn(1)') and distributed over Usenet.  Superficially
resembles    {awk}, but is much hairier, including many facilities
reminiscent of `sed(1)' and shells and a comprehensive Unix
system-call interface.  Unix sysadmins, who are almost always
incorrigible hackers, generally consider it one of the    {languages of
choice}.  Perl has been described, in a parody of    a famous remark
about `lex(1)', as the "Swiss-Army chainsaw"    of Unix programming.
See also {Camel Book},    {TMTOWTDI}.

   :person of no account: n.  [University of California at Santa
Cruz] Used when referring to a person with no {network address},
frequently to forestall confusion.  Most often as part of an
introduction: "This is Bill, a person of no account, but he used    to
be bill@random.com".  Compare {return from the    dead}.

   :pessimal: /pes'im-l/ adj.  [Latin-based antonym for    `optimal']
Maximally bad.  "This is a pessimal situation."     Also `pessimize'
vt. To make as bad as possible.  These words are    the obvious
Latin-based antonyms for `optimal' and `optimize',    but for some
reason they do not appear in most English    dictionaries, although
`pessimize' is listed in the OED.

   :pessimizing compiler: /pes'*-mi:z`ing k*m-pi:l'r/ n.  A    compiler
that produces object [antonym of techspeak `optimizing    compiler']
code that is worse than the straightforward or obvious    hand
translation.  The implication is that the compiler is actually
trying to optimize the program, but through excessive cleverness is
doing the opposite.  A few pessimizing compilers have been written
on purpose, however, as pranks or burlesques.

   :peta-: /pe't*/ pref  [SI] See {{quantifiers}}.

   :PETSCII: /pet'skee/ n. obs.  [abbreviation of PET    ASCII] The
variation (many would say perversion) of the {{ASCII}}    character set
used by the Commodore Business Machines PET series of    personal
computers and the later Commodore C64, C16, C128, and    VIC20
machines.  The PETSCII set used left-arrow and up-arrow (as    in
old-style ASCII) instead of underscore and caret, placed the
unshifted alphabet at positions 65-90, put the shifted alphabet at
positions 193-218, and added graphics characters.

   :phage: n.  A program that modifies other programs or    databases
in unauthorized ways; esp. one that propagates a    {virus} or {Trojan
horse}.  See also {worm},    {mockingbird}.  The analogy, of course, is
with phage viruses in    biology.

   :phase:  1. n. The offset of one's waking-sleeping schedule    with
respect to the standard 24-hour cycle; a useful concept among    people
who often work at night and/or according to no fixed    schedule.  It
is not uncommon to change one's phase by as much as 6    hours per day
on a regular basis.  "What's your phase?"  "I've    been getting in
about 8 P.M. lately, but I'm going to {wrap    around} to the day
schedule by Friday."  A person who is roughly    12 hours out of phase
is sometimes said to be in `night mode'.     (The term `day mode' is
also (but less frequently) used, meaning    you're working 9 to 5 (or,
more likely, 10 to 6).)  The act of    altering one's cycle is called
`changing phase'; `phase    shifting' has also been recently reported
from Caltech.     2. `change phase the hard way': To stay awake for a
very long    time in order to get into a different phase.  3. `change
phase    the easy way': To stay asleep, etc.  However, some claim that
 either staying awake longer or sleeping longer is easy, and that it
is _shortening_ your day or night that is really hard (see    {wrap
around}).  The `jet lag' that afflicts travelers who    cross many
time-zone boundaries may be attributed to two distinct    causes: the
strain of travel per se, and the strain of changing    phase.  Hackers
who suddenly find that they must change phase    drastically in a short
period of time, particularly the hard way,    experience something very
like jet lag without traveling.

   :phase of the moon: n.  Used humorously as a random parameter    on
which something is said to depend.  Sometimes implies    unreliability
of whatever is dependent, or that reliability seems    to be dependent
on conditions nobody has been able to determine.     "This feature
depends on having the channel open in mumble mode,    having the foo
switch set, and on the phase of the moon."  See    also {heisenbug}.

   True story: Once upon a time there was a program bug that    really
did depend on the phase of the moon.  There was a little    subroutine
that had traditionally been used in various programs at    MIT to
calculate an approximation to the moon's true phase.  GLS
incorporated this routine into a LISP program that, when it wrote
out a file, would print a timestamp line almost 80 characters long.
Very occasionally the first line of the message would be too long
and would overflow onto the next line, and when the file was later
read back in the program would {barf}.  The length of the first    line
depended on both the precise date and time and the length of    the
phase specification when the timestamp was printed, and so the    bug
literally depended on the phase of the moon!

   The first paper edition of the Jargon File (Steele-1983) included
an example of one of the timestamp lines that exhibited this bug,
but the typesetter `corrected' it.  This has since been    described as
the phase-of-the-moon-bug bug.

   However, beware of assumptions.  A few years ago, engineers of CERN
 (European Center for Nuclear Research) were baffled by some errors
in experiments conducted with the LEP particle accelerator.  As the
formidable amount of data generated by such devices is heavily
processed by computers before being seen by humans, many people
suggested the software was somehow sensitive to the phase of the
moon.  A few desperate engineers discovered the truth; the error
turned out to be the result of a tiny change in the geometry of the
27km circonference ring, physically caused by the deformation of    the
Earth by the passage of the Moon!  This story has entered    physics
folklore as a Newtonian vengeance on particle physics and    as an
example of the relevance of the simplest and oldest physical    laws to
the most modern science.

   :phase-wrapping: n.  [MIT] Syn. {wrap around}, sense 2.

   :PHB: /P-H-B/  [Usenet; common; rarely spoken] Abbreviation,
"Pointy-Haired Boss".  From the {Dilbert} character, the    archetypal
halfwitted middle-{management} type. See also    {pointy-haired}.

   :phreaker: /freek'r/ n.  One who engages in    {phreaking}.

   :phreaking: /freek'ing/ n.  [from `phone phreak'] 1. The    art and
science of {cracking} the phone network (so as, for    example, to make
free long-distance calls).  2. By extension,    security-cracking in
any other context (especially, but not    exclusively, on
communications networks) (see {cracking}).

   At one time phreaking was a semi-respectable activity among
hackers; there was a gentleman's agreement that phreaking as an
intellectual game and a form of exploration was OK, but serious
theft of services was taboo.  There was significant crossover
between the hacker community and the hard-core phone phreaks who    ran
semi-underground networks of their own through such media as    the
legendary "TAP Newsletter".  This ethos began to break    down in the
mid-1980s as wider dissemination of the techniques put    them in the
hands of less responsible phreaks.  Around the same    time, changes in
the phone network made old-style technical    ingenuity less effective
as a way of hacking it, so phreaking came    to depend more on overtly
criminal acts such as stealing phone-card    numbers.  The crimes and
punishments of gangs like the `414 group'    turned that game very
ugly.  A few old-time hackers still phreak    casually just to keep
their hand in, but most these days have    hardly even heard of `blue
boxes' or any of the other    paraphernalia of the great phreaks of
yore.

   :pico-: pref.  [SI: a quantifier    meaning * 10^-12]    Smaller
than {nano-}; used in the same rather loose    connotative way as
{nano-} and {micro-}.  This usage is not yet    common in the way
{nano-} and {micro-} are, but should be    instantly recognizable to
any hacker.  See also {{quantifiers}},    {micro-}.

   :pig-tail:  [radio hams] A short piece of cable with two
connectors on each end for converting between one connector type    and
another.  Common pig-tails are 9-to-25-pin serial-port    converters
and cables to connect PCMCIA network cards to an RJ-45    network
cable.

   :pilot error: n.  [Sun: from aviation] A user's    misconfiguration
or misuse of a piece of software, producing    apparently buglike
results (compare {UBD}).  "Joe Luser    reported a bug in sendmail that
causes it to generate bogus    headers."  "That's not a bug, that's
pilot error.  His    `sendmail.cf' is hosed."

   :ping:  [from the submariners' term for a sonar pulse] 1. n.
Slang term for a small network message (ICMP ECHO) sent by a
computer to check for the presence and alertness of another.  The
Unix command `ping(8)' can be used to do this manually (note    that
`ping(8)''s author denies the widespread folk etymology    that the
name was ever intended as acronym for `Packet INternet    Groper').
Occasionally used as a phone greeting.  See {ACK},    also {ENQ}.  2.
vt. To verify the presence of.  3. vt. To get    the attention of.  4.
vt. To send a message to all members of a    {mailing list} requesting
an {ACK} (in order to verify that    everybody's addresses are
reachable).  "We haven't heard much of    anything from Geoff, but he
did respond with an ACK both times I    pinged jargon-friends."  5. n.
A quantum packet of happiness.     People who are very happy tend to
exude pings; furthermore, one can    intentionally create pings and aim
them at a needy party (e.g., a    depressed person).  This sense of
ping may appear as an    exclamation; "Ping!" (I'm happy; I am emitting
a quantum of    happiness; I have been struck by a quantum of
happiness).  The form    "pingfulness", which is used to describe
people who exude pings,    also occurs.  (In the standard abuse of
language, "pingfulness"    can also be used as an exclamation, in which
case it's a much    stronger exclamation than just "ping"!).  Oppose
{blargh}.

   The funniest use of `ping' to date was described in January 1991 by
 Steve Hayman on the Usenet group comp.sys.next.  He was trying    to
isolate a faulty cable segment on a TCP/IP Ethernet hooked up to    a
NeXT machine, and got tired of having to run back to his console
after each cabling tweak to see if the ping packets were getting
through.  So he used the sound-recording feature on the NeXT, then
wrote a script that repeatedly invoked `ping(8)', listened for    an
echo, and played back the recording on each returned packet.
Result?  A program that caused the machine to repeat, over and    over,
"Ping ... ping ... ping ..." as long as the    network was up.  He
turned the volume to maximum, ferreted through    the building with one
ear cocked, and found a faulty tee connector    in no time.

   :Ping O' Death: n.  A notorious {exploit} that (when    first
discovered) could be easily used to crash a wide variety of    machines
by overunning size limits in their TCP/IP stacks.  First    revealed in
late 1996.  The open-source Unix community patched its    systems to
remove the vulnerability within days or weeks, the    closed-source OS
vendors generally took months.  While the    difference in response
times repeated a pattern familiar from other    security incidents, the
accompanying glare of Web-fueled publicity    proved unusually
embarrassing to the OS vendors and so passed into    history and myth.
The term is now used to refer to any nudge    delivered by network
wizards over the network that causes bad    things to happen on the
system being nudged.  For the full story on    the original exploit, see
  `http://www.insecure.org/sploits/ping-o-death.html'.

   Compare with 'kamikaze packet,' 'Finger of Death' and 'Chernobyl
packet.'

   :ping storm: n.  A form of {DoS attack} consisting    of a flood of
{ping} requests (normally used to check network    conditions) designed
to disrupt the normal activity of a system.     This act is sometimes
called `ping lashing' or `ping flood'.     Compare {mail storm},
{broadcast storm}.

   :pink wire: n.  [from the pink PTFE wire used in military
equipment] As {blue wire}, but used in military    applications. 2. vi.
To add a pink wire to a board.

   :pipe: n.  [common] Idiomatically, one's connection to the
Internet; in context, the expansion "bit pipe" is understood.  A
"fat pipe" is a line with T1 or higher capacity.  A person with a
28.8 modem might be heard to complain "I need a bigger    pipe".

   :pistol: n.  [IBM] A tool that makes it all too easy for you to
shoot yourself in the foot.  "Unix `rm *' makes such a nice    pistol!"

   :pixel sort: n.  [Commodore users] Any compression routine    which
irretrievably loses valuable data in the process of    {crunch}ing it.
Disparagingly used for `lossy' methods such as    JPEG. The theory, of
course, is that these methods are only used on    photographic images
in which minor loss-of-data is not visible to    the human eye.  The
term `pixel sort' implies distrust of this    theory.  Compare
{bogo-sort}.

   :pizza box: n.  [Sun] The largish thin box housing the electronics
in (especially Sun) desktop workstations, so named because of its
size and shape and the dimpled pattern that looks like air holes.

   Two meg single-platter removable disk packs used to be called
pizzas, and the huge drive they were stuck into was referred to as    a
pizza oven.  It's an index of progress that in the old days just    the
disk was pizza-sized, while now the entire computer is.

   :plaid screen: n.  [XEROX PARC] A `special effect' that    occurs
when certain kinds of {memory smash}es overwrite the    control blocks
or image memory of a bit-mapped display.  The term    "salt and pepper"
may refer to a different pattern of similar    origin.  Though the term
as coined at PARC refers to the result of    an error, some of the {X}
demos induce plaid-screen effects    deliberately as a {display hack}.

   :plain-ASCII:  /playn-as'kee/ Syn. {flat-ASCII}.

   :plan file: n.  [Unix] On systems that support {finger}, the
`.plan' file in a user's home directory is displayed when the user
is fingered.  This feature was originally intended to be used to
keep potential fingerers apprised of one's location and near-future
plans, but has been turned almost universally to humorous and
self-expressive purposes (like a {sig block}).  See also    {Hacking X
for Y}.

   A recent innovation in plan files has been the introduction of
"scrolling plan files" which are one-dimensional animations made
using only the printable ASCII character set, carriage return and
line feed, avoiding terminal specific escape sequences, since the
{finger} command will (for security reasons; see    {letterbomb}) not
pass the escape character.

   Scrolling .plan files have become art forms in miniature, and some
sites have started competitions to find who can create the longest
running, funniest, and most original animations.  Various animation
characters include:

Centipede:
     mmmmme

Lorry/Truck:
     oo-oP

Andalusian Video Snail:
     _@/

and a compiler (ASP) is available on Usenet for producing them.     See
also {twirling baton}.

   :platinum-iridium: adj.  Standard, against which all others of
the same category are measured.  Usage: silly.  The notion is that
one of whatever it is has actually been cast in platinum-iridium
alloy and placed in the vault beside the Standard Kilogram at the
International Bureau of Weights and Measures near Paris.  (From    1889
to 1960, the meter was defined to be the distance between two
scratches in a platinum-iridium bar kept in that same vault --    this
replaced an earlier definition as 10^(-7) times the    distance between
the North Pole and the Equator along a meridian    through Paris;
unfortunately, this had been based on an inexact    value of the
circumference of the Earth.  From 1960 to 1984 it was    defined to be
1650763.73 wavelengths of the orange-red line of    krypton-86
propagating in a vacuum.  It is now defined as the    length of the
path traveled by light in a vacuum in the time    interval of
1/299,792,458 of a second.  The kilogram is now the    only unit of
measure officially defined in terms of a unique    artifact.)  "This
garbage-collection algorithm has been tested    against the
platinum-iridium cons cell in Paris."  Compare    {golden}.

   :playpen: n.  [IBM] A room where programmers work.  Compare {salt
mines}.

   :playte: /playt/  16 bits, by analogy with {nybble} and    {{byte}}.
Usage: rare and extremely silly.  See also {dynner}    and {crumb}.
General discussion of such terms is under    {nybble}.

   :plingnet: /pling'net/ n.  Syn. {UUCPNET}.  Also see
{{Commonwealth Hackish}}, which uses `pling' for {bang} (as    in {bang
path}).

   :plokta: /plok't*/ v.  [acronym: Press Lots Of Keys To    Abort] To
press random keys in an attempt to get some response    from the
system.  One might plokta when the abort procedure for a    program is
not known, or when trying to figure out if the system is    just
sluggish or really hung.  Plokta can also be used while trying    to
figure out any unknown key sequence for a particular operation.
Someone going into `plokta mode' usually places both hands flat    on
the keyboard and mashes them down, hoping for some useful    response.

   A slightly more directed form of plokta can often be seen in mail
messages or Usenet articles from new users -- the text might end    with

             ^X^C
             q
             quit
             :q
             ^C
             end
             x
             exit
             ZZ
             ^D
             ?
             help

as the user vainly tries to find the right exit sequence, with the
incorrect tries piling up at the end of the message....

   :plonk: excl.,vt.  [Usenet: possibly influenced by British    slang
`plonk' for cheap booze, or `plonker' for someone    behaving stupidly
(latter is lit. equivalent to Yiddish    `schmuck')] The sound a
{newbie} makes as he falls to the    bottom of a {kill file}.  While it
originated in the    {newsgroup} talk.bizarre, this term (usually
written    "*plonk*") is now (1994) widespread on Usenet as a form of
public    ridicule.

   :plug-and-pray: adj.,vi.  Parody of the techspeak term
`plug-and-play', describing a PC peripheral card which is claimed    to
have no need for hardware configuration via DIP switches, and    which
should be work as soon as it is inserted in the PC.     Unfortunately,
even the PCI bus is not up to pulling this off    reliably, and people
who have to do installation or troubleshoot    PCs soon find themselves
longing for the DIP switches.

   :plugh: /ploogh/ v.  [from the {ADVENT} game] See    {xyzzy}.

   :plumbing: n.  [Unix] Term used for {shell} code, so called
because of the prevalence of `pipelines' that feed the output of    one
program to the input of another.  Under Unix, user utilities    can
often be implemented or at least prototyped by a suitable    collection
of pipelines and temp-file grinding encapsulated in a    shell script;
this is much less effort than writing C every time,    and the
capability is considered one of Unix's major winning    features.  A
few other OSs such as IBM's VM/CMS support similar    facilities.  Esp.
used in the construction `hairy plumbing'    (see {hairy}).  "You can
kluge together a basic spell-checker    out of `sort(1)', `comm(1)',
and `tr(1)' with a    little plumbing."  See also {tee}.

   :PM: /P-M/  1. v. (from `preventive maintenance') To    bring down a
machine for inspection or test purposes.  See    {provocative
maintenance}; see also {scratch monkey}.     2. n. Abbrev. for
`Presentation Manager', an {elephantine} OS/2    graphical user
interface.

   :pnambic: /p*-nam'bik/  [Acronym from the scene in the film
version of "The Wizard of Oz" in which the true nature of the    wizard
is first discovered: "Pay no attention to the man behind    the
curtain."]  1. A stage of development of a process or function    that,
owing to incomplete implementation or to the complexity of    the
system, requires human interaction to simulate or replace some    or
all of the actions, inputs, or outputs of the process or    function.
2. Of or pertaining to a process or function whose    apparent
operations are wholly or partially falsified.     3. Requiring
{prestidigitization}.

   The ultimate pnambic product was "Dan Bricklin's Demo", a program
which supported flashy user-interface design prototyping.  There is
a related maxim among hackers: "Any sufficiently advanced    technology
is indistinguishable from a rigged demo."  See    {magic}, sense 1, for
illumination of this point.

   :pod: n.  [allegedly from abbreviation POD for `Prince Of
Darkness'] A Diablo 630 (or, latterly, any letter-quality impact
printer).  From the DEC-10 PODTYPE program used to feed formatted
text to it.  Not to be confused with {P.O.D.}.

   :point-and-drool interface: n.  Parody of the techspeak term
`point-and-shoot interface', describing a windows, icons, and
mouse-based interface such as is found on the Macintosh.  The
implication, of course, is that such an interface is only suitable
for idiots.  See {for the rest of us}, {WIMP environment},
{Macintrash}, {drool-proof paper}.  Also `point-and-grunt
interface'.

   :pointy-haired: adj.  [after the character in the    {Dilbert} comic
strip] Describes the extreme form of the    property that separates
{suit}s and {marketroid}s from    hackers. Compare {brain-dead};
{demented}; see    {PHB}. Always applied to people, never to ideas. The
plural form    is often used as a noun. "The pointy-haireds ordered me
to use    Windows NT, but I set up a Linux server with Samba instead."

   :poke: n.,vt.  See {peek}.

   :poll: v.,n.  1. [techspeak] The action of checking the status    of
an input line, sensor, or memory location to see if a particular
external event has been registered.  2. To repeatedly call or check
with someone: "I keep polling him, but he's not answering his    phone;
he must be swapped out."  3. To ask.  "Lunch?  I poll for    a takeout
order daily."

   :polygon pusher: n.  A chip designer who spends most of his or
her time at the physical layout level (which requires drawing    _lots_
of multi-colored polygons).  Also `rectangle    slinger'.

   :POM: /P-O-M/ n.  Common abbreviation for {phase of the    moon}.
Usage: usually in the phrase `POM-dependent', which means    {flaky}.

   :pop: /pop/  [from the operation that removes the top of a    stack,
and the fact that procedure return addresses are usually    saved on
the stack] (also capitalized `POP') 1. vt. To remove    something from
a {stack} or {PDL}.  If a person says he/she    has popped something
from his stack, that means he/she has finally    finished working on it
and can now remove it from the list of    things hanging overhead.  2.
When a discussion gets to a level of    detail so deep that the main
point of the discussion is being lost,    someone will shout "Pop!",
meaning "Get back up to a higher    level!"  The shout is frequently
accompanied by an upthrust arm    with a finger pointing to the
ceiling.

   :POPJ: /pop'J/ n.,v.  [from a {PDP-10}    return-from-subroutine
instruction] To return from a digression.     By verb doubling, "Popj,
popj" means roughly "Now let's see,    where were we?"  See {RTI}.

   :poser: n.  A {wannabee}; not hacker slang, but used among
crackers, phreaks and {warez d00dz}.  Not as negative as    {lamer} or
{leech}.  Probably derives from a similar usage    among punk-rockers
and metalheads, putting down those who "talk    the talk but don't walk
the walk".

   :post: v.  To send a message to a {mailing list} or    {newsgroup}.
Distinguished in context from `mail'; one might    ask, for example:
"Are you going to post the patch or mail it to    known users?"

   :postcardware: n.  A kind of {shareware} that borders on
{freeware}, in that the author requests only that satisfied    users
send a postcard of their home town or something.  (This    practice,
silly as it might seem, serves to remind users that they    are
otherwise getting something for nothing, and may also be
psychologically related to real estate `sales' in which $1    changes
hands just to keep the transaction from being a gift.)

   :posting: n.  Noun corresp. to v. {post} (but note that    {post}
can be nouned).  Distinguished from a `letter' or    ordinary {email}
message by the fact that it is broadcast rather    than point-to-point.
It is not clear whether messages sent to a    small mailing list are
postings or email; perhaps the best dividing    line is that if you
don't know the names of all the potential    recipients, it is a
posting.

   :postmaster: n.  The email contact and maintenance person at a
site connected to the Internet or UUCPNET.  Often, but not always,
the same as the {admin}.  The Internet standard for electronic    mail
({RFC}-822) requires each machine to have a `postmaster'    address;
usually it is aliased to this person.

   :PostScript:: n.  A Page Description Language ({PDL}),    based on
work originally done by John Gaffney at Evans and    Sutherland in
1976, evolving through `JaM' (`John and Martin',    Martin Newell) at
{XEROX PARC}, and finally implemented in its    current form by John
Warnock et al. after he and Chuck Geschke    founded Adobe Systems
Incorporated in 1982.  PostScript gets its    leverage by using a full
programming language, rather than a series    of low-level escape
sequences, to describe an image to be printed    on a laser printer or
other output device (in this it parallels    {EMACS}, which exploited a
similar insight about editing tasks).     It is also noteworthy for
implementing on-the fly rasterization,    from Bezier curve
descriptions, of high-quality fonts at low (e.g.     300 dpi)
resolution (it was formerly believed that hand-tuned    bitmap fonts
were required for this task).  Hackers consider    PostScript to be
among the most elegant hacks of all time, and the    combination of
technical merits and widespread availability has    made PostScript the
language of choice for graphical output.

   :pound on: vt.  Syn. {bang on}.

   :power cycle: vt.  (also, `cycle power' or just `cycle')    To power
off a machine and then power it on immediately, with the    intention
of clearing some kind of {hung} or {gronk}ed state.     Syn. {120
reset}; see also {Big Red Switch}.  Compare    {Vulcan nerve pinch},
{bounce} (sense 4), and {boot}, and    see the "{AI Koans}" (in
Appendix A) about Tom Knight    and the novice.

   :power hit: n.  A spike or drop-out in the electricity    supplying
your machine; a power {glitch}.  These can cause    crashes and even
permanent damage to your machine(s).

   :PPN: /P-P-N/, /pip'n/ n. obs.  [from `Project-Programmer
Number'] A user-ID under {{TOPS-10}} and its various mutant    progeny
at SAIL, BBN, CompuServe, and elsewhere.  Old-time hackers    from the
PDP-10 era sometimes use this to refer to user IDs on    other systems
as well.

   :pr0n: //  [Usenet, IRC] Pornography.  Originally this    referred
only to Internet porn but since then it has expanded to    refer to
just about anything.  The term comes from the {warez    kiddies}
tendency to replace letters with numbers.  At some point    on IRC
someone mistyped, swapped the middle two letters, and the    name
stuck, then propagated over into mainstream hacker    usage.  Compare
{filk}, {grilf}, {hing} and    {newsfroup}.

   :precedence lossage: /pre's*-dens los'*j/ n.  [C    programmers]
Coding error in an expression due to unexpected    grouping of
arithmetic or logical operators by the compiler.  Used    esp. of
certain common coding errors in C due to the    nonintuitively low
precedence levels of `&', `|',    `^', `<<', and `>>' (for this reason,
experienced C    programmers deliberately forget the language's
{baroque}    precedence hierarchy and parenthesize defensively).  Can
always be    avoided by suitable use of parentheses.  {LISP} fans enjoy
  pointing out that this can't happen in _their_ favorite    language,
which eschews precedence entirely, requiring one to use    explicit
parentheses everywhere.  See {aliasing bug}, {memory    leak}, {memory
smash}, {smash the stack}, {fandango on    core}, {overrun screw}.

   :prepend: /pree`pend'/ vt.  [by analogy with `append'] To    prefix.
As with `append' (but not `prefix' or `suffix' as a    verb), the
direct object is always the thing being added and not    the original
word (or character string, or whatever).  "If you    prepend a
semicolon to the line, the translation routine will pass    it through
unaltered."

   :prestidigitization: /pres`t*-di`j*-ti:-zay'sh*n/ n.  1. The    act
of putting something into digital notation via sleight of hand.     2.
Data entry through legerdemain.

   :pretty pictures: n.  [scientific computation] The next step    up
from {numbers}.  Interesting graphical output from a program    that
may not have any sensible relationship to the system the    program is
intended to model.  Good for showing to {management}.

   :prettyprint: /prit'ee-print/ v.  (alt. `pretty-print')    1. To
generate `pretty' human-readable output from a {hairy}    internal
representation; esp. used for the process of    {grind}ing (sense 1)
program code, and most esp. for LISP code.     2. To format in some
particularly slick and nontrivial way.

   :pretzel key: n.  [Mac users] See {feature key}.

   :priesthood: n. obs.  [TMRC] The select group of system    managers
responsible for the operation and maintenance of a batch    operated
computer system.  On these computers, a user never had    direct access
to a computer, but had to submit his/her data and    programs to a
priest for execution.  Results were returned days or    even weeks
later.  See {acolyte}.

   :prime time: n.  [from TV programming] Normal high-usage    hours on
a system or network.  Back in the days of big timesharing    machines
`prime time' was when lots of people were competing for    limited
cycles, usually the day shift.  Avoidance of prime time was
traditionally given as a major reason for {night mode} hacking.     The
term fell into disuse during the early PC era, but has been    revived
to refer to times of day or evening at which the Internet    tends to
be heavily loaded, making Web access slow.  The hackish    tendency to
late-night {hacking run}s has changed not a bit.

   :print: v.  To output, even if to a screen.  If a hacker    says
that a program "printed a message", he means this; if he    refers to
printing a file, he probably means it in the conventional    sense of
writing to a hardcopy device (compounds like `print job'    and
`printout', on the other hand, always refer to the    latter). This
very common term is likely a holdover from the days    when printing
terminals were the norm, perpetuated by programming    language
constructs like {C}'s printf(3).  See senses 1 and 2 of    {tty}.

   :printing discussion: n.  [XEROX PARC] A protracted,    low-level,
time-consuming, generally pointless discussion of    something only
peripherally interesting to all.

   :priority interrupt: n.  [from the hardware term] Describes    any
stimulus compelling enough to yank one right out of {hack    mode}.
Classically used to describe being dragged away by an    {SO} for
immediate sex, but may also refer to more mundane    interruptions such
as a fire alarm going off in the near vicinity.     Also called an
{NMI} (non-maskable interrupt), especially in    PC-land.

   :profile: n.  1. A control file for a program, esp. a text    file
automatically read from each user's home directory and    intended to
be easily modified by the user in order to customize    the program's
behavior.  Used to avoid {hardcoded} choices (see    also {dot file},
{rc file}).  2. [techspeak] A report on the    amounts of time spent in
each routine of a program, used to find    and {tune} away the {hot
spot}s in it.  This sense is often    verbed.  Some profiling modes
report units other than time (such as    call counts) and/or report at
granularities other than per-routine,    but the idea is similar.
3.[techspeak] A subset of a standard used    for a particular purpose.
This sense confuses hackers who wander    into the weird world of ISO
standards no end!

   :progasm: /proh'gaz-m/ n.  [University of Wisconsin] The    euphoria
experienced upon the completion of a program or other
computer-related project.

   :proglet: /prog'let/ n.  [UK] A short extempore program    written
to meet an immediate, transient need.  Often written in    BASIC,
rarely more than a dozen lines long, and containing no    subroutines.
The largest amount of code that can be written off    the top of one's
head, that does not need any editing, and that    runs correctly the
first time (this amount varies significantly    according to one's
skill and the language one is using).  Compare    {toy program},
{noddy}, {one-liner wars}.

   :program: n.  1. A magic spell cast over a computer allowing    it
to turn one's input into error messages.  2. An exercise in
experimental epistemology.  3. A form of art, ostensibly intended
for the instruction of computers, which is nevertheless almost
inevitably a failure if other programmers can't understand it.

   :Programmer's Cheer:  "Shift to the left!  Shift to the    right!
Pop up, push down!  Byte!  Byte!  Byte!"  A joke so old it    has hair
on it.

   :programming: n.  1. The art of debugging a blank sheet of    paper
(or, in these days of on-line editing, the art of debugging    an empty
file).  "Bloody instructions which, being taught, return    to plague
their inventor" ("Macbeth", Act 1, Scene 7) 2. A    pastime similar to
banging one's head against a wall, but with    fewer opportunities for
reward.  3. The most fun you can have with    your clothes on.  4. The
least fun you can have with your clothes    off.

   :programming fluid: n.  1. Coffee.  2. Cola.  3. Any
caffeinacious stimulant.  Many hackers consider these essential for
those all-night hacking runs.  See {wirewater}.

   :propeller head: n.  Used by hackers, this is syn. with    {computer
geek}.  Non-hackers sometimes use it to describe all    techies.  Prob.
derives from SF fandom's tradition (originally    invented by old-time
fan Ray Faraday Nelson) of propeller beanies    as fannish insignia
(though nobody actually wears them except as a    joke).

   :propeller key: n.  [Mac users] See {feature key}.

   :proprietary: adj.  1. In {marketroid}-speak, superior;    implies a
product imbued with exclusive magic by the unmatched    brilliance of
the company's own hardware or software designers.     2. In the
language of hackers and users, inferior; implies a    product not
conforming to open-systems standards, and thus one that    puts the
customer at the mercy of a vendor able to gouge freely on    service
and upgrade charges after the initial sale has locked the    customer
in.  Often in the phrase "proprietary crap".

   :protocol: n.  As used by hackers, this never refers to    niceties
about the proper form for addressing letters to the Papal    Nuncio or
the order in which one should use the forks in a    Russian-style place
setting; hackers don't care about such things.     It is used instead
to describe any set of rules that allow    different machines or pieces
of software to coordinate with each    other without ambiguity.  So,
for example, it does include niceties    about the proper form for
addressing packets on a network or the    order in which one should use
the forks in the Dining Philosophers    Problem.  It implies that there
is some common message format and    an accepted set of primitives or
commands that all parties involved    understand, and that transactions
among them follow predictable    logical sequences.  See also
{handshaking}, {do protocol}.

   :provocative maintenance: n.  [common ironic mutation of
`preventive maintenance'] Actions performed upon a machine at
regularly scheduled intervals to ensure that the system remains in    a
usable state.  So called because it is all too often performed by    a
{field servoid} who doesn't know what he is doing; such
`maintenance' often _induces_ problems, or otherwise    results in the
machine's remaining in an _un_usable state for    an indeterminate
amount of time.  See also {scratch monkey}.

   :prowler: n.  [Unix] A {daemon} that is run    periodically
(typically once a week) to seek out and erase    {core} files, truncate
administrative logfiles, nuke    `lost+found' directories, and
otherwise clean up the    {cruft} that tends to pile up in the corners
of a file system.     See also {GFR}, {reaper}, {skulker}.

   :pseudo: /soo'doh/ n.  [Usenet: truncation of `pseudonym']    1. An
electronic-mail or {Usenet} persona adopted by a human for    amusement
value or as a means of avoiding negative repercussions of    one's
net.behavior; a `nom de Usenet', often associated with    forged
postings designed to conceal message origins.  Perhaps the
best-known and funniest hoax of this type is {B1FF}.  See also
{tentacle}.  2. Notionally, a {flamage}-generating AI program
simulating a Usenet user.  Many flamers have been accused of
actually being such entities, despite the fact that no AI program    of
the required sophistication yet exists.  However, in 1989 there    was
a famous series of forged postings that used a
phrase-frequency-based travesty generator to simulate the styles of
several well-known flamers; it was based on large samples of their
back postings (compare {Dissociated Press}).  A significant    number
of people were fooled by the forgeries, and the debate over    their
authenticity was settled only when the perpetrator came    forward to
publicly admit the hoax.

   :pseudoprime: n.  A backgammon prime (six consecutive    occupied
points) with one point missing.  This term is an esoteric    pun
derived from number theory: a number that passes a certain kind    of
"primality test" may be called a `pseudoprime' (all primes    pass any
such test, but so do some composite numbers), and any    number that
passes several is, in some sense, almost certainly    prime. The hacker
backgammon usage stems from the idea that a    pseudoprime is almost as
good as a prime: it will do the same job    unless you are unlucky.

   :pseudosuit: /soo'doh-s[y]oot`/ n.  A {suit} wannabee; a    hacker
who has decided that he wants to be in management or    administration
and begins wearing ties, sport coats, and (shudder!)     suits
voluntarily.  It's his funeral.  See also {lobotomy}.

   :psychedelicware: /si:`k*-del'-ik-weir/ n.  [UK] Syn.     {display
hack}.  See also {smoking clover}.

   :psyton: /si:'ton/ n.  [TMRC] The elementary particle    carrying
the sinister force.  The probability of a process losing    is
proportional to the number of psytons falling on it.  Psytons    are
generated by observers, which is why demos are more likely to    fail
when lots of people are watching.  [This term appears to have    been
largely superseded by {bogon}; see also {quantum    bogodynamics}.
--ESR]

   :pubic directory: /pyoob'ik d*-rek't*-ree/) n.  [NYU]    (also `pube
directory' /pyoob' d*-rek't*-ree/) The `pub'    (public) directory on a
machine that allows {FTP} access.  So    called because it is the
default location for {SEX} (sense 1).     "I'll have the source in the
pube directory by Friday."

   :puff: vt.  To decompress data that has been crunched by    Huffman
coding.  At least one widely distributed Huffman decoder    program was
actually _named_ `PUFF', but these days it is    usually packaged with
the encoder.  Oppose {huff}, see    {inflate}.

   :pumpkin holder: n.  See {patch pumpkin}.

   :pumpking: n.  Syn. for {pumpkin holder}; see {patch    pumpkin}.

   :punched card:: n.obs.  [techspeak] (alt. `punch card') The
signature medium of computing's {Stone Age}, now obsolescent    outside
of some IBM shops.  The punched card actually predated    computers
considerably, originating in 1801 as a control device for    mechanical
looms.  The version patented by Hollerith and used with    mechanical
tabulating machines in the 1890 U.S. Census was a piece    of cardboard
about 90 mm by 215 mm.  There is a widespread myth    that it was
designed to fit in the currency trays used for that    era's larger
dollar bills, but recent investigations have falsified    this.

   IBM (which originated as a tabulating-machine manufacturer) married
 the punched card to computers, encoding binary information as
patterns of small rectangular holes; one character per column,    80
columns per card.  Other coding schemes, sizes of card, and    hole
shapes were tried at various times.

   The 80-column width of most character terminals is a legacy of the
IBM punched card; so is the size of the quick-reference cards
distributed with many varieties of computers even today.  See
{chad}, {chad box}, {eighty-column mind}, {green card},    {dusty
deck}, {lace card}, {card walloper}.

   :punt: v.  [from the punch line of an old joke referring to
American football: "Drop back 15 yards and punt!"] 1. To give up,
typically without any intention of retrying.  "Let's punt the    movie
tonight."  "I was going to hack all night to get this    feature in,
but I decided to punt" may mean that you've decided    not to stay up
all night, and may also mean you're not ever even    going to put in
the feature.  2. More specifically, to give up on    figuring out what
the {Right Thing} is and resort to an    inefficient hack.  3. A design
decision to defer solving a problem,    typically because one cannot
define what is desirable sufficiently    well to frame an algorithmic
solution.  "No way to know what the    right form to dump the graph in
is -- we'll punt that for now."     4. To hand a tricky implementation
problem off to some other    section of the design.  "It's too hard to
get the compiler to do    that; let's punt to the runtime system." 5.
To knock someone off    an Internet or chat connection; a `punter'
thus, is a person or    program that does this.

   :Purple Book: n.  1. The "System V Interface Definition".     The
covers of the first editions were an amazingly nauseating shade    of
off-lavender.  2. Syn. {Wizard Book}.  Donald Lewine's    "POSIX
Programmer's Guide" (O'Reilly, 1991, ISBN    0-937175-73-0).  See also
{{book titles}}.

   :purple wire: n.  [IBM] Wire installed by Field Engineers to work
around problems discovered during testing or debugging.  These are
called `purple wires' even when (as is frequently the case) their
actual physical color is yellow....  Compare {blue wire},    {yellow
wire}, and {red wire}.

   :push:  [from the operation that puts the current information    on
a stack, and the fact that procedure return addresses are saved    on a
stack] (Also PUSH /push/ or PUSHJ /push'J/, the latter    based on the
PDP-10 procedure call instruction.) 1. To put    something onto a
{stack} or {PDL}.  If one says that    something has been pushed onto
one's stack, it means that the    Damoclean list of things hanging over
ones's head has grown longer    and heavier yet.  This may also imply
that one will deal with it    _before_ other pending items; otherwise
one might say that the    thing was `added to my queue'.  2. vi. To
enter upon a    digression, to save the current discussion for later.
Antonym of    {pop}; see also {stack}, {PDL}.

