(original) (raw)

%!PS-Adobe-2.0 %%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software %%Title: hacker-history.dvi %%Pages: 10 %%PageOrder: Ascend %%BoundingBox: 0 0 596 842 %%DocumentFonts: Helvetica-Bold Times-Bold Courier-Bold Times-Roman %%+ Times-Italic %%EndComments %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -R -q -o output.ps hacker-history.dvi %DVIPSParameters: dpi=600, compressed %DVIPSSource: TeX output 2002.08.15:0349 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin /FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array /BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2 array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get }B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr 1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B /chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ /cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 {2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ 1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put }if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X 1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4 index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N /p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ /Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) (LaserWriter 16/600)]{A length product length le{A length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end %%EndProcSet %%BeginProcSet: 8r.enc % @@psencodingfile@{ % author = "S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry", % version = "0.6", % date = "22 June 1996", % filename = "8r.enc", % email = "kb@@mail.tug.org", % address = "135 Center Hill Rd. // Plymouth, MA 02360", % codetable = "ISO/ASCII", % checksum = "119 662 4424", % docstring = "Encoding for TrueType or Type 1 fonts to be used with TeX." % @} % % Idea is to have all the characters normally included in Type 1 fonts % available for typesetting. This is effectively the characters in Adobe % Standard Encoding + ISO Latin 1 + extra characters from Lucida. % % Character code assignments were made as follows: % % (1) the Windows ANSI characters are almost all in their Windows ANSI % positions, because some Windows users cannot easily reencode the % fonts, and it makes no difference on other systems. The only Windows % ANSI characters not available are those that make no sense for % typesetting -- rubout (127 decimal), nobreakspace (160), softhyphen % (173). quotesingle and grave are moved just because it's such an % irritation not having them in TeX positions. % % (2) Remaining characters are assigned arbitrarily to the lower part % of the range, avoiding 0, 10 and 13 in case we meet dumb software. % % (3) Y&Y Lucida Bright includes some extra text characters; in the % hopes that other PostScript fonts, perhaps created for public % consumption, will include them, they are included starting at 0x12. % % (4) Remaining positions left undefined are for use in (hopefully) % upward-compatible revisions, if someday more characters are generally % available. % % (5) hyphen appears twice for compatibility with both ASCII and Windows. % /TeXBase1Encoding [ % 0x00 (encoded characters from Adobe Standard not in Windows 3.1) /.notdef /dotaccent /fi /fl /fraction /hungarumlaut /Lslash /lslash /ogonek /ring /.notdef /breve /minus /.notdef % These are the only two remaining unencoded characters, so may as % well include them. /Zcaron /zcaron % 0x10 /caron /dotlessi % (unusual TeX characters available in, e.g., Lucida Bright) /dotlessj /ff /ffi /ffl /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef % very contentious; it's so painful not having quoteleft and quoteright % at 96 and 145 that we move the things normally found there down to here. /grave /quotesingle % 0x20 (ASCII begins) /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash % 0x30 /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question % 0x40 /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O % 0x50 /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore % 0x60 /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o % 0x70 /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef % rubout; ASCII ends % 0x80 /.notdef /.notdef /quotesinglbase /florin /quotedblbase /ellipsis /dagger /daggerdbl /circumflex /perthousand /Scaron /guilsinglleft /OE /.notdef /.notdef /.notdef % 0x90 /.notdef /.notdef /.notdef /quotedblleft /quotedblright /bullet /endash /emdash /tilde /trademark /scaron /guilsinglright /oe /.notdef /.notdef /Ydieresis % 0xA0 /.notdef % nobreakspace /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright /ordfeminine /guillemotleft /logicalnot /hyphen % Y&Y (also at 45); Windows' softhyphen /registered /macron % 0xD0 /degree /plusminus /twosuperior /threesuperior /acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf /threequarters /questiondown % 0xC0 /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla /Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis % 0xD0 /Eth /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute /Thorn /germandbls % 0xE0 /agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis % 0xF0 /eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave /uacute /ucircumflex /udieresis /yacute /thorn /ydieresis ] def %%EndProcSet %%BeginProcSet: texps.pro %! TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics exch def dict begin Encoding{exch dup type/integertype ne{pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def} ifelse}forall Metrics/Metrics currentdict end def[2 index currentdict end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{ dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[exch{dup CharStrings exch known not{pop/.notdef/Encoding true def} if}forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def} def end %%EndProcSet %%BeginProcSet: special.pro %! TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N /vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N /rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N /@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{ /hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B /@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{ /urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known {userdict/md get type/dicttype eq{userdict begin md length 10 add md maxlength ge{/md md dup length 20 add dict copy def}if end md begin /letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{ itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack} if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1 -1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{ noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop 90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr 2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4 -1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{ Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale }if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState save N userdict maxlength dict begin/magscale true def normalscale currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts /psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub TR/showpage{}N/erasepage{}N/copypage{}N/p 3 def @MacSetUp}N/doclip{ psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N/@beginspecial{SDict begin/SpecialSave save N gsave normalscale currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}N/@setspecial{ CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR }{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N/copypage{}N newpath}N /@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{end} repeat grestore SpecialSave restore end}N/@defspecial{SDict begin}N /@fedspecial{end}B/li{lineto}B/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1 setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY moveto}N/ellipse{/endangle X/startangle X /yrad X/xrad X/savematrix matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix}N end %%EndProcSet %%BeginProcSet: color.pro %! TeXDict begin/setcmykcolor where{pop}{/setcmykcolor{dup 10 eq{pop setrgbcolor}{1 sub 4 1 roll 3{3 index add neg dup 0 lt{pop 0}if 3 1 roll }repeat setrgbcolor pop}ifelse}B}ifelse/TeXcolorcmyk{setcmykcolor}def /TeXcolorrgb{setrgbcolor}def/TeXcolorgrey{setgray}def/TeXcolorgray{ setgray}def/TeXcolorhsb{sethsbcolor}def/currentcmykcolor where{pop}{ /currentcmykcolor{currentrgbcolor 10}B}ifelse/DC{exch dup userdict exch known{pop pop}{X}ifelse}B/GreenYellow{0.15 0 0.69 0 setcmykcolor}DC /Yellow{0 0 1 0 setcmykcolor}DC/Goldenrod{0 0.10 0.84 0 setcmykcolor}DC /Dandelion{0 0.29 0.84 0 setcmykcolor}DC/Apricot{0 0.32 0.52 0 setcmykcolor}DC/Peach{0 0.50 0.70 0 setcmykcolor}DC/Melon{0 0.46 0.50 0 setcmykcolor}DC/YellowOrange{0 0.42 1 0 setcmykcolor}DC/Orange{0 0.61 0.87 0 setcmykcolor}DC/BurntOrange{0 0.51 1 0 setcmykcolor}DC /Bittersweet{0 0.75 1 0.24 setcmykcolor}DC/RedOrange{0 0.77 0.87 0 setcmykcolor}DC/Mahogany{0 0.85 0.87 0.35 setcmykcolor}DC/Maroon{0 0.87 0.68 0.32 setcmykcolor}DC/BrickRed{0 0.89 0.94 0.28 setcmykcolor}DC/Red{ 0 1 1 0 setcmykcolor}DC/OrangeRed{0 1 0.50 0 setcmykcolor}DC/RubineRed{ 0 1 0.13 0 setcmykcolor}DC/WildStrawberry{0 0.96 0.39 0 setcmykcolor}DC /Salmon{0 0.53 0.38 0 setcmykcolor}DC/CarnationPink{0 0.63 0 0 setcmykcolor}DC/Magenta{0 1 0 0 setcmykcolor}DC/VioletRed{0 0.81 0 0 setcmykcolor}DC/Rhodamine{0 0.82 0 0 setcmykcolor}DC/Mulberry{0.34 0.90 0 0.02 setcmykcolor}DC/RedViolet{0.07 0.90 0 0.34 setcmykcolor}DC /Fuchsia{0.47 0.91 0 0.08 setcmykcolor}DC/Lavender{0 0.48 0 0 setcmykcolor}DC/Thistle{0.12 0.59 0 0 setcmykcolor}DC/Orchid{0.32 0.64 0 0 setcmykcolor}DC/DarkOrchid{0.40 0.80 0.20 0 setcmykcolor}DC/Purple{ 0.45 0.86 0 0 setcmykcolor}DC/Plum{0.50 1 0 0 setcmykcolor}DC/Violet{ 0.79 0.88 0 0 setcmykcolor}DC/RoyalPurple{0.75 0.90 0 0 setcmykcolor}DC /BlueViolet{0.86 0.91 0 0.04 setcmykcolor}DC/Periwinkle{0.57 0.55 0 0 setcmykcolor}DC/CadetBlue{0.62 0.57 0.23 0 setcmykcolor}DC /CornflowerBlue{0.65 0.13 0 0 setcmykcolor}DC/MidnightBlue{0.98 0.13 0 0.43 setcmykcolor}DC/NavyBlue{0.94 0.54 0 0 setcmykcolor}DC/RoyalBlue{1 0.50 0 0 setcmykcolor}DC/Blue{1 1 0 0 setcmykcolor}DC/Cerulean{0.94 0.11 0 0 setcmykcolor}DC/Cyan{1 0 0 0 setcmykcolor}DC/ProcessBlue{0.96 0 0 0 setcmykcolor}DC/SkyBlue{0.62 0 0.12 0 setcmykcolor}DC/Turquoise{0.85 0 0.20 0 setcmykcolor}DC/TealBlue{0.86 0 0.34 0.02 setcmykcolor}DC /Aquamarine{0.82 0 0.30 0 setcmykcolor}DC/BlueGreen{0.85 0 0.33 0 setcmykcolor}DC/Emerald{1 0 0.50 0 setcmykcolor}DC/JungleGreen{0.99 0 0.52 0 setcmykcolor}DC/SeaGreen{0.69 0 0.50 0 setcmykcolor}DC/Green{1 0 1 0 setcmykcolor}DC/ForestGreen{0.91 0 0.88 0.12 setcmykcolor}DC /PineGreen{0.92 0 0.59 0.25 setcmykcolor}DC/LimeGreen{0.50 0 1 0 setcmykcolor}DC/YellowGreen{0.44 0 0.74 0 setcmykcolor}DC/SpringGreen{ 0.26 0 0.76 0 setcmykcolor}DC/OliveGreen{0.64 0 0.95 0.40 setcmykcolor} DC/RawSienna{0 0.72 1 0.45 setcmykcolor}DC/Sepia{0 0.83 1 0.70 setcmykcolor}DC/Brown{0 0.81 1 0.60 setcmykcolor}DC/Tan{0.14 0.42 0.56 0 setcmykcolor}DC/Gray{0 0 0 0.50 setcmykcolor}DC/Black{0 0 0 1 setcmykcolor}DC/White{0 0 0 0 setcmykcolor}DC end %%EndProcSet TeXDict begin 39158280 55380996 1000 600 600 (hacker-history.dvi) @start /Fa 134[37 37 55 37 1[23 32 32 1[42 42 42 60 23 37 1[23 42 42 23 37 42 37 1[42 3[32 1[32 4[51 60 46 1[51 3[55 69 46 2[28 60 60 51 1[60 55 1[51 25[28 39[{ TeXBase1Encoding ReEncodeFont}38 83.022 /Times-Italic rf /Fb 134[74 74 2[81 44 74 52 1[81 81 81 118 37 74 1[37 81 81 44 74 81 74 81 74 9[125 1[96 81 1[96 1[89 7[96 103 81 89 96 1[96 7[44 12[44 45[{TeXBase1Encoding ReEncodeFont}34 132.835 /Helvetica-Bold rf %DVIPSBitmapFont: Fc cmmi10 10 1 /Fc 1 59 df<121C127FEAFF80A5EA7F00121C0909798817>58 D E %EndDVIPSBitmapFont /Fd 139[48 80 3[88 88 1[40 5[48 80 2[88 80 12[88 16[104 67[{TeXBase1Encoding ReEncodeFont}11 143.462 /Helvetica-Bold rf /Fe 134[50 4[33 1[44 1[55 50 5[28 55 50 35[72 67[{ TeXBase1Encoding ReEncodeFont}9 99.6264 /Times-Bold rf /Ff 86[63 17[83 42 1[37 37 24[37 42 42 60 42 42 23 32 28 42 42 42 42 65 23 42 23 23 42 42 28 37 42 37 42 37 28 2[28 1[28 1[60 60 78 60 60 51 46 55 60 46 60 60 74 51 60 32 28 60 60 46 51 60 55 55 60 1[37 3[23 23 42 42 42 42 42 42 42 42 42 42 23 21 28 21 2[28 28 28 65 1[42 1[34 28 29[46 46 2[{TeXBase1Encoding ReEncodeFont}85 83.022 /Times-Roman rf /Fg 134[72 3[72 72 72 72 2[72 1[72 4[72 2[72 1[72 34[72 1[72 1[72 13[72 46[{ TeXBase1Encoding ReEncodeFont}14 119.552 /Courier-Bold rf /Fh 129[62 4[60 60 86 60 66 40 47 53 1[66 60 66 100 3[33 66 60 1[53 66 53 1[60 3[40 1[40 6[80 66 86 12[80 10[40 10[33 30 46[{TeXBase1Encoding ReEncodeFont}29 119.552 /Times-Bold rf /Fi 134[115 4[69 115 80 2[126 1[184 1[115 1[57 2[69 115 126 115 1[115 24[149 5[149 149 65[{ TeXBase1Encoding ReEncodeFont}16 206.585 /Helvetica-Bold rf end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi TeXDict begin %%PaperSize: A4 %%EndSetup %%Page: 1 1 1 0 bop Black Black 244 1051 a Fi(A)57 b(Brief)h(Histor)r(y)g(of)g(Hac) l(ker)l(dom)1324 1194 y Fh(Eric)30 b(Ste)n(v)o(en)h(Raymond)609 1338 y(Th)n(yrsus)e(Enter)o(prises)h([http://www)-8 b(.tuxedo.or)o (g/~esr/])120 1744 y Fg(esr@thyrsus.com)1553 1987 y Ff(This)21 b(is)g(v)o(ersion)e(1.24)1282 2087 y(Cop)o(yright)g(\251)h (2000)f(Eric)h(S.)h(Raymond)0 2289 y Fe(Copyright)0 2472 y Ff(Permission)26 b(is)h(granted)e(to)i(cop)o(y)-5 b(,)26 b(distrib)n(ute)g(and/or)f(modify)f(this)j(document)e(under)g(the)h (terms)g(of)g(the)h(Open)e(Publication)0 2572 y(License,)20 b(v)o(ersion)f(2.0.)1379 2671 y($Date:)25 b(2002/08/02)17 b(08:21:12)h($)p Black Black 0 2756 a(Re)n(vision)i(History)p Black Black Black Black 0 2848 a(Re)n(vision)g(1.24)p Black Black Black Black 730 w(25)g(August)g(2000)p Black Black Black Black 658 w(esr)p Black Black Black Black 21 2939 a(First)h(DocBook)e(v)o(ersion.)p Black Black Black Black 0 3030 a(Re)n(vision)h(1.23)p Black Black Black Black 730 w(29)g(Dec)g(1999)p Black Black Black Black 765 w(esr)p Black Black Black Black 21 3122 a(This)g(v)o(ersion)f (went)h(into)g(the)g(\002rst)h(printed)e(edition.)p Black Black Black Black 0 3213 a(Re)n(vision)h(1.20)p Black Black Black Black 730 w(17)g(August)g(1999)p Black Black Black Black 658 w(esr)p Black Black Black Black 21 3304 a(First)h(SGML)f(v)o(ersion)f(with)h(bibliography)-5 b(.)p Black Black Black Black 0 3396 a(Re)n(vision)20 b(1.1)p Black Black Black Black 772 w(15)g(Feb)g(1997)p Black Black Black Black 774 w(esr)p Black Black Black Black 21 3487 a(This)g(document)e(dates)j(from)e(around)f(1992,)h(b)n (ut)h(w)o(as)h(not)f(v)o(ersion-controlled)c(until)k(1997.)p Black Black 0 3699 a(I)d(e)o(xplore)e(the)i(origins)f(of)g(the)h(hack)o (er)f(culture,)g(including)f(prehistory)g(among)g(the)i(Real)h (Programmers,)d(the)i(glory)e(days)i(of)f(the)0 3799 y(MIT)21 b(hack)o(ers,)f(and)g(ho)n(w)g(the)h(early)f(ARP)-8 b(Anet)22 b(nurtured)c(the)j(\002rst)h(netw)o(ork)d(nation.)26 b(I)21 b(describe)f(the)h(early)f(rise)h(and)g(e)n(v)o(entual)0 3899 y(stagnation)30 b(of)h(Unix,)i(the)e(ne)n(w)g(hope)f(from)g (Finland,)j(and)d(ho)n(w)h(`the)g(last)h(true)e(hack)o(er')g(became)g (the)h(ne)o(xt)g(generation')-5 b(s)0 3998 y(patriarch.)54 b(I)31 b(sk)o(etch)f(the)g(w)o(ay)h(Linux)e(and)h(the)g(mainstreaming)f (of)h(the)g(Internet)f(brought)g(the)h(hack)o(er)f(culture)h(from)f (the)0 4098 y(fringes)19 b(of)h(public)g(consciousness)f(to)h(its)h (current)e(prominence.)-399 4353 y Fd(T)-11 b(ab)o(le)38 b(of)h(Contents)0 4596 y Ff(Prologue:)24 b(The)19 b(Real)i(Programmers) 53 b Fc(:)14 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g (:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:) g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g (:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)35 b Ff(1)0 4696 y(The)20 b(Early)f(Hack)o(ers)64 b Fc(:)14 b(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g (:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:) h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g (:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:) g(:)g(:)g(:)f(:)h(:)44 b Ff(2)0 4795 y(The)20 b(Rise)h(of)f(Unix)50 b Fc(:)14 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g (:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:) g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g (:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:) h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)30 b Ff(4)0 4895 y(The)20 b(End)f(of)h(Elder)g(Days)66 b Fc(:)14 b(:)f(:)h(:)g(:)g(:)g (:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:) g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g (:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:) g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)46 b Ff(5)0 4995 y(The)20 b(Proprietary-Unix)d(Era)58 b Fc(:)14 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g (:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:) g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g (:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:) h(:)39 b Ff(6)0 5094 y(The)20 b(Early)f(Free)i(Unix)o(es)53 b Fc(:)14 b(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g (:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:) f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g (:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:) g(:)g(:)g(:)g(:)33 b Ff(8)0 5194 y(The)20 b(Great)g(W)-7 b(eb)21 b(Explosion)52 b Fc(:)14 b(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g (:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:) h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g (:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:) g(:)g(:)g(:)f(:)h(:)g(:)g(:)34 b Ff(9)0 5294 y(Bibliography)61 b Fc(:)14 b(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g (:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:) h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g (:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:) g(:)g(:)g(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Ff(9)p Black 1860 5872 a(1)p Black eop %%Page: 2 2 2 1 bop Black Black -399 994 a Fb(Pr)m(ologue:)46 b(The)38 b(Real)e(Pr)m(ogrammer)n(s)0 1177 y Ff(In)20 b(the)g(be)o(ginning,)d (there)j(were)g(Real)h(Programmers.)0 1359 y(That')-5 b(s)25 b(not)g(what)g(the)o(y)g(called)g(themselv)o(es.)39 b(The)o(y)24 b(didn')o(t)g(call)h(themselv)o(es)g(`hack)o(ers',)g (either)m(,)g(or)g(an)o(ything)e(in)i(particular;)0 1459 y(the)h(sobriquet)e(`Real)i(Programmer')d(w)o(asn')o(t)j(coined)e (until)i(after)f(1980,)h(retrospecti)n(v)o(ely)d(by)j(one)f(of)g(their) h(o)n(wn.)41 b(But)26 b(from)0 1559 y(1945)17 b(onw)o(ard,)g(the)h (technology)e(of)i(computing)e(attracted)i(man)o(y)f(of)h(the)g(w)o (orld')-5 b(s)18 b(brightest)g(and)f(most)i(creati)n(v)o(e)e(minds.)24 b(From)0 1658 y(Eck)o(ert)31 b(and)g(Mauchly')-5 b(s)30 b(\002rst)i(ENIA)m(C)f(computer)f(onw)o(ard)g(there)h(w)o(as)h(a)g (more)e(or)h(less)i(continuous)c(and)i(self-conscious)0 1758 y(technical)19 b(culture)h(of)g(enthusiast)g(programmers,)d (people)i(who)h(b)n(uilt)g(and)f(played)h(with)g(softw)o(are)g(for)f (fun.)0 1940 y(The)f(Real)h(Programmers)d(typically)i(came)g(out)g(of)g (engineering)e(or)i(physics)f(backgrounds.)22 b(The)o(y)17 b(were)h(often)g(amateur)n(-radio)0 2040 y(hobbyists.)30 b(The)o(y)21 b(w)o(ore)g(white)h(socks)h(and)e(polyester)g(shirts)i (and)e(ties)i(and)f(thick)f(glasses)i(and)f(coded)f(in)h(machine)f (language)0 2140 y(and)f(assembler)f(and)h(FOR)-5 b(TRAN)21 b(and)f(half)g(a)g(dozen)f(ancient)h(languages)f(no)n(w)g(for)o (gotten.)0 2322 y(From)33 b(the)h(end)e(of)i(W)-7 b(orld)33 b(W)-7 b(ar)35 b(II)e(to)h(the)f(early)g(1970s,)j(in)d(the)h(great)f (days)g(of)g(batch)g(processing)f(and)h(the)h(\223big)f(iron\224)0 2422 y(mainframes,)24 b(the)h(Real)g(Programmers)e(were)i(the)g (dominant)e(technical)h(culture)f(in)i(computing.)37 b(A)25 b(fe)n(w)g(pieces)g(of)f(re)n(v)o(ered)0 2522 y(hack)o(er)15 b(folklore)g(date)h(from)g(this)g(era,)h(including)e(v)n (arious)g(lists)j(of)e(Murphy')-5 b(s)14 b(La)o(ws)j(and)e(the)i (mock-German)c(\223Blink)o(enlights\224)0 2621 y(poster)20 b(that)g(still)h(graces)f(man)o(y)f(computer)f(rooms.)0 2804 y(Some)g(people)g(who)g(gre)n(w)g(up)h(in)g(the)f(`Real)h (Programmer')d(culture)i(remained)f(acti)n(v)o(e)i(into)f(the)h(1990s)e (and)h(e)n(v)o(en)g(past)h(the)g(turn)0 2904 y(of)24 b(the)g(21st)g(century)-5 b(.)35 b(Se)o(ymour)22 b(Cray)-5 b(,)24 b(designer)f(of)h(the)g(Cray)g(line)h(of)f(supercomputers,)e(w)o (as)j(among)d(the)i(greatest.)37 b(He)24 b(is)0 3003 y(said)c(once)f(to)h(ha)n(v)o(e)f(toggled)f(an)i(entire)f(operating)f (system)i(of)g(his)g(o)n(wn)f(design)g(into)g(a)i(computer)d(of)h(his)h (o)n(wn)f(design)g(through)0 3103 y(its)i(front-panel)d(switches.)25 b(In)20 b(octal.)25 b(W)m(ithout)20 b(an)g(error)-5 b(.)24 b(And)c(it)h(w)o(ork)o(ed.)i(Real)e(Programmer)d(macho)h(supremo.)0 3285 y(The)35 b(`Real)i(Programmer')c(culture,)38 b(though,)g(w)o(as)e (hea)n(vily)f(associated)h(with)g(batch)f(\(and)g(especially)g(batch)g (scienti\002c\))0 3385 y(computing.)45 b(It)28 b(w)o(as)h(e)n(v)o (entually)c(eclipsed)j(by)f(the)h(rise)g(of)f(interacti)n(v)o(e)f (computing,)h(the)h(uni)n(v)o(ersities,)h(and)e(the)g(netw)o(orks.)0 3485 y(These)d(ga)n(v)o(e)f(birth)g(to)h(another)e(engineering)g (tradition)g(that,)j(e)n(v)o(entually)-5 b(,)22 b(w)o(ould)h(e)n(v)n (olv)o(e)g(into)h(today')-5 b(s)23 b(open-source)e(hack)o(er)0 3584 y(culture.)-399 3868 y Fb(The)38 b(Earl)n(y)d(Hac)m(ker)n(s)0 4051 y Ff(The)d(be)o(ginnings)d(of)j(the)g(hack)o(er)f(culture)g(as)i (we)f(kno)n(w)f(it)i(today)e(can)h(be)g(con)m(v)o(eniently)d(dated)i (to)i(1961,)g(the)f(year)f(MIT)0 4151 y(acquired)26 b(the)h(\002rst)h (PDP-1.)46 b(The)27 b(Signals)g(and)g(Po)n(wer)g(Committee)g(of)g(MIT') -5 b(s)27 b(T)-6 b(ech)27 b(Model)f(Railroad)h(Club)h(adopted)d(the)0 4250 y(machine)d(as)i(their)f(f)o(a)n(v)n(orite)g(tech-to)o(y)f(and)g (in)m(v)o(ented)f(programming)f(tools,)k(slang,)f(and)g(an)g(entire)g (surrounding)d(culture)i(that)0 4350 y(is)i(still)g(recognizably)c (with)j(us)g(today)-5 b(.)31 b(These)23 b(early)f(years)g(ha)n(v)o(e)g (been)h(e)o(xamined)d(in)j(the)g(\002rst)h(part)e(of)g(Ste)n(v)o(en)g (Le)n(vy')-5 b(s)23 b(book)0 4449 y Fa(Hac)n(k)o(er)o(s)e Ff([Le)n(vy].)0 4632 y(MIT')-5 b(s)21 b(computer)e(culture)h(seems)h (to)g(ha)n(v)o(e)g(been)f(the)h(\002rst)g(to)g(adopt)f(the)h(term)g (`hack)o(er'.)k(The)c(T)-6 b(ech)20 b(Model)g(Railroad)h(Club')-5 b(s)0 4732 y(hack)o(ers)20 b(became)f(the)i(nucleus)f(of)g(MIT')-5 b(s)21 b(Arti\002cial)f(Intelligence)f(Laboratory)-5 b(,)18 b(the)i(w)o(orld')-5 b(s)21 b(leading)e(center)h(of)g(AI)h (research)0 4831 y(into)f(the)g(early)g(1980s.)k(Their)19 b(in\003uence)g(w)o(as)i(spread)f(f)o(ar)g(wider)g(after)g(1969,)e(the) i(\002rst)h(year)f(of)g(the)g(ARP)-8 b(Anet.)0 5014 y(The)16 b(ARP)-8 b(Anet)17 b(w)o(as)g(the)f(\002rst)h(transcontinental,)d (high-speed)g(computer)g(netw)o(ork.)23 b(It)16 b(w)o(as)h(b)n(uilt)f (by)g(the)g(Defense)g(Department)0 5114 y(as)24 b(an)g(e)o(xperiment)d (in)j(digital)f(communications,)f(b)n(ut)h(gre)n(w)g(to)h(link)f (together)f(hundreds)g(of)h(uni)n(v)o(ersities)f(and)h(defense)g(con-)0 5213 y(tractors)18 b(and)g(research)g(laboratories.)23 b(It)c(enabled)e(researchers)g(e)n(v)o(erywhere)f(to)j(e)o(xchange)e (information)f(with)j(unprecedented)0 5313 y(speed)26 b(and)f(\003e)o(xibility)-5 b(,)26 b(gi)n(ving)f(a)i(huge)e(boost)g(to) h(collaborati)n(v)o(e)e(w)o(ork)i(and)f(tremendously)f(increasing)h (both)g(the)h(pace)g(and)0 5412 y(intensity)20 b(of)g(technological)e (adv)n(ance.)p Black 1860 5872 a(2)p Black eop %%Page: 3 3 3 2 bop Black Black 0 983 a Ff(But)20 b(the)e(ARP)-8 b(Anet)20 b(did)f(something)e(else)j(as)g(well.)25 b(Its)19 b(electronic)f(highw)o(ays)g(brought)f(together)h(hack)o(ers)g(all)h(o) o(v)o(er)f(the)h(U.S.)g(in)0 1083 y(a)i(critical)f(mass;)h(instead)f (of)g(remaining)e(in)j(isolated)f(small)h(groups)d(each)i(de)n(v)o (eloping)e(their)i(o)n(wn)f(ephemeral)g(local)h(cultures,)0 1182 y(the)o(y)f(disco)o(v)o(ered)f(\(or)i(re-in)m(v)o(ented\))d (themselv)o(es)i(as)i(a)g(netw)o(ork)o(ed)d(tribe.)0 1365 y(The)27 b(\002rst)h(intentional)d(artif)o(acts)j(of)f(the)g(hack) o(er)f(culture\227the)g(\002rst)h(slang)g(lists,)j(the)e(\002rst)f (satires,)j(the)d(\002rst)h(self-conscious)0 1465 y(discussions)23 b(of)g(the)g(hack)o(er)f(ethic\227all)h(propagated)d(on)i(the)h(ARP)-8 b(Anet)24 b(in)f(its)h(early)f(years.)33 b(In)23 b(particular)m(,)f (the)h(\002rst)g(v)o(ersion)0 1564 y(of)e(the)f(Jar)o(gon)g(File)h ([http://www)-5 b(.tux)o(edo.or)o(g/jar)n(go)o(n])15 b(de)n(v)o(eloped)j(as)k(a)f(cross-net)f(collaboration)f(during)g (1973\2261975.)k(This)0 1664 y(slang)i(dictionary)e(became)h(one)g(of)h (the)f(culture')-5 b(s)25 b(de\002ning)e(documents.)37 b(It)26 b(w)o(as)f(e)n(v)o(entually)e(published)g(as)j("The)e(Hack)o (er')-5 b(s)0 1763 y(Dictionary")34 b(in)h(1983;)41 b(that)35 b(\002rst)h(v)o(ersion)e(is)i(out)f(of)g(print,)j(b)n(ut)d(a)h(re)n (vised)e(and)h(e)o(xpanded)d(v)o(ersion)i(is)i Fa(Ne)o(w)g(Hac)n(k)o (er')m(s)0 1863 y(Dictionary)19 b Ff([Raymond].)0 2046 y(Hack)o(erdom)e(\003o)n(wered)h(at)h(the)g(uni)n(v)o(ersities)f (connected)f(to)i(the)g(net,)g(especially)f(\(though)f(not)i(e)o (xclusi)n(v)o(ely\))d(in)j(their)g(computer)0 2145 y(science)31 b(departments.)55 b(MIT')-5 b(s)31 b(AI)g(and)g(LCS)g(labs)h(made)e(it) h(\002rst)h(among)e(equals)g(from)g(the)h(late)g(1960s.)56 b(But)32 b(Stanford)0 2245 y(Uni)n(v)o(ersity')-5 b(s)30 b(Arti\002cial)i(Intelligence)e(Laboratory)f(\(SAIL\))i(and)f(Carne)o (gie-Mellon)f(Uni)n(v)o(ersity)h(\(CMU\))i(became)e(nearly)0 2345 y(as)f(important.)46 b(All)29 b(were)f(thri)n(ving)e(centers)i(of) g(computer)e(science)i(and)f(AI)h(research.)48 b(All)28 b(attracted)g(bright)f(people)g(who)0 2444 y(contrib)n(uted)18 b(great)i(things)g(to)g(the)g(hack)o(er)f(culture,)h(on)f(both)h(the)g (technical)f(and)h(folkloric)f(le)n(v)o(els.)0 2627 y(T)-7 b(o)19 b(understand)e(what)i(came)g(later)m(,)g(though,)f(we)h(need)g (to)g(tak)o(e)g(another)f(look)g(at)i(the)f(computers)f(themselv)o(es;) g(because)h(the)g(AI)0 2726 y(Lab')-5 b(s)20 b(rise)h(and)f(its)h(e)n (v)o(entual)d(f)o(all)j(were)f(both)f(dri)n(v)o(en)g(by)h(w)o(a)n(v)o (es)g(of)g(change)f(in)h(computing)e(technology)-5 b(.)0 2909 y(Since)16 b(the)g(days)g(of)f(the)h(PDP-1,)h(hack)o(erdom')-5 b(s)14 b(fortunes)g(had)i(been)f(w)o(o)o(v)o(en)f(together)h(with)h (Digital)g(Equipment)e(Corporation')-5 b(s)0 3009 y(PDP)33 b(series)g(of)f(minicomputers.)59 b(DEC)33 b(pioneered)d(commercial)h (interacti)n(v)o(e)g(computing)f(and)i(time-sharing)e(operating)0 3108 y(systems.)52 b(Because)29 b(their)g(machines)f(were)h(\003e)o (xible,)i(po)n(werful,)e(and)f(relati)n(v)o(ely)g(cheap)g(for)h(the)g (era,)i(lots)e(of)g(uni)n(v)o(ersities)0 3208 y(bought)18 b(them.)0 3391 y(Cheap)26 b(time-sharing)f(w)o(as)j(the)e(medium)g(the) g(hack)o(er)g(culture)g(gre)n(w)g(in,)i(and)e(for)g(most)h(of)f(its)i (lifespan)e(the)h(ARP)-8 b(Anet)27 b(w)o(as)0 3490 y(primarily)21 b(a)h(netw)o(ork)f(of)h(DEC)h(machines.)29 b(The)22 b(most)g(important) f(of)h(these)g(w)o(as)h(the)f(PDP-10,)g(\002rst)g(released)g(in)g (1967.)30 b(The)0 3590 y(10)c(remained)e(hack)o(erdom')-5 b(s)25 b(f)o(a)n(v)n(orite)g(machine)g(for)h(almost)g(\002fteen)g (years;)j(T)o(OPS-10)c(\(DEC')-5 b(s)27 b(operating)d(system)j(for)e (the)0 3689 y(machine\))f(and)i(MA)m(CR)m(O-10)f(\(its)h(assembler\))g (are)f(still)j(remembered)23 b(with)j(nostalgic)f(fondness)g(in)h(a)g (great)g(deal)g(of)f(slang)0 3789 y(and)20 b(folklore.)0 3972 y(MIT)-6 b(,)32 b(though)e(it)j(used)f(the)h(same)f(PDP-10s)g(as)h (e)n(v)o(eryone)d(else,)36 b(took)31 b(a)i(slightly)f(dif)n(ferent)f (path;)38 b(the)o(y)32 b(rejected)f(DEC')-5 b(s)0 4071 y(softw)o(are)20 b(for)f(the)i(PDP-10)e(entirely)h(and)f(b)n(uilt)i (their)f(o)n(wn)f(operating)f(system,)j(the)f(f)o(abled)f(ITS.)0 4254 y(ITS)g(stood)f(for)h(`Incompatible)d(T)m(ime-sharing)h(System')i (which)f(gi)n(v)o(es)h(one)f(a)h(pretty)g(good)e(\002x)i(on)g(the)g (MIT)g(hack)o(ers')f(attitude)0 4354 y(\(technically)-5 b(,)21 b(the)h(name)g(w)o(as)h(a)g(play)f(on)g(its)i(predecessor)m(,)d (the)h(Compatible)g(T)m(ime-Sharing)e(System)i(CTSS\).)h(The)o(y)f(w)o (anted)0 4453 y(it)g Fa(theirtheir)f Ff(w)o(ay)-5 b(.)27 b(F)o(ortunately)19 b(for)i(all,)g(MIT')-5 b(s)21 b(people)f(had)h(the) g(intelligence)f(to)h(match)f(their)h(arrogance.)k(ITS,)c(quirk)o(y)e (and)0 4553 y(eccentric)i(and)h(occasionally)e(b)n(uggy)h(though)f(it)j (al)o(w)o(ays)f(w)o(as,)i(hosted)d(a)h(brilliant)g(series)h(of)e (technical)h(inno)o(v)n(ations)e(and)h(still)0 4652 y(ar)o(guably)d (holds)h(the)i(record)d(as)j(the)g(single)f(time-sharing)e(system)i(in) h(longest)e(continuous)g(use.)0 4835 y(ITS)26 b(itself)g(w)o(as)g (written)f(in)h(assembler)m(,)f(b)n(ut)h(man)o(y)e(ITS)i(projects)e (were)i(written)f(in)g(the)h(AI)f(language)f(LISP)-9 b(.)25 b(LISP)h(w)o(as)g(f)o(ar)0 4935 y(more)17 b(po)n(werful)f(and)h (\003e)o(xible)h(than)f(an)o(y)g(other)g(language)f(of)i(its)h(day;)f (in)g(f)o(act,)g(it)h(is)f(still)h(a)g(better)e(design)g(than)h(most)g (languages)0 5034 y(of)24 b Fa(todaytoday)p Ff(,)e(twenty-\002)n(v)o(e) h(years)g(later)-5 b(.)38 b(LISP)24 b(freed)f(ITS')-5 b(s)25 b(hack)o(ers)e(to)h(think)g(in)g(unusual)f(and)g(creati)n(v)o(e) g(w)o(ays.)37 b(It)25 b(w)o(as)g(a)0 5134 y(major)19 b(f)o(actor)h(in)g(their)g(successes,)h(and)f(remains)f(one)h(of)g (hack)o(erdom')-5 b(s)18 b(f)o(a)n(v)n(orite)i(languages.)0 5316 y(Man)o(y)29 b(of)g(the)h(ITS)g(culture')-5 b(s)30 b(technical)f(creations)g(are)h(still)h(ali)n(v)o(e)e(today;)34 b(the)c(EMA)m(CS)g(program)e(editor)h(is)i(perhaps)d(the)0 5416 y(best-kno)n(wn.)57 b(And)31 b(much)g(of)g(ITS')-5 b(s)32 b(folklore)e(is)j(still)f(`li)n(v)o(e')f(to)h(hack)o(ers,)h(as)g (one)e(can)g(see)h(in)g(the)g(Jar)o(gon)e(File)i([http://-)0 5516 y(www)-5 b(.tux)o(edo.or)o(g/jar)o(go)o(n])o(.)p Black 1860 5872 a(3)p Black eop %%Page: 4 4 4 3 bop Black Black 0 983 a Ff(SAIL)34 b(and)f(CMU)i(weren')o(t)d (asleep,)37 b(either)-5 b(.)66 b(Man)o(y)33 b(of)g(the)h(cadre)f(of)h (hack)o(ers)f(that)h(gre)n(w)f(up)g(around)f(SAIL)-8 b(')j(s)35 b(PDP-10)0 1083 y(later)24 b(became)f(k)o(e)o(y)g(\002gures) h(in)g(the)g(de)n(v)o(elopment)d(of)i(the)h(personal)f(computer)f(and)i (today')-5 b(s)23 b(windo)n(w/icon/mouse)e(softw)o(are)0 1182 y(interf)o(aces.)54 b(Meanwhile)29 b(hack)o(ers)g(at)h(CMU)h(were) f(doing)e(the)i(w)o(ork)f(that)i(w)o(ould)e(lead)h(to)g(the)g(\002rst)g (practical)g(lar)o(ge-scale)0 1282 y(applications)19 b(of)h(e)o(xpert)f(systems)i(and)e(industrial)h(robotics.)0 1465 y(Another)30 b(important)g(node)g(of)h(the)g(culture)g(w)o(as)h (XER)m(O)m(X)f(P)-8 b(ARC,)33 b(the)e(f)o(amed)g(P)o(alo)g(Alto)g (Research)g(Center)-5 b(.)59 b(F)o(or)31 b(more)0 1564 y(than)20 b(a)i(decade,)e(from)f(the)i(early)g(1970s)e(into)i(the)g (mid-1980s,)d(P)-8 b(ARC)23 b(yielded)d(an)h(astonishing)e(v)n(olume)h (of)h(groundbreaking)0 1664 y(hardw)o(are)14 b(and)h(softw)o(are)h (inno)o(v)n(ations.)21 b(The)15 b(modern)f(mice,)j(windo)n(ws,)e(and)g (icons)h(style)g(of)g(softw)o(are)f(interf)o(ace)g(w)o(as)h(in)m(v)o (ented)0 1763 y(there.)52 b(So)29 b(w)o(as)h(the)f(laser)h(printer)m(,) g(and)e(the)i(local-area)e(netw)o(ork;)k(and)d(P)-8 b(ARC')j(s)31 b(series)f(of)f(D)h(machines)e(anticipated)g(the)0 1863 y(po)n(werful)c(personal)h(computers)f(of)i(the)g(1980s)f(by)g(a)i (decade.)41 b(Sadly)-5 b(,)26 b(these)g(prophets)f(were)h(without)f (honor)f(in)i(their)g(o)n(wn)0 1963 y(compan)o(y;)i(so)f(much)f(so)h (that)g(it)g(became)f(a)h(standard)f(jok)o(e)g(to)h(describe)f(P)-8 b(ARC)29 b(as)e(a)g(place)g(characterized)e(by)h(de)n(v)o(eloping)0 2062 y(brilliant)20 b(ideas)g(for)g(e)n(v)o(eryone)d(else.)26 b(Their)19 b(in\003uence)h(on)f(hack)o(erdom)f(w)o(as)j(perv)n(asi)n(v) o(e.)0 2245 y(The)31 b(ARP)-8 b(Anet)31 b(and)f(the)h(PDP-10)g (cultures)f(gre)n(w)g(in)h(strength)f(and)g(v)n(ariety)g(throughout)e (the)j(1970s.)56 b(The)30 b(f)o(acilities)i(for)0 2345 y(electronic)d(mailing)g(lists)i(that)f(had)f(been)g(used)g(to)h (foster)g(cooperation)d(among)h(continent-wide)g(special-interest)h (groups)0 2444 y(were)d(increasingly)f(also)i(used)f(for)g(more)g (social)g(and)g(recreational)f(purposes.)43 b(D)m(ARP)-8 b(A)27 b(deliberately)e(turned)g(a)i(blind)f(e)o(ye)0 2544 y(to)h(all)g(the)f(technically)f(`unauthorized')e(acti)n(vity;)29 b(it)e(understood)d(that)j(the)f(e)o(xtra)g(o)o(v)o(erhead)e(w)o(as)j (a)g(small)f(price)g(to)h(pay)f(for)0 2643 y(attracting)19 b(an)h(entire)g(generation)e(of)i(bright)f(young)g(people)g(into)h(the) g(computing)e(\002eld.)0 2826 y(Perhaps)24 b(the)h(best-kno)n(wn)d(of)i (the)h(`social')f(ARP)-8 b(Anet)25 b(mailing)f(lists)i(w)o(as)g(the)e (SF-LO)l(VERS)h(list)h(for)e(science-\002ction)f(f)o(ans;)0 2926 y(it)g(is)g(still)h(v)o(ery)d(much)g(ali)n(v)o(e)h(today)-5 b(,)22 b(in)g(f)o(act,)h(on)f(the)g(lar)o(ger)f(`Internet')g(that)h (ARP)-8 b(Anet)23 b(e)n(v)n(olv)o(ed)e(into.)31 b(But)23 b(there)f(were)g(man)o(y)0 3025 y(others,)17 b(pioneering)d(a)j(style)g (of)g(communication)c(that)k(w)o(ould)f(later)h(be)g(commercialized)d (by)i(for)n(-pro\002t)f(time-sharing)g(services)0 3125 y(lik)o(e)20 b(CompuServ)o(e,)e(GEnie)i(and)g(Prodigy)e(\(and)i(later)g (still)h(dominated)e(by)g(A)-5 b(OL\).)0 3308 y(Y)c(our)15 b(historian)g(\002rst)i(became)e(in)m(v)n(olv)o(ed)f(with)i(the)g(hack) o(er)g(culture)f(in)h(1977)f(through)e(the)k(early)e(ARP)-8 b(Anet)17 b(and)e(science-\002ction)0 3407 y(f)o(andom.)23 b(From)d(then)g(onw)o(ard,)e(I)j(personally)d(witnessed)j(and)e (participated)g(in)h(man)o(y)f(of)h(the)g(changes)f(described)g(here.) -399 3691 y Fb(The)38 b(Rise)e(of)h(Unix)0 3874 y Ff(F)o(ar)19 b(from)g(the)g(bright)f(lights)i(of)f(the)g(ARP)-8 b(Anet,)20 b(of)n(f)f(in)g(the)h(wilds)f(of)h(Ne)n(w)f(Jerse)o(y)-5 b(,)19 b(something)f(else)i(had)e(been)h(going)f(on)h(since)0 3973 y(1969)g(that)h(w)o(ould)g(e)n(v)o(entually)e(o)o(v)o(ershado)n(w) f(the)k(PDP-10)e(tradition.)24 b(The)c(year)g(of)g(ARP)-8 b(Anet')j(s)21 b(birth)f(w)o(as)h(also)f(the)g(year)g(that)0 4073 y(a)h(Bell)g(Labs)f(hack)o(er)f(named)g(K)n(en)h(Thompson)e(in)m (v)o(ented)g(Unix.)0 4256 y(Thompson)28 b(had)h(been)h(in)m(v)n(olv)o (ed)e(with)i(the)g(de)n(v)o(elopment)d(w)o(ork)j(on)f(a)i(time-sharing) d(OS)j(called)f(Multics,)i(which)e(shared)0 4355 y(common)d(ancestry)i (with)g(ITS.)g(Multics)h(w)o(as)g(a)g(test-bed)e(for)h(some)g (important)f(ideas)h(about)f(ho)n(w)h(the)g(comple)o(xity)e(of)i(an)0 4455 y(operating)20 b(system)i(could)f(be)h(hidden)e(inside)i(it,)h(in) m(visible)e(to)h(the)f(user)m(,)h(and)f(e)n(v)o(en)g(to)h(most)g (programmers.)27 b(The)22 b(idea)f(w)o(as)i(to)0 4555 y(mak)o(e)g(using)g(Multics)h(from)f(the)g(outside)g(\(and)g (programming)d(for)j(it!\))35 b(much)23 b(simpler)m(,)h(so)g(that)f (more)g(real)h(w)o(ork)f(could)f(get)0 4654 y(done.)0 4837 y(Bell)g(Labs)f(pulled)e(out)i(of)f(the)h(project)f(when)g (Multics)i(displayed)d(signs)i(of)g(bloating)e(into)i(an)g(unusable)e (white)i(elephant)f(\(the)0 4937 y(system)i(w)o(as)h(later)f(mark)o (eted)f(commercially)f(by)h(Hone)o(ywell)g(b)n(ut)h(ne)n(v)o(er)f (became)g(a)h(success\).)31 b(K)n(en)21 b(Thompson)f(missed)i(the)0 5036 y(Multics)17 b(en)m(vironment,)d(and)i(be)o(gan)f(to)i(play)f(at)h (implementing)e(a)i(mixture)f(of)g(its)i(ideas)f(and)f(some)h(of)f(his) h(o)n(wn)f(on)h(a)g(sca)n(v)o(enged)0 5136 y(DEC)k(PDP-7.)0 5318 y(Another)g(hack)o(er)h(named)f(Dennis)h(Ritchie)h(in)m(v)o(ented) e(a)i(ne)n(w)f(language)f(called)h(`C')h(for)f(use)h(under)e(Thompson') -5 b(s)21 b(embryonic)0 5418 y(Unix.)43 b(Lik)o(e)26 b(Unix,)h(C)h(w)o(as)f(designed)e(to)h(be)h(pleasant,)g (unconstraining,)d(and)i(\003e)o(xible.)43 b(Interest)26 b(in)g(these)h(tools)f(spread)g(at)p Black 1860 5872 a(4)p Black eop %%Page: 5 5 5 4 bop Black Black 0 983 a Ff(Bell)21 b(Labs,)f(and)f(the)o(y)g(got)h (a)g(boost)f(in)i(1971)d(when)h(Thompson)f(and)h(Ritchie)i(w)o(on)e(a)i (bid)e(to)h(produce)e(what)i(we')l(d)g(no)n(w)f(call)h(an)0 1083 y(of)n(\002ce)g(automation)e(system)i(for)g(internal)f(use)i (there.)j(But)d(Thompson)d(&)i(Ritchie)h(had)e(their)h(e)o(ye)g(on)g(a) h(bigger)d(prize.)0 1265 y(T)m(raditionally)-5 b(,)31 b(operating)f(systems)h(had)g(been)f(written)h(in)g(tight)g(assembler)g (to)g(e)o(xtract)g(the)g(absolute)f(highest)h(ef)n(\002cienc)o(y)0 1365 y(possible)d(out)h(of)f(their)g(host)h(machines.)49 b(Thompson)26 b(and)i(Ritchie)h(were)g(among)e(the)h(\002rst)i(to)f (realize)f(that)h(hardw)o(are)e(and)0 1465 y(compiler)18 b(technology)g(had)h(become)f(good)g(enough)g(that)i(an)f(entire)h (operating)d(system)j(could)f(be)h(written)f(in)h(C,)g(and)f(by)h(1978) 0 1564 y(the)g(whole)g(en)m(vironment)d(had)j(been)f(successfully)h (ported)f(to)h(se)n(v)o(eral)f(machines)h(of)g(dif)n(ferent)e(types.)0 1747 y(This)23 b(had)g(ne)n(v)o(er)f(been)h(done)f(before,)h(and)f(the) i(implications)e(were)h(enormous.)32 b(If)24 b(Unix)f(could)f(present)h (the)g(same)g(f)o(ace,)h(the)0 1846 y(same)e(capabilities,)g(on)f (machines)g(of)g(man)o(y)g(dif)n(ferent)f(types,)i(it)g(could)f(serv)o (e)g(as)h(a)h(common)d(softw)o(are)h(en)m(vironment)d(for)k(all)0 1946 y(of)k(them.)43 b(No)26 b(longer)f(w)o(ould)g(users)i(ha)n(v)o(e)f (to)g(pay)g(for)f(complete)g(ne)n(w)h(designs)g(of)g(softw)o(are)g(e)n (v)o(ery)f(time)h(a)h(machine)e(went)0 2046 y(obsolete.)e(Hack)o(ers)17 b(could)f(carry)h(around)e(softw)o(are)i(toolkits)g(between)f(dif)n (ferent)g(machines,)h(rather)f(than)h(ha)n(ving)f(to)h(re-in)m(v)o(ent) 0 2145 y(the)j(equi)n(v)n(alents)f(of)h(\002re)g(and)g(the)g(wheel)g(e) n(v)o(ery)f(time.)0 2328 y(Besides)31 b(portability)-5 b(,)31 b(Unix)g(and)f(C)h(had)f(some)g(other)g(important)f(strengths.) 55 b(Both)31 b(were)g(constructed)d(from)i(a)h(\223K)n(eep)f(It)0 2428 y(Simple,)22 b(Stupid\224)f(philosophy)-5 b(.)26 b(A)c(programmer)d(could)h(easily)i(hold)f(the)h(entire)f(logical)g (structure)g(of)h(C)g(in)g(his)g(head)f(\(unlik)o(e)0 2527 y(most)f(other)f(languages)f(before)g(or)i(since\))f(rather)g (than)g(needing)f(to)i(refer)f(constantly)g(to)g(manuals;)h(and)f(Unix) g(w)o(as)i(structured)0 2627 y(as)g(a)g(\003e)o(xible)e(toolkit)h(of)g (simple)g(programs)e(designed)h(to)h(combine)f(with)h(each)g(other)g (in)g(useful)g(w)o(ays.)0 2810 y(The)28 b(combination)d(pro)o(v)o(ed)h (to)i(be)f(adaptable)g(to)h(a)g(v)o(ery)f(wide)h(range)f(of)g (computing)f(tasks,)k(including)c(man)o(y)h(completely)0 2909 y(unanticipated)e(by)h(the)h(designers.)45 b(It)27 b(spread)f(v)o(ery)g(rapidly)f(within)i(A)-9 b(T&T)j(,)26 b(in)h(spite)h(of)e(the)h(lack)g(of)g(an)o(y)f(formal)g(support)0 3009 y(program)17 b(for)i(it.)25 b(By)19 b(1980)f(it)i(had)f(spread)f (to)h(a)h(lar)o(ge)e(number)g(of)g(uni)n(v)o(ersity)g(and)g(research)h (computing)e(sites,)j(and)f(thousands)0 3108 y(of)h(hack)o(ers)f (considered)g(it)i(home.)0 3291 y(The)k(w)o(orkhorse)f(machines)h(of)h (the)f(early)g(Unix)h(culture)f(were)g(the)h(PDP-11)f(and)g(its)i (descendant,)e(the)h(V)-11 b(AX.)26 b(But)g(because)0 3391 y(of)e(Unix')-5 b(s)24 b(portability)-5 b(,)23 b(it)i(ran)f (essentially)g(unaltered)f(on)g(a)i(wider)f(range)f(of)h(machines)f (than)h(one)f(could)h(\002nd)g(on)f(the)i(entire)0 3490 y(ARP)-8 b(Anet.)26 b(And)19 b(nobody)f(used)i(assembler;)g(C)h (programs)d(were)j(readily)e(portable)g(among)f(all)j(these)g (machines.)0 3673 y(Unix)16 b(e)n(v)o(en)f(had)g(its)i(o)n(wn)f(netw)o (orking,)e(of)i(sorts\227UUCP:)h(lo)n(w-speed)d(and)i(unreliable,)f(b)n (ut)h(cheap.)23 b(An)o(y)15 b(tw)o(o)h(Unix)g(machines)0 3773 y(could)j(e)o(xchange)f(point-to-point)f(electronic)i(mail)h(o)o (v)o(er)f(ordinary)f(phone)h(lines;)h(this)h(capability)e(w)o(as)i(b)n (uilt)f(into)g(the)g(system,)0 3872 y(not)35 b(an)h(optional)e(e)o (xtra.)70 b(In)36 b(1980)e(the)h(\002rst)i(Usenet)e(sites)i(be)o(gan)d (e)o(xchanging)e(broadcast)j(ne)n(ws,)k(forming)34 b(a)i(gigantic)0 3972 y(distrib)n(uted)27 b(b)n(ulletin)h(board)f(that)h(w)o(ould)g (quickly)f(gro)n(w)g(bigger)g(than)h(ARP)-8 b(Anet.)50 b(Unix)27 b(sites)j(be)o(gan)c(to)j(form)e(a)h(netw)o(ork)0 4071 y(nation)19 b(of)h(their)g(o)n(wn)g(around)e(Usenet.)0 4254 y(A)27 b(fe)n(w)g(Unix)f(sites)h(were)g(on)f(the)g(ARP)-8 b(Anet)28 b(themselv)o(es.)43 b(The)26 b(PDP-10)g(and)g(Unix/Usenet)g (cultures)g(be)o(gan)f(to)h(meet)h(and)0 4354 y(mingle)i(at)i(the)f (edges,)i(b)n(ut)e(the)o(y)f(didn')o(t)f(mix)i(v)o(ery)f(well)h(at)h (\002rst.)55 b(The)30 b(PDP-10)f(hack)o(ers)h(tended)f(to)h(consider)f (the)h(Unix)0 4453 y(cro)n(wd)e(a)i(b)n(unch)d(of)i(upstarts,)i(using)e (tools)g(that)g(look)o(ed)f(ridiculously)f(primiti)n(v)o(e)h(when)g (set)i(against)e(the)i(baroque,)f(lo)o(v)o(ely)0 4553 y(comple)o(xities)19 b(of)h(LISP)g(and)g(ITS.)g(\223Stone)g(kni)n(v)o (es)f(and)g(bearskins!\224)24 b(the)o(y)c(muttered.)0 4736 y(And)26 b(there)f(w)o(as)i(yet)f(a)g(third)g(current)f(\003o)n (wing.)41 b(The)26 b(\002rst)h(personal)d(computer)h(had)g(been)g(mark) o(eted)g(in)h(1975;)i(Apple)d(w)o(as)0 4835 y(founded)c(in)i(1977,)g (and)f(adv)n(ances)g(came)h(with)h(almost)f(unbelie)n(v)n(able)e (rapidity)h(in)i(the)f(years)g(that)g(follo)n(wed.)33 b(The)23 b(potential)0 4935 y(of)f(microcomputers)d(w)o(as)24 b(clear)m(,)e(and)g(attracted)f(yet)i(another)e(generation)f(of)i (bright)f(young)g(hack)o(ers.)30 b Fa(TheirTheir)23 b Ff(language)0 5034 y(w)o(as)e(B)m(ASIC,)g(so)g(primiti)n(v)o(e)e(that)h (PDP-10)g(partisans)f(and)h(Unix)g(a\002cionados)f(both)g(considered)g (it)h(beneath)f(contempt.)-399 5318 y Fb(The)38 b(End)e(of)i(Elder)e (Da)m(ys)p Black 1860 5872 a Ff(5)p Black eop %%Page: 6 6 6 5 bop Black Black 0 983 a Ff(So)18 b(matters)g(stood)f(in)h(1980;)f (three)h(cultures,)f(o)o(v)o(erlapping)e(at)j(the)g(edges)f(b)n(ut)h (clustered)f(around)f(v)o(ery)h(dif)n(ferent)f(technologies.)0 1083 y(The)27 b(ARP)-8 b(Anet/PDP-10)28 b(culture,)g(wedded)e(to)i (LISP)f(and)g(MA)m(CR)m(O)h(and)f(T)o(OPS-10)g(and)g(ITS)g(and)g(SAIL.) g(The)h(Unix)f(and)0 1182 y(C)33 b(cro)n(wd)e(with)h(their)g(PDP-11s)g (and)f(V)-11 b(AXen)32 b(and)f(pok)o(e)o(y)g(telephone)f(connections.) 59 b(And)31 b(an)h(anarchic)f(horde)g(of)h(early)0 1282 y(microcomputer)17 b(enthusiasts)j(bent)g(on)g(taking)f(computer)f(po)n (wer)h(to)i(the)f(people.)0 1465 y(Among)g(these,)i(the)f(ITS)h (culture)e(could)h(still)i(claim)e(pride)g(of)g(place.)28 b(But)22 b(stormclouds)e(were)i(gathering)d(o)o(v)o(er)h(the)h(Lab)m(.) 29 b(The)0 1564 y(PDP-10)d(technology)f(ITS)i(depended)d(on)j(w)o(as)g (aging,)h(and)e(the)h(Lab)g(itself)g(w)o(as)h(split)f(into)g(f)o (actions)f(by)h(the)g(\002rst)g(attempts)0 1664 y(to)j(commercialize)d (arti\002cial)j(intelligence.)52 b(Some)29 b(of)g(the)g(Lab')-5 b(s)30 b(\(and)e(SAIL)-8 b(')j(s)30 b(and)f(CMU')-5 b(s\))30 b(best)g(were)f(lured)g(a)o(w)o(ay)g(to)0 1763 y(high-paying)17 b(jobs)j(at)h(startup)f(companies.)0 1946 y(The)j(death)g(blo)n(w)f (came)h(in)h(1983,)e(when)h(DEC)h(cancelled)e(its)i(`Jupiter')e(follo)n (w)o(on)g(to)h(the)g(PDP-10)g(in)h(order)e(to)h(concentrate)0 2046 y(on)i(the)g(PDP-11)g(and)f(V)-11 b(AX)26 b(lines.)40 b(ITS)25 b(no)g(longer)f(had)h(a)g(future.)39 b(Because)26 b(it)g(w)o(asn')o(t)e(portable,)h(it)h(w)o(as)g(more)f(ef)n(fort)f (than)0 2145 y(an)o(yone)c(could)i(af)n(ford)e(to)j(mo)o(v)o(e)e(ITS)h (to)h(ne)n(w)f(hardw)o(are.)30 b(The)22 b(Berk)o(ele)o(y)f(v)n(ariant)g (of)i(Unix)e(running)g(on)h(a)g(V)-11 b(AX)23 b(became)e(the)0 2245 y(hacking)16 b(system)j Fa(par)e(e)n(xcellence)p Ff(,)h(and)g(an)o(yone)e(with)i(an)g(e)o(ye)f(on)h(the)g(future)e (could)h(see)i(that)f(microcomputers)d(were)j(gro)n(wing)0 2345 y(in)i(po)n(wer)f(so)i(rapidly)e(that)h(the)o(y)g(were)g(lik)o (ely)g(to)g(sweep)g(all)h(before)e(them.)0 2527 y(It')-5 b(s)21 b(around)c(this)k(time)f(that)g(Le)n(vy)f(wrote)g Fa(Hac)n(k)o(er)o(s)p Ff(.)26 b(One)20 b(of)f(his)h(prime)g(informants) e(w)o(as)i(Richard)g(M.)g(Stallman)f(\(in)m(v)o(entor)e(of)0 2627 y(Emacs\),)g(a)f(leading)g(\002gure)g(at)h(the)f(Lab)g(and)g(its)i (most)e(f)o(anatical)g(holdout)f(against)h(the)g(commercialization)e (of)i(Lab)g(technology)-5 b(.)0 2810 y(Stallman)36 b(\(who)e(is)j (usually)e(kno)n(wn)f(by)i(his)g(initials)g(and)g(login)f(name,)j (RMS\))f(went)e(on)h(to)f(form)g(the)h(Free)g(Softw)o(are)0 2909 y(F)o(oundation)24 b(and)i(dedicate)g(himself)g(to)h(producing)c (high-quality)h(free)i(softw)o(are.)44 b(Le)n(vy)25 b(eulogized)g(him)i (as)g(\223the)f(last)i(true)0 3009 y(hack)o(er\224,)19 b(a)h(description)f(which)h(happily)f(pro)o(v)o(ed)e(incorrect.)0 3191 y(Stallman')-5 b(s)20 b(grandest)f(scheme)h(neatly)g(epitomized)f (the)h(transition)f(hack)o(erdom)f(underwent)g(in)j(the)f(early)g (eighties\227in)g(1982)0 3291 y(he)j(be)o(gan)e(the)j(construction)d (of)i(an)g(entire)f(clone)h(of)g(Unix,)g(written)g(in)g(C)h(and)f(a)n (v)n(ailable)g(for)f(free.)33 b(His)24 b(project)f(w)o(as)h(kno)n(wn)0 3391 y(as)h(the)f(GNU)h(\(Gnu')-5 b(s)23 b(Not)i(Unix\))e(operating)f (system,)j(in)g(a)f(kind)g(of)f(recursi)n(v)o(e)g(acron)o(ym.)35 b(GNU)24 b(quickly)f(became)g(a)i(major)0 3490 y(focus)g(for)f(hack)o (er)h(acti)n(vity)-5 b(.)39 b(Thus,)26 b(the)g(spirit)f(and)g (tradition)g(of)g(ITS)g(w)o(as)h(preserv)o(ed)e(as)i(an)f(important)f (part)h(of)g(the)g(ne)n(wer)m(,)0 3590 y(Unix)20 b(and)g(V)-11 b(AX-centered)19 b(hack)o(er)h(culture.)25 b(Stallman')-5 b(s)21 b(design)f(\002nished)g(what)g(Berk)o(ele)o(y)g(had)g(started,)g (fusing)g(the)h(remains)0 3690 y(of)f(the)g(PDP-10)g(hack)o(er)f (culture)g(with)i(the)f(Unix)g(cro)n(wd.)0 3872 y(Indeed,)c(for)h(more) f(than)h(a)h(decade)e(after)h(its)h(founding)d(RMS')-5 b(s)19 b(Free)e(Softw)o(are)g(F)o(oundation)e(w)o(ould)h(lar)o(gely)g (de\002ne)h(the)g(public)0 3972 y(ideology)f(of)h(the)h(hack)o(er)e (culture,)h(and)g(Stallman)g(himself)h(w)o(ould)e(be)i(the)f(only)g (credible)g(claimant)g(to)h(leadership)e(of)h(the)h(tribe.)0 4154 y(It)29 b(w)o(as)g(also)g(around)e(1982\22683)e(that)k(microchip)e (and)h(local-area)f(netw)o(ork)g(technology)f(be)o(gan)h(to)i(ha)n(v)o (e)e(a)i(serious)g(impact)0 4254 y(on)24 b(hack)o(erdom.)36 b(Ethernet)23 b(and)h(the)h(Motorola)e(68000)f(microchip)h(made)h(a)h (potentially)e(potent)h(combination,)f(and)h(se)n(v)o(eral)0 4354 y(dif)n(ferent)19 b(startups)h(had)f(been)h(formed)e(to)j(b)n (uild)e(the)i(\002rst)f(generation)f(of)h(what)g(we)g(no)n(w)g(call)h (w)o(orkstations.)0 4536 y(In)g(1982,)f(a)h(group)e(of)i(Unix)g(hack)o (ers)f(from)g(Stanford)g(and)h(Berk)o(ele)o(y)f(founded)f(Sun)h (Microsystems)h(on)g(the)g(belief)f(that)i(Unix)0 4636 y(running)g(on)h(relati)n(v)o(ely)g(ine)o(xpensi)n(v)o(e)f(68000-based) f(hardw)o(are)h(w)o(ould)h(pro)o(v)o(e)g(a)h(winning)f(combination)e (for)j(a)g(wide)g(v)n(ariety)0 4736 y(of)g(applications.)36 b(The)o(y)23 b(were)i(right,)f(and)g(their)g(vision)g(set)h(the)f (pattern)g(for)f(an)h(entire)g(industry)-5 b(.)36 b(While)25 b(still)g(priced)f(out)f(of)0 4835 y(reach)e(of)h(most)g(indi)n (viduals,)f(w)o(orkstations)g(were)h(cheap)f(for)g(corporations)f(and)h (uni)n(v)o(ersities;)h(netw)o(orks)f(of)h(them)g(\(one)f(to)h(a)0 4935 y(user\))e(rapidly)f(replaced)g(the)h(older)f(V)-11 b(AXes)21 b(and)e(other)h(time-sharing)e(systems.)-399 5219 y Fb(The)38 b(Pr)m(oprietar)q(y-Unix)e(Era)0 5401 y Ff(By)17 b(1984,)e(when)g(Ma)i(Bell)g(di)n(v)o(ested)e(and)h(Unix)f (became)h(a)g(supported)e(A)-9 b(T&T)16 b(product)e(for)i(the)g (\002rst)h(time,)f(the)h(most)f(important)0 5501 y(f)o(ault)31 b(line)f(in)h(hack)o(erdom)e(w)o(as)i(between)f(a)h(relati)n(v)o(ely)f (cohesi)n(v)o(e)f(\223netw)o(ork)h(nation\224)f(centered)h(around)f (the)h(Internet)g(and)p Black 1860 5872 a(6)p Black eop %%Page: 7 7 7 6 bop Black Black 0 983 a Ff(Usenet)25 b(\(and)e(mostly)h(using)g (minicomputer)n(-)e(or)j(w)o(orkstation-class)e(machines)h(running)e (Unix\),)j(and)e(a)i(v)n(ast)g(disconnected)0 1083 y(hinterland)18 b(of)i(microcomputer)d(enthusiasts.)0 1265 y(It)34 b(w)o(as)g(also)f (around)e(this)j(time)g(that)f(serious)g(cracking)f(episodes)g(were)h (\002rst)h(co)o(v)o(ered)d(in)j(the)f(mainstream)f(press\227and)0 1365 y(journalists)c(be)o(gan)f(to)h(misapply)g(the)g(term)h(\223hack)o (er\224)e(to)i(refer)e(to)i(computer)e(v)n(andals,)i(an)g(ab)n(use)f (which)g(sadly)g(continues)0 1465 y(to)20 b(this)h(day)-5 b(.)0 1647 y(The)25 b(w)o(orkstation-class)f(machines)g(b)n(uilt)h(by)g (Sun)g(and)g(others)f(opened)g(up)g(ne)n(w)h(w)o(orlds)g(for)g(hack)o (ers.)39 b(The)o(y)24 b(were)h(b)n(uilt)g(to)0 1747 y(do)j (high-performance)23 b(graphics)k(and)g(pass)h(around)e(shared)i(data)f (o)o(v)o(er)g(a)h(netw)o(ork.)47 b(During)27 b(the)h(1980s)f(hack)o (erdom)e(w)o(as)0 1846 y(preoccupied)20 b(by)i(the)h(softw)o(are)f(and) h(tool-b)n(uilding)d(challenges)i(of)g(getting)g(the)h(most)f(use)h (out)g(of)f(these)h(features.)32 b(Berk)o(ele)o(y)0 1946 y(Unix)21 b(de)n(v)o(eloped)d(b)n(uilt-in)j(support)e(for)i(the)g(ARP) -8 b(Anet)22 b(protocols,)d(which)i(of)n(fered)e(a)i(solution)f(to)i (the)f(netw)o(orking)e(problems)0 2046 y(associated)h(with)g(UUCP')-5 b(s)22 b(slo)n(w)e(point-to-point)d(links)k(and)e(encouraged)f(further) g(gro)n(wth)h(of)h(the)g(Internet.)0 2228 y(There)28 b(were)g(se)n(v)o(eral)g(attempts)h(to)g(tame)f(w)o(orkstation)f (graphics.)49 b(The)29 b(one)f(that)h(pre)n(v)n(ailed)d(w)o(as)k(the)f (X)g(windo)n(w)e(system,)0 2328 y(de)n(v)o(eloped)18 b(at)j(MIT)f(with)h(contrib)n(utions)d(from)i(hundreds)e(of)i(indi)n (viduals)f(at)i(dozens)f(of)g(companies.)k(A)d(critical)g(f)o(actor)f (in)g(its)0 2428 y(success)25 b(w)o(as)h(that)f(the)g(X)g(de)n(v)o (elopers)e(were)i(willing)g(to)g(gi)n(v)o(e)f(the)h(sources)f(a)o(w)o (ay)h(for)f(free)g(in)h(accordance)e(with)i(the)g(hack)o(er)0 2527 y(ethic,)e(and)f(able)h(to)g(distrib)n(ute)f(them)g(o)o(v)o(er)f (the)i(Internet.)31 b(X')-5 b(s)24 b(victory)d(o)o(v)o(er)g (proprietary)g(graphics)g(systems)i(\(including)e(one)0 2627 y(of)n(fered)j(by)h(Sun)g(itself\))h(w)o(as)h(an)e(important)f (harbinger)f(of)j(changes)e(which,)i(a)g(fe)n(w)g(years)f(later)m(,)i (w)o(ould)e(profoundly)d(af)n(fect)0 2726 y(Unix)e(as)h(a)f(whole.)0 2909 y(There)j(w)o(as)i(a)f(bit)g(of)g(f)o(actional)f(spleen)h(still)h (v)o(ented)d(occasionally)h(in)h(the)g(ITS/Unix)f(ri)n(v)n(alry)g (\(mostly)g(from)g(the)h(e)o(x-ITSers')0 3009 y(side\).)h(But)20 b(the)g(last)h(ITS)f(machine)e(shut)i(do)n(wn)f(for)g(good)f(in)i (1990;)f(the)h(zealots)g(no)f(longer)g(had)g(a)h(place)g(to)g(stand)f (and)h(mostly)0 3108 y(assimilated)g(to)h(the)f(Unix)g(culture)f(with)h (v)n(arious)f(de)o(grees)h(of)f(grumbling.)0 3291 y(W)m(ithin)e(netw)o (ork)o(ed)f(hack)o(erdom)f(itself,)j(the)f(big)g(ri)n(v)n(alry)g(of)g (the)g(1980s)f(w)o(as)i(between)f(f)o(ans)g(of)g(Berk)o(ele)o(y)g(Unix) g(and)g(the)g(A)-9 b(T&T)0 3391 y(v)o(ersions.)23 b(Occasionally)15 b(you)h(can)g(still)i(\002nd)e(copies)g(of)h(a)g(poster)f(from)f(that)i (period,)e(sho)n(wing)h(a)h(cartoon)o(y)d(X-wing)i(\002ghter)g(out)0 3490 y(of)23 b(the)h(\223Star)f(W)-7 b(ars\224)25 b(mo)o(vies)d (streaking)g(a)o(w)o(ay)i(from)e(an)h(e)o(xploding)e(Death)i(Star)h (patterned)e(on)h(the)g(A)-9 b(T&T)23 b(logo.)34 b(Berk)o(ele)o(y)0 3590 y(hack)o(ers)24 b(lik)o(ed)h(to)h(see)f(themselv)o(es)g(as)h (rebels)f(against)f(soulless)i(corporate)d(empires.)39 b(A)-9 b(T&T)25 b(Unix)f(ne)n(v)o(er)g(caught)g(up)h(with)0 3690 y(BSD/Sun)f(in)g(the)f(mark)o(etplace,)g(b)n(ut)h(it)g(w)o(on)f (the)h(standards)f(w)o(ars.)35 b(By)25 b(1990,)d(A)-9 b(T&T)23 b(and)g(BSD)i(v)o(ersions)e(were)g(becoming)0 3789 y(harder)c(to)h(tell)h(apart,)e(ha)n(ving)h(adopted)e(man)o(y)h (of)h(each)g(other')-5 b(s)20 b(inno)o(v)n(ations.)0 3972 y(After)g(1987,)f(the)i(w)o(orkstation)e(technology)f(of)i(the)h (pre)n(vious)e(decade)g(be)o(gan)g(to)h(look)g(distinctly)g(threatened) f(by)h(ne)n(wer)m(,)g(lo)n(w-)0 4071 y(cost)31 b(and)f (high-performance)c(personal)k(computers)f(based)h(on)h(the)f(Intel)h (386)f(chip)g(and)g(its)i(descendants.)55 b(F)o(or)31 b(the)f(\002rst)0 4171 y(time,)f(indi)n(vidual)c(hack)o(ers)h(could)g (af)n(ford)g(to)h(ha)n(v)o(e)f(home)h(machines)f(comparable)f(in)i(po)n (wer)f(and)g(storage)h(capacity)f(to)h(the)0 4271 y(minicomputers)i(of) h(ten)h(years)g(earlier\227Unix)f(engines)g(capable)g(of)h(supporting)d (a)k(full)f(de)n(v)o(elopment)d(en)m(vironment)g(and)0 4370 y(talking)19 b(to)i(the)f(Internet.)0 4553 y(The)33 b(MS-DOS)g(w)o(orld)f(remained)g(blissfully)g(ignorant)f(of)i(all)h (this.)63 b(Though)31 b(those)i(early)f(microcomputer)e(enthusiasts)0 4653 y(quickly)19 b(e)o(xpanded)e(to)j(a)h(population)c(of)j(DOS)h(and) e(Mac)h(hack)o(ers)f(orders)g(an)h(magnitude)e(greater)h(than)h(that)g (of)g(the)g(\223netw)o(ork)0 4752 y(nation\224)27 b(culture,)j(the)o(y) d(ne)n(v)o(er)g(become)g(a)i(self-a)o(w)o(are)f(culture)f(themselv)o (es.)49 b(The)28 b(pace)g(of)g(change)f(w)o(as)i(so)g(f)o(ast)g(that)f (\002fty)0 4852 y(dif)n(ferent)22 b(technical)h(cultures)g(gre)n(w)g (and)g(died)g(as)h(rapidly)f(as)h(may\003ies,)g(ne)n(v)o(er)f(achie)n (ving)f(quite)h(the)g(stability)h(necessary)f(to)0 4951 y(de)n(v)o(elop)h(a)i(common)e(tradition)h(of)g(jar)o(gon,)g(folklore,) h(and)f(mythic)g(history)-5 b(.)41 b(The)25 b(absence)g(of)h(a)g (really)f(perv)n(asi)n(v)o(e)f(netw)o(ork)0 5051 y(comparable)18 b(to)i(UUCP)i(or)d(Internet)g(pre)n(v)o(ented)f(them)i(from)f(becoming) f(a)j(netw)o(ork)e(nation)g(themselv)o(es.)0 5234 y(W)m(idespread)25 b(access)i(to)f(commercial)f(online)g(services)h(lik)o(e)g(CompuServ)o (e)e(and)i(GEnie)g(w)o(as)h(be)o(ginning)c(to)j(tak)o(e)h(hold,)f(b)n (ut)0 5333 y(the)19 b(f)o(act)h(that)g(non-Unix)d(operating)g(systems)j (don')o(t)e(come)h(b)n(undled)f(with)h(de)n(v)o(elopment)e(tools)i (meant)g(that)g(v)o(ery)g(little)h(source)0 5433 y(w)o(as)h(passed)f(o) o(v)o(er)f(them.)24 b(Thus,)c(no)g(tradition)f(of)h(collaborati)n(v)o (e)e(hacking)g(de)n(v)o(eloped.)p Black 1860 5870 a(7)p Black eop %%Page: 8 8 8 7 bop Black Black 0 983 a Ff(The)27 b(mainstream)f(of)h(hack)o (erdom,)f(\(dis\)or)o(ganized)d(around)i(the)i(Internet)f(and)h(by)g (no)n(w)f(lar)o(gely)g(identi\002ed)g(with)h(the)h(Unix)0 1083 y(technical)18 b(culture,)g(didn')o(t)g(care)g(about)g(the)h (commercial)f(services.)24 b(These)19 b(hack)o(ers)f(w)o(anted)h (better)f(tools)h(and)g(more)f(Internet,)0 1182 y(and)i(cheap)f(32-bit) g(PCs)j(promised)c(to)j(put)f(both)f(in)h(e)n(v)o(eryone')-5 b(s)18 b(reach.)0 1365 y(But)29 b(where)f(w)o(as)h(the)f(softw)o(are?) 49 b(Commercial)28 b(Unix)o(es)g(remained)e(e)o(xpensi)n(v)o(e,)j(in)f (the)g(multiple-kilob)n(uck)e(range.)48 b(In)28 b(the)0 1465 y(early)17 b(1990s)g(se)n(v)o(eral)g(companies)f(made)i(a)g(go)f (at)h(selling)g(A)-9 b(T&T)17 b(or)h(BSD)g(Unix)g(ports)f(for)g (PC-class)i(machines.)k(Success)18 b(w)o(as)0 1564 y(elusi)n(v)o(e,)25 b(prices)g(didn')o(t)e(come)i(do)n(wn)e(much,)i(and)g(\(w)o(orst)f(of)h (all\))g(you)f(didn')o(t)f(get)i(modi\002able)f(and)g(redistrib)n (utable)g(sources)0 1664 y(with)c(your)f(operating)g(system.)25 b(The)20 b(traditional)f(softw)o(are-b)n(usiness)g(model)g(w)o(asn')o (t)h(gi)n(ving)f(hack)o(ers)g(what)h(the)o(y)g(w)o(anted.)0 1846 y(Neither)j(w)o(as)g(the)h(Free)f(Softw)o(are)f(F)o(oundation.)31 b(The)23 b(de)n(v)o(elopment)d(of)j(HURD,)g(RMS')-5 b(s)25 b(long-promised)20 b(free)i(Unix)h(k)o(ernel)0 1946 y(for)g(hack)o (ers,)h(got)f(stalled)h(for)f(years)g(and)g(f)o(ailed)h(to)g(produce)d (an)o(ything)h(lik)o(e)i(a)g(usable)f(k)o(ernel)g(until)h(1996)e (\(though)f(by)j(1990)0 2046 y(FSF)d(supplied)e(almost)i(all)f(the)h (other)e(dif)n(\002cult)g(parts)i(of)f(a)g(Unix-lik)o(e)f(operating)g (system\).)0 2228 y(W)-7 b(orse,)37 b(by)c(the)g(early)f(1990s)h(it)g (w)o(as)i(becoming)c(clear)i(that)g(ten)g(years)g(of)g(ef)n(fort)f(to)h (commercialize)f(proprietary)f(Unix)0 2328 y(w)o(as)g(ending)e(in)i(f)o (ailure.)56 b(Unix')-5 b(s)30 b(promise)g(of)g(cross-platform)e (portability)h(got)h(lost)i(in)e(bick)o(ering)f(among)g(half)h(a)h (dozen)0 2428 y(proprietary)17 b(Unix)i(v)o(ersions.)24 b(The)19 b(proprietary-Unix)d(players)j(pro)o(v)o(ed)e(so)k(ponderous,) 16 b(so)k(blind,)f(and)g(so)h(inept)g(at)g(mark)o(eting)0 2527 y(that)26 b(Microsoft)e(w)o(as)j(able)e(to)h(grab)e(a)o(w)o(ay)i (a)g(lar)o(ge)e(part)h(of)h(their)f(mark)o(et)g(with)h(the)f (shockingly)f(inferior)g(technology)f(of)i(its)0 2627 y(W)m(indo)n(ws)20 b(operating)e(system.)0 2810 y(In)k(early)f(1993,)g (a)i(hostile)f(observ)o(er)e(might)i(ha)n(v)o(e)f(had)h(grounds)e(for)h (thinking)g(that)h(the)g(Unix)g(story)g(w)o(as)h(almost)f(played)f (out,)0 2909 y(and)g(with)h(it)h(the)e(fortunes)g(of)g(the)h(hack)o(er) f(tribe.)29 b(And)22 b(there)f(w)o(as)i(no)e(shortage)g(of)g(hostile)h (observ)o(ers)e(in)i(the)g(computer)e(trade)0 3009 y(press,)26 b(man)o(y)d(of)i(whom)f(had)g(been)g(ritually)g(predicting)f(the)h (imminent)g(death)g(of)h(Unix)f(at)h(six-month)e(interv)n(als)h(e)n(v)o (er)g(since)0 3108 y(the)c(late)h(1970s.)0 3291 y(In)26 b(those)g(days)f(it)i(w)o(as)g(con)m(v)o(entional)c(wisdom)i(that)h (the)g(era)g(of)g(indi)n(vidual)e(techno-heroism)f(w)o(as)k(o)o(v)o(er) m(,)f(that)g(the)g(softw)o(are)0 3391 y(industry)19 b(and)h(the)h (nascent)f(Internet)g(w)o(ould)g(increasingly)f(be)h(dominated)f(by)h (colossi)h(lik)o(e)g(Microsoft.)k(The)c(\002rst)g(generation)0 3490 y(of)c(Unix)h(hack)o(ers)f(seemed)g(to)h(be)f(getting)g(old)g(and) h(tired)f(\(Berk)o(ele)o(y')-5 b(s)17 b(Computer)f(Science)i(Research)f (group)f(ran)h(out)h(of)f(steam)0 3590 y(and)j(w)o(ould)f(lose)i(its)g (funding)d(in)i(1994\).)j(It)e(w)o(as)g(a)g(depressing)d(time.)0 3773 y(F)o(ortunately)-5 b(,)20 b(there)h(had)g(been)g(things)g(going)f (on)h(out)h(of)f(sight)h(of)f(the)h(trade)f(press,)h(and)f(out)g(of)h (sight)f(e)n(v)o(en)g(of)g(most)h(hack)o(ers,)0 3872 y(that)27 b(w)o(ould)f(produce)f(startlingly)h(positi)n(v)o(e)h(de)n(v) o(elopments)d(in)j(later)g(1993)f(and)g(1994.)44 b(Ev)o(entually)-5 b(,)26 b(these)h(w)o(ould)f(tak)o(e)h(the)0 3972 y(hack)o(er)19 b(culture)g(in)i(a)f(whole)g(ne)n(w)g(direction)f(and)h(to)g (undreamed-of)c(successes.)-399 4256 y Fb(The)38 b(Earl)n(y)d(Free)i (Unix)o(es)0 4438 y Ff(Into)17 b(the)g(gap)g(left)h(by)f(the)g(Free)h (Softw)o(are)f(F)o(oundation')-5 b(s)15 b(uncompleted)g(HURD)j(had)f (stepped)g(a)h(Helsinki)g(Uni)n(v)o(ersity)e(student)0 4538 y(named)i(Linus)i(T)-7 b(orv)n(alds.)23 b(In)c(1991)f(he)i(be)o (gan)d(de)n(v)o(eloping)g(a)j(free)f(Unix)g(k)o(ernel)g(for)g(386)f (machines)h(using)g(the)g(Free)h(Softw)o(are)0 4638 y(F)o(oundation')-5 b(s)29 b(toolkit.)58 b(His)32 b(initial,)i(rapid)c(success)i(attracted) e(man)o(y)g(Internet)g(hack)o(ers)h(to)g(help)g(him)g(de)n(v)o(elop)e (Linux,)k(a)0 4737 y(full-featured)18 b(Unix)h(with)i(entirely)e(free)h (and)g(re-distrib)n(utable)e(sources.)0 4920 y(Linux)c(w)o(as)i(not)f (without)g(competitors.)22 b(In)15 b(1991,)g(contemporaneously)c(with)k (Linus)g(T)-7 b(orv)n(alds')i(s)15 b(early)g(e)o(xperiments,)f(W)m (illiam)0 5020 y(and)21 b(L)-5 b(ynne)21 b(Jolitz)h(were)f(e)o (xperimentally)e(porting)h(the)i(BSD)g(Unix)f(sources)h(to)f(the)h (386.)28 b(Most)22 b(observ)o(ers)e(comparing)f(BSD)0 5119 y(technology)14 b(with)j(Linus')-5 b(s)17 b(crude)e(early)h(ef)n (forts)g(e)o(xpected)f(that)i(BSD)h(ports)e(w)o(ould)g(become)f(the)i (most)f(important)f(free)i(Unix)o(es)0 5219 y(on)j(the)g(PC.)0 5401 y(The)i(most)g(important)f(feature)g(of)h(Linux,)g(ho)n(we)n(v)o (er)m(,)e(w)o(as)j(not)f(technical)g(b)n(ut)g(sociological.)30 b(Until)23 b(the)f(Linux)f(de)n(v)o(elopment,)0 5501 y(e)n(v)o(eryone)33 b(belie)n(v)o(ed)h(that)h(an)o(y)g(softw)o(are)g (as)h(comple)o(x)d(as)j(an)g(operating)d(system)j(had)f(to)g(be)g(de)n (v)o(eloped)e(in)j(a)g(carefully)p Black 1860 5872 a(8)p Black eop %%Page: 9 9 9 8 bop Black Black 0 983 a Ff(coordinated)23 b(w)o(ay)k(by)e(a)h (relati)n(v)o(ely)f(small,)j(tightly-knit)c(group)g(of)i(people.)41 b(This)26 b(model)f(w)o(as)i(and)f(still)h(is)g(typical)e(of)h(both)0 1083 y(commercial)d(softw)o(are)h(and)f(the)i(great)e(free-softw)o(are) g(cathedrals)g(b)n(uilt)i(by)e(the)i(Free)f(Softw)o(are)g(F)o (oundation)e(in)i(the)g(1980s;)0 1182 y(also)d(of)e(the)i (freeBSD/netBSD/OpenBSD)e(projects)h(that)g(spun)g(of)n(f)f(from)g(the) i(Jolitzes')f(original)f(386BSD)h(port.)0 1365 y(Linux)27 b(e)n(v)n(olv)o(ed)g(in)i(a)g(completely)e(dif)n(ferent)f(w)o(ay)-5 b(.)50 b(From)28 b(nearly)f(the)i(be)o(ginning,)e(it)i(w)o(as)h(rather) d(casually)h(hack)o(ed)g(on)g(by)0 1465 y(huge)17 b(numbers)g(of)h(v)n (olunteers)f(coordinating)e(only)j(through)e(the)i(Internet.)23 b(Quality)18 b(w)o(as)h(maintained)e(not)h(by)f(rigid)h(standards)0 1564 y(or)25 b(autocrac)o(y)f(b)n(ut)i(by)f(the)h(nai)n(v)o(ely)e (simple)i(strate)o(gy)f(of)g(releasing)g(e)n(v)o(ery)g(week)g(and)g (getting)g(feedback)f(from)h(hundreds)e(of)0 1664 y(users)e(within)g (days,)g(creating)f(a)i(sort)f(of)g(rapid)f(Darwinian)h(selection)f(on) h(the)g(mutations)g(introduced)d(by)j(de)n(v)o(elopers.)26 b(T)-7 b(o)21 b(the)0 1763 y(amazement)e(of)h(almost)g(e)n(v)o(eryone,) d(this)k(w)o(ork)o(ed)e(quite)h(well.)0 1946 y(By)25 b(late)h(1993)d(Linux)h(could)g(compete)g(on)h(stability)g(and)f (reliability)h(with)g(man)o(y)f(commercial)f(Unix)o(es,)j(and)e(hosted) g(v)n(astly)0 2046 y(more)d(softw)o(are.)28 b(It)22 b(w)o(as)g(e)n(v)o (en)e(be)o(ginning)f(to)j(attract)f(ports)g(of)g(commercial)f (applications)g(softw)o(are.)29 b(One)21 b(indirect)g(ef)n(fect)f(of)0 2145 y(this)25 b(de)n(v)o(elopment)d(w)o(as)j(to)g(kill)g(of)n(f)f (most)h(of)f(the)h(smaller)f(proprietary)e(Unix)j(v)o (endors\227without)c(de)n(v)o(elopers)i(and)h(hack)o(ers)0 2245 y(to)h(sell)h(to,)g(the)o(y)e(folded.)39 b(One)24 b(of)h(the)g(fe)n(w)g(survi)n(v)n(ors,)g(BSDI)h(\(Berk)o(ele)o(y)e (Systems)h(Design,)h(Incorporated\),)c(\003ourished)i(by)0 2345 y(of)n(fering)18 b(full)i(sources)g(with)g(its)h(BSD-based)f(Unix) g(and)g(culti)n(v)n(ating)f(close)h(ties)h(with)f(the)h(hack)o(er)e (community)-5 b(.)0 2527 y(These)20 b(de)n(v)o(elopments)e(were)j(not)f (much)f(remark)o(ed)g(on)h(at)h(the)g(time)f(e)n(v)o(en)g(within)g(the) h(hack)o(er)e(culture,)h(and)g(not)g(at)h(all)g(outside)0 2627 y(it.)32 b(The)22 b(hack)o(er)g(culture,)f(defying)g(repeated)g (predictions)g(of)h(its)h(demise,)g(w)o(as)g(just)g(be)o(ginning)d(to)i (remak)o(e)g(the)g(commercial-)0 2726 y(softw)o(are)e(w)o(orld)f(in)i (its)g(o)n(wn)f(image.)k(It)c(w)o(ould)g(be)g(\002)n(v)o(e)g(more)f (years,)h(ho)n(we)n(v)o(er)m(,)e(before)h(this)h(trend)g(became)f(ob)o (vious.)-399 3010 y Fb(The)38 b(Great)e(W)-5 b(eb)38 b(Explosion)0 3193 y Ff(The)22 b(early)g(gro)n(wth)f(of)h(Linux)g (syner)o(gized)e(with)i(another)f(phenomenon:)26 b(the)d(public)e (disco)o(v)o(ery)g(of)h(the)g(Internet.)31 b(The)22 b(early)0 3293 y(1990s)k(also)h(sa)o(w)h(the)f(be)o(ginnings)e(of)i(a)g (\003ourishing)f(Internet-pro)o(vider)c(industry)-5 b(,)27 b(selling)g(connecti)n(vity)e(to)i(the)h(public)e(for)0 3392 y(a)32 b(fe)n(w)f(dollars)g(a)g(month.)57 b(F)o(ollo)n(wing)30 b(the)h(in)m(v)o(ention)e(of)i(the)g(W)-7 b(orld)32 b(W)m(ide)f(W)-7 b(eb,)34 b(the)e(Internet')-5 b(s)30 b(already)g(rapid)h(gro)n(wth)0 3492 y(accelerated)19 b(to)h(a)h(breakneck)d(pace.)0 3675 y(By)25 b(1994,)f(the)h(year)f(Berk)o(ele)o(y')-5 b(s)24 b(Unix)h(de)n(v)o(elopment)c(group)i(formally)g(shut)i(do)n(wn,) g(se)n(v)o(eral)f(dif)n(ferent)f(free)h(Unix)g(v)o(ersions)0 3774 y(\(Linux)h(and)h(the)g(descendants)f(of)h(386BSD\))g(serv)o(ed)f (as)i(the)g(major)e(focal)h(points)g(of)g(hacking)f(acti)n(vity)-5 b(.)43 b(Linux)25 b(w)o(as)i(being)0 3874 y(distrib)n(uted)20 b(commercially)f(on)h(CD-R)m(OM)h(and)g(selling)f(lik)o(e)h(hotcak)o (es.)26 b(By)c(the)e(end)h(of)f(1995,)g(major)g(computer)f(companies)0 3973 y(were)36 b(be)o(ginning)e(to)j(tak)o(e)f(out)h(glossy)f(adv)o (ertisements)f(celebrating)g(the)h(Internet-friendliness)d(of)j(their)h (softw)o(are)f(and)0 4073 y(hardw)o(are!)0 4256 y(In)27 b(the)g(late)h(1990s)e(the)i(central)f(acti)n(vities)g(of)g(hack)o (erdom)e(became)i(Linux)f(de)n(v)o(elopment)f(and)h(the)i (mainstreaming)d(of)i(the)0 4355 y(Internet.)h(The)21 b(W)-7 b(orld)22 b(W)m(ide)f(W)-7 b(eb)23 b(has)e(at)h(last)h(made)e (the)h(Internet)e(into)h(a)h(mass)g(medium,)f(and)g(man)o(y)f(of)h(the) h(hack)o(ers)f(of)g(the)0 4455 y(1980s)e(and)h(early)f(1990s)h (launched)e(Internet)h(Service)h(Pro)o(viders)e(selling)j(or)f(gi)n (ving)e(access)j(to)g(the)f(masses.)0 4638 y(The)k(mainstreaming)e(of)i (the)g(Internet)f(e)n(v)o(en)h(brought)e(the)i(hack)o(er)f(culture)h (the)g(be)o(ginnings)e(of)i(respectability)f(and)g(political)0 4737 y(clout.)j(In)21 b(1994)e(and)h(1995)g(hack)o(er)g(acti)n(vism)g (scuppered)f(the)i(Clipper)f(proposal)g(which)g(w)o(ould)g(ha)n(v)o(e)g (put)h(strong)f(encryption)0 4837 y(under)d(go)o(v)o(ernment)e (control.)23 b(In)18 b(1996)f(hack)o(ers)h(mobilized)f(a)h(broad)f (coalition)h(to)g(defeat)g(the)g(misnamed)f(\223Communications)0 4937 y(Decenc)o(y)i(Act\224)h(and)g(pre)n(v)o(ent)e(censorship)h(of)h (the)g(Internet.)0 5119 y(W)m(ith)c(the)h(CD)m(A)f(victory)-5 b(,)16 b(we)g(pass)h(out)f(of)g(history)f(into)h(current)f(e)n(v)o (ents.)23 b(W)-7 b(e)17 b(also)g(pass)g(into)f(a)g(period)f(in)h(which) g(your)f(historian)0 5219 y(\(rather)21 b(to)h(his)g(o)n(wn)g (surprise\))f(became)g(an)h(actor)g(rather)f(than)g(just)i(an)f(observ) o(er)-5 b(.)29 b(This)22 b(narrati)n(v)o(e)e(will)j(continue)d(in)j Fa(Re)o(veng)o(e)0 5318 y(of)d(the)h(Hac)n(k)o(er)o(sRe)o(veng)o(e)e (of)h(the)g(Hac)n(k)o(er)o(s)p Ff(.)p Black 1860 5872 a(9)p Black eop %%Page: 10 10 10 9 bop Black Black -399 997 a Fb(Bib)o(liograph)m(y)0 1180 y Fa([Le)o(vy][Le)o(vy])21 b Ff(Le)n(vy)-5 b(,)19 b(Ste)n(v)o(en;)g Fa(Hac)n(k)o(er)o(sHac)n(k)o(er)o(s)p Ff(,)i(Anchor/Doubleday)16 b(1984,)j(ISBN)i(0-385-19195-2.)0 1362 y Fa([Raymond][Raymond])13 b Ff(Raymond,)i(Eric)i(S.;)h Fa(The)e(Ne)o(w)h(Hac)n(k)o(er')m(s)g(DictionaryThe)e(Ne)o(w)i(Hac)n(k) o(er')m(s)f(Dictionary)p Ff(,)h(MIT)f(Press,)0 1462 y(3rd)j(edition)h (1996.)j(ISBN)e(ISBN)g(0-262-68092-0.)0 1644 y(Da)n(vid)32 b(E.)h(Lundstrom)e(ga)n(v)o(e)g(us)i(an)g(anecdotal)e(history)h(of)g (the)h(\223Real)g(Programmer\224)d(era)j(in)g Fa(A)f(F)-6 b(e)o(w)33 b(Good)f(Men)g(F)-5 b(r)l(om)0 1744 y(UNIV)g(A)n(CA)20 b(F)-6 b(e)o(w)20 b(Good)f(Men)i(F)-5 b(r)l(om)20 b(UNIV)-5 b(A)n(C)p Ff(,)20 b(1987,)f(ISBN-0-262-62075-8.)p Black 1839 5872 a(10)p Black eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF /esr@thyrsus.com