The Linux Reading List HOWTO
by Eric S. Raymond
1.10, 14 November 1999
This document lists the book I think are most valuable to a person
trying to learn Unix (especially Linux) top to bottom.
______________________________________________________________________
Table of Contents
1. Introduction
1.1 Purpose of this document
1.2 New versions of this document
1.3 Feedback and Corrections
1.4 Related Resources
1.5 Conventions Used In This Document
2. Books on Culture, History, and Pragmatics
3. Books on General Unix/Linux
3.1 Linux Installation and Administration
3.2 Using Unix & Linux
3.3 System Security
4. Books on Shell, Script, and Web Programming
5. Books on Text Formatting
5.1 Tex and LaTeX
6. Good Programming Style
7. Books on C and C++ Programming
7.1 C and C++
7.2 C System Call Interface
8. Books on Networking
9. Books on Unix Kernel Implementation
9.1 Ancestors of Linux
9.2 Linux
9.3 Relatives of Linux
10. Books on Intel processor architecture and programming
11. Books on PC-Class Hardware
12. Administrivia
12.1 Terms of Use
12.2 History
______________________________________________________________________
11.. IInnttrroodduuccttiioonn
11..11.. PPuurrppoossee ooff tthhiiss ddooccuummeenntt
This document lists what I consider to be the essential book-length
references for learning Unix (especially Linux) and how to program
under it.
11..22.. NNeeww vveerrssiioonnss ooff tthhiiss ddooccuummeenntt
New versions of the Linux Reading List HOWTO will be periodically
posted to comp.os.linux.answers. They will also be uploaded to
various Linux WWW and FTP sites, including the LDP home page.
You can also view the latest version of this on the World Wide Web via
the URL <
http://sunsite.unc.edu/LDP/HOWTO/Reading-List-HOWTO.html>.
11..33.. FFeeeeddbbaacckk aanndd CCoorrrreeccttiioonnss
If you have questions or comments about this document (or just want to
suggest a book that you think should be on it), please feel free to
mail Eric S. Raymond, at
[email protected]. I welcome any suggestions or
criticisms.
11..44.. RReellaatteedd RReessoouurrcceess
For on-line HOWTOs, magazines, and other non-book material, see the
Linux Documentation Project home page
<
http://sunsite.unc.edu/LDP/HOWTO>.
Some years ago I wrote a less Linux-focused Unix bibliography that may
still be of some interest and retains a certain amusement value. You
can find the Loginataka at
<
http://www.tuxedo.org/~esr/faqs/loginataka.html>.
11..55.. CCoonnvveennttiioonnss UUsseedd IInn TThhiiss DDooccuummeenntt
Comments not in quotes below are either mine, or I have seen no reason
to change them from those of Jim Haynes (previous maintainer of this
document). Comments sent in by others are in quotes, and have the
name of the commentator before them (JH is Jim Haynes).
"See" URLs attached to publishing information point directly into the
publisher's web catalog and typically take you to a page containing a
cover shot, blurbs, and ordering information. Books that don't have
these lack them because the publisher is using frames and the catalog
pages can't be bookmarked.
Topic listings go roughly from the outside in (culture to user-land
programming to kernel programming to hardware). Within sections I
have tried to list the most useful books first insofar as I am
familiar with them. It's just an embarrassing coincidence that this
lists one of my books first, honest! (Suggestions for a better
organization cheerfully accepted.)
22.. BBooookkss oonn CCuullttuurree,, HHiissttoorryy,, aanndd PPrraaggmmaattiiccss
TThhee NNeeww HHaacckkeerr''ss DDiiccttiioonnaarryy ((TThhiirrdd EEddiittiioonn))
Raymond, Eric S.; MIT Press; 1996; ISBN 0-262-68092-0; 547pp.
See <
http://www-mitpress.mit.edu/book-
home.tcl?isbn=0262680920>.
Um, er. A guide to Internet culture. Lots of people like it.
HTML at the Jargon File Resource Page <
http://www.tuxedo.org>.
AA QQuuaarrtteerr CCeennttuurryy ooff UUnniixx
Salus, Peter H.; Addison-Wesley; 1994; ISBN 0-201-54777-5;
256pp.
See <
http://www.awl-he.com/titles/13683.html>
Linux is part of the Unix tradition. This book is an oral
history of Unix -- how it originated, how it evolved, how it
spread -- by the people who were there.
TThhee MMyytthhiiccaall MMaann MMoonntthh ((AAnnnniivveerrssaarryy EEddiittiioonn))
Brooks, Frederick P.; Addison-Wesley 1995 (ISBN 0-201-83595-9).
See <
http://www.awl-he.com/titles/14147.html>.
The one book on software engineering that everyone should read.
Alan Cox: "This I'd recommend not for its technical value but
for its application of common sense and reality to computing
projects." JH: "Ah, yes. What if Linus had been given 200
programmers and had been told to produce Linux in 3 months!"
BBeellll SSyysstteemm TTeecchhnniiccaall JJoouurrnnaall,, JJuullyy--AAuugguusstt 11997788,, VVooll.. 5577,, NNoo.. 66,,
ppaarrtt 22
AT&T; 416 pp.
Many early papers on Unix, including Ritchie & Thompson, "The
UNIX Time Sharing System"; Thompson, "UNIX Implementation";
Ritchie, "A Retrospective"; Bourne, "The UNIX Shell"...
33.. BBooookkss oonn GGeenneerraall UUnniixx//LLiinnuuxx
33..11.. LLiinnuuxx IInnssttaallllaattiioonn aanndd AAddmmiinniissttrraattiioonn
LLiinnuuxx IInnssttaallllaattiioonn aanndd GGeettttiinngg SSttaarrtteedd
Welsh, Matt; LDP; 1997. Available on the LDP home page, or
directly at <
http://linuxdoc.org/LDP/gs/>.
How to bring up Linux. Explains a lot of Linux basics. Covers
basic system administration.
LLiinnuuxx SSyysstteemm AAddmmiinniissttrraattoorr''ss GGuuiiddee
Wirzenius, Lars; LDP; 1997. Available on the LDP home page, or
directly at <
http://www.linuxdoc.org/LDP/sag/>.
An excellent first book on how to maintain and administer a
Linux system.
EEsssseennttiiaall SSyysstteemm AAddmmiinniissttrraattiioonn ((SSeeccoonndd EEddiittiioonn))
Frisch, Aeleen; O'Reilly; 1995; ISBN 1-56592-127-5; $34.95.
See <
http://www.ora.com/catalog/esa2/noframes.html>.
More in-depth coverage of normal system-administration tasks.
Not Linux-specific but contains Linux material.
33..22.. UUssiinngg UUnniixx && LLiinnuuxx
LLiinnuuxx iinn aa NNuuttsshheellll ((22nndd eeddiittiioonn))
Hekman, Jessica P. et al.; O'Reilly; ISBN 1-56592-585-8,; 1999;
628 pp. $29.95.
See <
http://www.oreilly.com/catalog/linuxnut2/>.
According to O'Reilly, "The Desktop Reference for Linux". For
Linux users this obsoletes their "Unix In a Nutshell" which was
SVr4/Solaris-oriented.
RRuunnnniinngg LLiinnuuxx ((33rrdd EEddiittiioonn))
Welsh, Matt, & Matthias Kallw Dalheimer & Kaufman, Lar;
O'Reilly; ISBN 1-56592-469-X; 1999; 650pp; $34.95.
See <
http://www.oreilly.com/catalog/runux3/>.
Everything you need in order to understand, install, and use the
Linux operating system. Excellent beginner's book.
HHaannddss--oonn--LLiinnuuxx
Sobell, Mark G.; Addison-Wesley; ISBN ISBN 0-201-32569-1; 1998;
1015 pp.
Just what the title says -- practical tutorials in basic Unix,
shells, editors, mail programs, networking, Web tools, and
utilities. Covers some system administration fundamentals.
(This appears to be a repackaging of 1997's ``A Practical Guide
to Linux'' from the same author, without Caldera OpenLinux Lite
included.)
33..33.. SSyysstteemm SSeeccuurriittyy
PPrraaccttiiccaall UUnniixx aanndd IInntteerrnneett SSeeccuurriittyy ((22nndd EEddiittiioonn))
Garfinkel, Simpson, and Spafford, Gene; O'Reilly Associates;
ISBN 0-56592-148-8; 1004pp; 1996; $39.95.
See <
http://www.ora.com/catalog/puis/noframes.html>.
Ronald P. Miller: "Some overlap with Essential System Admin.,
but all in all a solid book on security, especially for those
aspiring to allow multiple-user, dial-up/net access to their
Linux boxes."
FFiirreewwaallllss && IInntteerrnneett SSeeccuurriittyy
Cheswick, William R. & Bellovin, Steven M.; Addison-Wesley;
1994; ISBN 0-201-63357-4; 320pp.
44.. BBooookkss oonn SShheellll,, SSccrriipptt,, aanndd WWeebb PPrrooggrraammmmiinngg
PPrrooggrraammmmiinngg PPeerrll ((SSeeccoonndd EEddiittiioonn))
Wall, Larry & Christiansen, Tom & Schwartz, Randal; O'Reilly;
1997; ISBN 0-56592-149-6; 644pp.
See <
http://www.ora.com/catalog/pperl2/noframes.html>.
Shell (as a programming language for more than trivial
scripting) is dead. Perl rules in its place. This is the
second edition of the definitive Perl book -- vastly better
organized than the first, and it covers Perl 5.
Emmanuel Pierre keeps a short list of Perl books <www.e-
nef.com/perl/listeperl.html>.
PPrrooggrraammmmiinngg PPyytthhoonn
Lutz, Mark; O'Reilly; 1997; ISBN 0-56592-197-6; 880pp.
See <
http://www.ora.com/catalog/python/noframes.html>.
The next step beyond Perl. Python is beautifully designed, has
better integration with C, and scales up better to large
projects.
HHTTMMLL:: TThhee DDeeffiinniittiivvee GGuuiiddee ((33rrdd EEddiittiioonn))
Musciano, Chuck & Kennedy. Bill; O'Reilly; 1998; ISBN
1-56592-492-4; 576pp.
See <
http://www.oreilly.com/catalog/html3/>.
The best HTML tutorial/reference I have ever seen, and the only
HTML book you need unless you also want to do CGI.
TThhee UUnniixx PPrrooggrraammmmiinngg EEnnvviirroonnmmeenntt
Kernighan, Brian, and Pike, Rob; Prentice-Hall; 1984; ISBN
0-13-937681-X; 1984.
A true classic -- possibly the best single-book exposition of
the Unix philosophy.
55.. BBooookkss oonn TTeexxtt FFoorrmmaattttiinngg
55..11.. TTeexx aanndd LLaaTTeeXX
TThhee LLaaTTeeXX CCoommppaanniioonn
Goossens, Michael & Mittlebach, Frank, & Samarin, Alexander;
Addison-Wesley; 1994; ISBN 0-201-54199-8; 530pp.
See <
http://www.awl-he.com/titles/13661.html>.
`If you are one of those users who would like to know how LaTeX
can be extended to create the nicest documents possible without
becoming a (La)TeX guru, then this book is for you' --- from the
Preface. Bruce Thompson adds: "A very nice book providing a lot
of information about the new extensions to LaTeX, provides a
large number of examples showing precisely how your document's
layout can be manipulated"
LLaaTTeeXX:: AA DDooccuummeenntt PPrreeppaarraattiioonn SSyysstteemm ((SSeeccoonndd EEddiittiioonn))
Lamport, Leslie; Addison-Wesley; 1994; ISBN 0-201-52983-1;
256pp.
See <
http://www.awl-he.com/titles/13632.html>.
Bruce Thompson: "The ultimate reference on LaTeX 2.09 by its
author. A new edition covering LaTeX2e (the version included in
the current TeX/LaTeX distribution) is in preparation. LaTeX
2.09 is fully supported by LaTeX2e. A must for anyone wanting
to use LaTeX. Provides a gentle introduction to document
preparation and the various tools that LaTeX provides for
producing professional quality documents. Lots of examples."
TThhee TTeeXXbbooookk,, VVoolluummee AA ooff CCoommppuutteerrss aanndd TTyyppeesseettttiinngg;; KKnnuutthh,, DDoonnaalldd
AA..
Addison-Wesley; 1986, ISBN 0-201-13448; 496pp. See
<
http://www.awl.com/cp/TeXbook.html>
Bruce Thompson: "The definitive user's guide and complete
reference manual for TeX. Probably not needed for casual LaTeX
use, but a fascinating book nonetheless." I'll strengthen that
by adding that this book is not for the faint of heart.
TThhee MMEETTAAFFOONNTT bbooookk,, VVoolluummee CC ooff CCoommppuutteerrss aanndd TTyyppeesseettttiinngg
Knuth, Donald A.; Addison-Wesley; 1986; 0-201-13444-6, 1986;
384pp.
See <
http://www.awl.com/cp/METAFONTbook.html>
Bruce Thompson: "The definitive user's guide and reference
manual for METAFONT, the companion program to TeX for designing
fonts. An excellent work if you're planning to design your own
fonts for use in TeX and LaTeX. METAFONT is included with the
normal TeX/LaTeX distribution." This book is _d_e_f_i_n_i_t_e_l_y not for
the faint of heart.
66.. GGoooodd PPrrooggrraammmmiinngg SSttyyllee
The following are classics on how to develop efficient programs:
TThhee PPrraaccttiiccee ooff PPrrooggrraammmmiinngg
Kernighan, Brian W. & Pike. Rob; 1999; Addison-Wesley; ISBN
0-201-61586-X. See <
http://cm.bell-labs.com/cm/cs/tpop/>
An excellent treatise on writing high-quality programs, surely
destined to become a classic of the field.
PPrrooggrraammmmiinngg PPeeaarrllss ((22nndd EEddiittiioonn))
Bentley, Jon; 2000; Addison-Wesley; ISBN ISBN 0-201-65788-0.
See <
http://www.programmingpearls.com/>
These are selected essays from Bentley's column in the
Communications of the ACM. He discusses a wide variety of issues
in program improvement, include a large number on efficiency.
WWrriittiinngg EEffffiicciieenntt PPrrooggrraammss..
Bentley, Jon Louis; 1982; Prentice-Hall, Inc.; ISBN
0-13-970251-2 or 0-13-970244-X.
This book presents Bentley's methodology and set of rules for
improving program efficiency, and includes a large number of
examples.
77.. BBooookkss oonn CC aanndd CC++++ PPrrooggrraammmmiinngg
77..11.. CC aanndd CC++++
TThhee CC PPrrooggrraammmmiinngg LLaanngguuaaggee ((SSeeccoonndd EEddiittiioonn))
Kernighan, Brian W.; Ritchie, Dennis M; Prentice-Hall; 1988;
ISBN 0-13-110362-8, 272pp.
The improved second edition, covering ANSI C, of the original
classic C book coauthored by C's designer, "K&R". Still the
best!
WWhhoo''ss AAffrraaiidd ooff CC++++??
Heller, Steve; Academic Press; 1996; ISBN 0-12-339097; 508pp.
The best introductory book on C++ I have seen.
77..22.. CC SSyysstteemm CCaallll IInntteerrffaaccee
PPOOSSIIXX PPrrooggrraammmmeerr''ss GGuuiiddee:: WWrriittiinngg PPoorrttaabbllee UUnniixx PPrrooggrraammss
Lewine, Donald; O'Reilly; 1992; ISBN 0-937175-73-0; 607pp.
See <
http://www.ora.com/catalog/posix/noframes.html>.
An excellent programmer's reference on the POSIX.1 standard.
I like this one better than JH's choice.
TThhee PPoossiixx..11 SSttaannddaarrdd:: AA PPrrooggrraammmmeerr''ss GGuuiiddee
Zlotnick, Fred; Benjamin, Cummings; 1991; ISBN 0-8053-9605-5;
379pp.; $35.95 (USA).
JH: "When I complained about the lack of Section 2 man pages
in Linux, somebody told me just to get a POSIX book, because
that's what Linux does. I like this book because I'm not a
professional programmer and the author gives copious
explanations and examples."
AAddvvaanncceedd PPrrooggrraammmmiinngg iinn TThhee UUnniixx EEnnvviirroonnmmeenntt
Stevens, Richard; 1992; ISBN 0-201-56317; Addison-Wesley
A book on general Unix programming that is every bit as good
as Stevens's classic on network programming.
LLiinnuuxx AApppplliiccaattiioonn DDeevveellooppmmeenntt
Michael K. Johnson, Erik W. Troan; 1998; ISBN 0201308215;
Addison-Wesley.
The best reference to the C API of Linux.
88.. BBooookkss oonn NNeettwwoorrkkiinngg
UUnniixx NNeettwwoorrkk PPrrooggrraammmmiinngg
Volume 1, Networking APIs: Sockets and XTI W. Richard
Stevens, PTR Prentice-Hall, 1998 ISBN 0-13-490012-X
UNIX Network Programming 2nd Edition, Volume 2, Interprocess
Communications W. Richard Stevens PTR Prentice-Hall, 1998
ISBN 0-13-081081-9
Everything you might want to know about the subject.
Generally regarded as definitive on the basics.
LLiinnuuxx NNeettwwoorrkk AAddmmiinniissttrraattoorr''ss GGuuiiddee
Kirch, Olaf; O'Reilly; 1995; ISBN 1-56592-087-2; 335pp.
See <
http://www.ora.com/catalog/linag/noframes.html>.
A practical guide to Linux's TCP/IP and related services.
Accessible on the Web at the Linux Documentation Project
page, or directly at
<
http://sunsite.unc.edu/LDP/LDP/nag/nag.html>.
TTCCPP//IIPP NNeettwwoorrkk AAddmmiinnssttrraattiioonn
Hunt, Craig; O'Reilly Associates, ISBN 0-937175-82-X; 1992;
472pp.
See <
http://www.ora.com/catalog/tcp2/noframes.html>.
Less Linux-specific than the Kirch book. Features deeper
coverage of the TCP/IP core, including routing and BGP.
DDNNSS aanndd BBIINNDD ((SSeeccoonndd EEddiittiioonn))
Albitz, Paul, and Liu, Cricket; O'Reilly; 1998; ISBN
1-56592-512-2; 502pp; $32.95.
See <
http://www.ora.com/catalog/dns2/noframes.html>.
In-depth coverage of DNS, useful for people running
complicated multiple-subnet installations. Covers BIND
library programming.
SSeennddmmaaiill ((SSeeccoonndd EEddiittiioonn))
Costales, Bryan & Allman, Eric; O'Reilly; ISBN 1-56592-222-0;
1997; 1050 pp; $32.95
See <
http://www.ora.com/catalog/sendmail2/noframes.html>.
An exhaustive (and exhausting) guide to Linux's and Unix's
default mail-transfer agent.
99.. BBooookkss oonn UUnniixx KKeerrnneell IImmpplleemmeennttaattiioonn
99..11.. AAnncceessttoorrss ooff LLiinnuuxx
TThhee DDeessiiggnn ooff tthhee UUnniixx OOppeerraattiinngg SSyysstteemm
Bach, Maurice J.; Prentice-Hall; ISBN 0-13-201799-7; 470pp.;
$60 (USA).
The book that got Linus started. See
<
http://www.prenhall.com/books/ptr_0132017997.html>
OOppeerraattiinngg SSyysstteemmss,, DDeessiiggnn aanndd IImmpplleemmeennttaattiioonn;;
Tanenbaum, Andrew S.; Prentice-Hall; 1987.
See <
http://www.prenhall.com/books/esm_0136386776.html>.
Alan Cox (one of the core kernel people) likes this book.
Tanenbaum designed Minix, which is the system Linus
bootstrapped Linux up from.
99..22.. LLiinnuuxx
TThhee LLiinnuuxx KKeerrnneell bbooookk
Rmy Card, Eric Dumas, Franck Mevel; John Wiley and Sons;
1998; ISBN 0-471-98141-9. $100 (AUS).
(Translated from the French language edition of
"Programmation Linux 2.0"; same authors; 1997; ditions
Eyrolles; Paris, France.)
A very interesting and informative description of the
operation of the kernel that fills in the gap between the
POSIX interface and "The Design of the Unix Operating System"
and the Linux source code. A good understanding of the
design and operation of a Unix OS is a pre-requisite, but
this book is an excellent help to going beyond that general
understanding into actual work.
The primary author is one of the core developers for the ext2
filesystem, and the Linux Kernel book shows a firm grasp of
the matter and clear explanations and structure. It's
surprisingly readable for something working at such a low
level. The book does seem to have suffered a little in the
translation to English -- there are a few typos and
grammatical mistakes, but it's quite readable. (The code
example files are charmingly still named in French.)
Network protocol implementations are not covered.
The book's current to Linux 2.0.35 and foreshadows 2.1 and
2.2.
LLiinnuuxx KKeerrnneell HHaacckkeerrss'' GGuuiiddee
Johnson, Michael K.
Accessible on the Web at the Linux Documentation Project
page, or directly at .
LLIINNUUXX KKeerrnneell IInntteerrnnaallss ((SSeeccoonndd EEddiittiioonn))
Beck, Michael & Bohme, Harold & Mirko, Dziadzka & Kunitz,
Ulrich & Magnus, Robert & Verworner, Dick; Addison Wesley;
1998; ISBN:0-201-33143-8; 480.
See <
http://www.awl-he.com/titles/11653.html>.
A guide to Linux kernel programming; covers 2.0.
99..33.. RReellaattiivveess ooff LLiinnuuxx
TThhee DDeessiiggnn aanndd IImmpplleemmeennttaattiioonn ooff tthhee 44..44BBSSDD UUnniixx OOppeerraattiinngg SSyyss--
tteemm
McKusick, Marshall Kirk, Bostic, Keith, Karels, Michael J.,
and Quarterman, John S.; Addison-Wesley; 1996; ISBN
0-201-54979-4; 608pp.
See <
http://www.awl-he.com/titles/13693.html>.
The successor to a classic book on the implementation of the
4.3 BSD kernel, which influenced Linux's design (especially
near sockets and networking). This book covers the 4.4BSD
base of BSD/OS, FreeBSD, and NetBSD.
PPoorrttiinngg UUnniixx ttoo tthhee 338866;; JJoolliittzz,, WWiilllliiaamm FF..,, aanndd JJoolliittzz,, LLyynnnnee
GG..
Dr. Dobb's Journal; Jan 1991-July 1992.
1100.. BBooookkss oonn IInntteell pprroocceessssoorr aarrcchhiitteeccttuurree aanndd pprrooggrraammmmiinngg
8800338866 PPrrooggrraammmmeerr''ss RReeffeerreennccee MMaannuuaall
Intel Corp.; ISBN 1-55512-022-9; 1986;
Part I. Applications Programming, data types, memory model,
instruction set. Part II. Systems Programming, architecture,
memory management, protection, multitasking, I/O, exceptions
and interrupts, initialization, coprocessing and
multiprocessing. Part III. Compatibility (with earlier x86
machines). Part IV. Instruction Set.
8800338866 SSyysstteemm SSooffttwwaarree WWrriitteerr''ss GGuuiiddee
Intel Corp.; ISBN 1-55512-023-7; 1987.
This explains the 386 features for operating system writers.
It includes a chapter on Unix implementation. A lot of the
80386 architecture seems to have been designed with Multics
in mind; the features are not used by DOS or by Unix.
PPrrooggrraammmmiinngg tthhee 8800338866
Crawford, John H & Gelsinger, Patrick P.; Sybex; ISBN
0-89588-381-3; 774pp.; $26.95 (USA).
This is the book the Jolitzes used when they ported BSD to
the 386 architecture.
PPeennttiiuumm PPrroocceessssoorr UUsseerr''ss MMaannuuaall:: VVoolluummee 33,, AArrcchhiitteeccttuurree aanndd PPrroo--
ggrraammmmiinngg
Manual" Intel Corp.; 1993; ISBN 1-55512-195-0;
Pretty much the Pentium version of the 80386 Programmer's
manual listed above.
1111.. BBooookkss oonn PPCC--CCllaassss HHaarrddwwaarree
NNoottee:: tthheessee bbooookkss aarree ffoouurr oorr ffiivvee yyeeaarrss oolldd aanndd ppoossssiibbllyy oouutt ooff
ddaattee.. II ddoonn''tt rreeaallllyy ggrrookk hhaarrddwwaarree......
8800338866 HHaarrddwwaarree RReeffeerreennccee MMaannuuaall
Intel Corp.; 1986; ISBN 1-55512-024-5;
Pin connections, timing, waveforms, block diagrams, voltages,
all that kind of stuff.
TThhee IInnddiissppeennssaabbllee PPCC HHaarrddwwaarree BBooookk
Messmer, Hans-Peter; Addison-Wesley; 1993; ISBN
0-201-62424-9; 1000 pp.
JH: "Covers the more recent stuff like EIDE and PCI."
1122.. AAddmmiinniissttrriivviiaa
1122..11.. TTeerrmmss ooff UUssee
TThhiiss ddooccuummeenntt iiss ccooppyyrriigghhtt 11999999 bbyy EErriicc SS.. RRaayymmoonndd.. YYoouu mmaayy uussee,,
ddiisssseemmiinnaattee,, aanndd rreepprroodduuccee iitt ffrreeeellyy,, pprroovviiddeedd yyoouu::
+o Do not omit or alter this copyright notice.
+o Do not omit or alter or omit the version number and date.
+o Do not omit or alter the document's pointer to the current WWW
version.
+o Clearly mark any condensed, altered or versions as such.
These restrictions are intended to protect potential readers
from stale or mangled versions. If you think you have a good
case for an exception, ask me.
1122..22.. HHiissttoorryy
TThhiiss wwaass oorriiggiinnaallllyy aa mmiinnii--HHOOWWTTOO mmaaiinnttaaiinneedd bbyy JJiimm HHaayynneess.. II hhaavvee
cchhaannggeedd tthhee eemmpphhaassiiss ssoommeewwhhaatt,, ttrryyiinngg ttoo mmaakkee iitt mmoorree aa ssttaannddaalloonnee
ddooccuummeenntt aanndd lleessss rreelliiaanntt oonn tthhee vvaarriioouuss UUSSEENNEETT bbiibblliiooggrraapphhiicc
ppoossttiinnggss.. TThhee uunnaattttrriibbuutteedd mmiinnii--rreevviieewwss aarree mmiinnee rraatthheerr tthhaann hhiiss..