• Who
  • Projects
  • Interests
  • Friends
  • Computer stuff
  • Fun stuff
  • Serious stuff

Dette er norsk (bokml) oversettelse av How To Become A Hacker originalt skrevet av Eric S. Raymond. Oversettelse er gjort av meg, Stian Skjveland, og gjeldende oversettelse er basert p versjon 1.44 av nevnte dokument. Dersom du har kommentarer eller innspill av en hvilken som helst art, vennligst send det til flgende e-post adresse: stian at atlantiscrew period net.


Hvordan bli en hacker

Eric Steven Raymond

Thyrsus Enterprises

<esr@thyrsus.com>

Copyright (C) 2001 Eric S. Raymond

Innhold

Hvorfor dette dokumentet?
Hva er en hacker?
Hackerholdningen.

  • 1. Verden er full av fascinerende problemer som venter p bli lst.
  • 2. Ingen problemer burde noensinne trenge lses flere ganger.
  • 3. Kjedsomhet og ensformig arbeid er ondt.
  • 4, Frihet er bra.
  • 5. Holdning er ikke en erstatning for kompetanse.
Grunnleggende hackingferdigheter.
  • 1. Lr deg programmere.
  • 2. Skaff deg et av pen kildekode UNIX'ene og lr bruke og kjre det.
  • 3. Lr deg bruke internett og kode HTML.
  • 4. Hvis du ikke har funksjonell engelsk, lr det.
Status i hackerkulturen.
  • 1. Skriv programvare med tilgjengelig kildekode.
  • 2. Hjelp, test og feilsk programvare med tilgjengelige kildekode.
  • 3. Publiser nyttig informasjon.
  • 4. Hjelp til med holde infrastrukturen i gang.
  • 5. Tjen hackerkulturen i seg selv.
Hacker/Nerd-koblingen.
Stilkarakterer.
Historiske bemerkninger: Hacking, pen kildekode og fri programvare.
Andre ressurser.
Frequently Asked Questions (Ofte Stilte Sprsml).

spacer

Hvorfor dette dokumentet?

Som vedlikeholder av The Jargon File og forfatter av flere velkjente dokumenter av lignende art, fr jeg ofte etterlysning via e-post fra entusiastiske nybegynnere innen nettverk, som "hvordan kan jeg lre bli et hackergeni?". Tilbake i 1996 merket jeg at det tilsynelatende ikke var noen annen FAQ eller dokument p internett som besvarte dette vitale sprsmlet, s jeg begynte dette. Mange hackere regner n dette som det definitive, og jeg antar at det betyr at det fremdeles er det. Likevel, jeg vil ikke hevde at jeg er av eksklusiv autoritet vedrrende dette emnet; dersom du ikke liker det du leser her; skriv ditt eget.

Hvis du leser et "snapshot" av dette dokumentet avkoblet fra internett er gjeldende versjon i live p catb.org/~esr/faqs/hacker-howto.html.

Merk: det er en liste over ofte stilte sprsml i slutten av dette dokumentet. Vennligst les disse -- to -- ganger fr du sender meg e-post med sprsml vedrrende dette dokumentet.

Et visst antall oversettelser av dette dokumentet er tilgjengelig: Arabisk, Bulgarsk, Catalan, Kinesisk (Simplified), Dansk, Nederlandsk, Estlandsk, Farsi, Finsk, Tysk, Gresk, Hebraisk, Italiensk, Japansk, Norsk, Polsk, Portugisisk (Brasiliansk), Rumensk, Russisk, Spansk, Tyrkisk, og Svensk. Merk at ettersom dette dokumentet endres gjevnlig, vil disse muligens vre utdatert av varierende grad.

Dette fem-punkter-i-ni-firkanter diagrammet som dekorerer dette dokumentet er kallet en "glider". Det er en simpel konstruksjon med noen overraskende egenskaper i en matematisk simulering kallet Life (livet) som har fascinert hackere i en rrekke. Jeg tror dette gjr det bra som et visuelt emblem for hvordan hackere er -- abstrakte, ved frste yekast tilsynelatende noe mystifisert, men likevel en bro over til en hel verden med en kompleks logikk p sitt eget vis. Les mer om dette glider emblemet her.

Hva er en hacker?

The Jargon File inneholder en rekke definisjoner av begrepet "hacker", hvorav mesteparten har gjre med det teknisk avanserte og en belysning i det lse problemer og overstige begrensningene. Hvis du vil lre hvordan du kan bli en hacker, er imidlertid bare to av dem egentlig relevante.

Det finnes et fellesskap, en delt kultur, av ekspertprogrammerere og nettverkseksperter som frer historien sin tilbake flere tir til de frste tidssparende minidatamaskinene og de tidligste ARPAneteksperimenter. Medlemmene av dette felleskapet brukte originalt begrepet "hacker". Hackere bygget internett. Hackere laget UNIX-operativsystemet til hva det er i dag. Hackere driver Usenet. Hackere fr internett til fungere. Hvis du er en del av dette fellesskapet, hvis du har bidrat til det og andre mennesker i det vet hvem du er og kaller deg en hacker, s er du en hacker.

Hackertankegangen er ikke begrenset til dette programvare-hacker-fellesskapet. Det finnes mennesker som overfrer hackerinnstillingen til andre ting, som elektriske artikler eller musikk -- faktisk, du kan finne det i de hyeste gradene av en hvilken som helst vitenskap eller kunst. Programvarehackere gjenkjenner disse beslektede sjeler andre steder og kan derfor finne p kalle disse for "hackere" ogs -- og noen hevder at hackernaturen er virkelig uavhengig av det gitte medium, som hackeren arbeider med. Men p resten av denne siden vil jeg fokusere p programvarehackerenes ferdigheter og holdninger samt p tradisjonene i den felles kulturen, som var opprinnelsen til begrepet "hacker".

N eksisterer det imidlertid ogs en annen gruppe mennesker som hylytt kaller seg selv for hackere, men som ikke er det. Dette er mennesker som har det gy med bryte seg inn i datamaskiner og telefonsysstemer. Virkelige hackere kaller disse menneskene "crackere" og vil ikke ha noe med dem gjre. Virkelige hackere synes hovedsakelig at crackere er late, uansvarlige og ikke helt kloke, og er av den oppfatning at det bryte en sikkerhet ikke gjr deg til en hacker, akkurat som at evnen til stjele biler ikke gjr en til en ingenir. Uheldigvis er mange journalister og forfattere blitt narret til bruke ordet "hacker" til beskrive crackere; dette irriterer hackere grenselst.

Hovedforskjellen er som flger: hackere bygger ting, crackere delegger dem.

Hvis du vil bli en hacker, fortsett lesningen. Hvis du vil bli en cracker, g og les p alt.2600 nyhetsgruppen og gjr deg klar til f flere r bak murene, etter ha funnet ut at du ikke var s smart som du trodde. Og det er alt hva jeg har si om crackere.

spacer

Hackerholdningen.

1. Verden er full av fascinerende problemer som venter p bli lst.
2. Ingen problemer burde noensinne trenge leses flere ganger.
3. Kjedsomhet og ensformig arbeid er ondt.
4. Frihet er bra.
5. Holdninger betyr ikke fravr av kompentanse.

Hackerholdningen.

Hackere lser problemer og bygger ting, og de tror p frihet og hjelpsomhet bassert p frivillig arbeid. For bli akseptert som en hacker, s m du oppfre deg som om du har denne holdningen selv. Og for kunne oppfre seg som om du har denne holdningen, s m du virkelig tro p den.

Men om du tror at det tilegne seg hackerholdninger -- bare som et redskap til f aksept i kulturen, s har du misforsttt poenget. bli en som tror p disse ting, er viktig for deg -- for hjelpe deg med lre og opprettholde motivasjonen. Som med all kreativ form for kunst, er den mest effektive mten bli en mester p ved imitere tankesettet til mesteren -- ikke bare intellektuelt, men ogs flelsesmessig.

Eller, som det flgende moderniserte Zen-diktet sier det:

    To follo the path: ( flge vegen)
    look to the master, (se p mesteren)
    follow the master, (flg etter mesteren)
    walk with the master, (g med mesteren)
    see through the master, (se gjennom mesteren)
    become the master. (bli mesteren)

S, om du nsker bli en hacker, kan du gjenta de flgende punkter like til du tror p dem:

1. Verden er full av fascinerende problemer som venter p bli lst.

Det vre en hacker innebrer mye moro, men det er en form for moro som krever mye innsats. Innsats krever motivasjon. Toppidrettsfolk fr sin motivasjon fra en form for fysisk oppmuntring i det f kroppen til prestere, i det presse seg selv forbi deres fysiske begrensninger. Til sammenligning, for bli en hacker m du oppn en grunnleggende spenning av det lse problemer, ved bli bedre, og ved lre opp intelligensen.

Hvis du ikke er en slik person som fler at dette er naturlig for deg, s vil du behve bli en slik for kunne mte det som en hacker. Ellers vil du oppdage at "hackingenergien" vil forsvinne fra forstyrrende ellementer som sex, penger, og sosial aksept.

(Du vil ogs trenge utvikle en form for tro p din egen evne til lre -- en tro som gr ut p at selv om du kanskje ikke vet alt det du trenger vite for kunne lse et problem, hvis du bare lser en bit av det og lrer noe av det, s vil du lre nok til lse neste bit -- og s videre, like til du har lst det ferdig.)

2. Ingen problemer burde noensinne trenge lses flere ganger.

Kreative hoder er en verdifull, begrenset ressurs. De burde ikke bli bortkastet til det oppfinne hjulet p nytt nr det er s mange fascinerende nye problemer som venter der ute.

For oppfre deg som en hacker, s m du tro at den tiden andre hackere bruker p tenke er verdifull -- s mye at det tilnrmet er en moralsk plikt for deg dele informasjon, lse problemer og s gi lsningene videre slik at andre hackere kan lse nye problemer fremfor mtte oppfinne gamle p nytt.

Merk, dog, at "Ingen problemer burde noensinne trenge lses flere ganger" ikke betyr at du m ta alle eksisterende lsninger for god fisk, eller at det er kun en riktig lsning p et hvilket som helst problem. Mange ganger lrer vi mye om problemer som vi ikke visste fr vi begynte studere de frste delene av lsningen. Det er i orden, og ofte ndvendig, bestemme seg for at vi kan gjre det bedre. Det som ikke er i orden er simulerte tekniske, lovlige, eller institusjonelle barrierer (som lukket kildekode) som forhindrer en god lsning fra det bli gjenbrukt og tvinge mennesker til oppfinne hjulet p nytt.

Du trenger ikke tro at du er forpliktet til gi fra deg alle dine kreative ideer, dog fr de hackerene som gjr dette mest respekt fra andre hackere. Det er foreneligt med hackerverdier selge nok slik at du har nok til mat, leie og datamaskiner. Det er bra bruke kunnskapene dine innen hacking til sttte familien eller til og med bli rik, s lenge du ikke glemmer vre lojal mot kunsten og dine medhackere.)

3. Kjedsomhet og ensformig arbeid er ondt.

Hackere (og kreative mennesker generelt) burde aldri oppleve kjedsomhet eller ensformig arbeid, fordi at nr dette skjer betyr det at de ikke gjr hva kun de kan gjre -- lse nye problemer. Dette er bortkastet og skader alle. Derfor er kjedsomhet og ensformig arbeid ikke bare unsket, men faktisk ondt.

For oppfre seg som en hacker, s m du tro dette nok til automatisk ville sortere bort de kjedelige bitene i strst mulig grad, ikke bare for din egen del, men for alle andre ogs (spesielt andre hackere).

(Det er en penbar untagelse vedrrende dette. Hackere vil fra tid til annen gjre ting som kan se ensformig eller kjedelig ut andre, som en velse i det klarne tankene for kunne lre noe eller tilegne seg en spesiell erfaring som ikke kan oppns p annet vis. Men dette er valgt frivillig -- ingen som kan tenke burde bli tvunget inn i en situasjon som kjeder dem.)

4. Frihet er bra.

Hackere er naturlig anti-autoritre. Hvem som helst som kan gi deg ordrer kan stoppe deg fra lse et hvilket osm helst problem som du er fascinert av -- og, tatt i betrakning hvordan en autoritr persons tankesett fungerer, vil generelt sett finne en virkelig dum grunn til kunne gjre s. S den autoritre innstillingen m bli bekjempet hvor du n enn mtte finne den, slik at det ikke kverker deg og andre hackere.

(Dette er da ikke det samme som bekjempe all autoritet. Barn trenger bli opplrt og kriminelle holdes tilbake. En hacker er kanskje villig til akseptere noen former for autoritet for kunne skaffe seg noe han vil ha mer enn tiden han bruker p flge etter ordre. Men det er en begrenset, bevisst handel; den slags personlig overgivelse, som autoritre nsker, er ikke en mulighet.)

Autoritre liker seg godt med sensur og hemmeligheter. Og de har mistillit til frivillig samarbeid og deling av informasjon -- de kan bare like den form for "samarbeid", som de styrer selv. S for kunne oppfre seg som en hacker, m du kunne utvikle en instinktiv fiendlighet mot sensur, hemmerligheter, og bruken av makt eller bedrageri mot ansvarlige voksne. Og du m vre villig til reagere ut i fra den troen.

5. Holdning er ikke en erstatning for kompentanse.

For kunne vre en hacker, s m du utvikle noen av disse innstillingene. Men disse innstillingene alene gjr deg ikke til en hacker, akkurat som at det ikke vil gjre deg til en toppidrettsstjerne eller en rockestjerne. Det bli en hacker krever intelligens, velser, dedikering, og hardt arbeid.

Derfor vil du trenge lre og ikke stole p innstillinger og respektere kompetanse av alle slag. Hackere vil ikke tillate at en ptatt innstilling kaster bort tiden deres, men de lovpriser kompetanse -- da isr kompetanse innen hacking, men ogs kompetanse p et hvilket som helst omrde blir verdsatt. Kompetanse innen krevende ferdigheter som f kan mestre er spesielt bra, og kompetanse i krevende ferdigheter som innebrer psykisk styrke, dyktighet og konsentrasjon er best.

Hvis du rer kompetanse, s vil du like utvikle det i deg selv -- det harde arbeidet og dedikeringen vil bli en form for et intenst lek, snarere enn ensformig arbeid. Den innstillingen er vital for kunne bli en hacker.

spacer

Grunnleggende hackingferdigheter.

1. Lr deg programmere.
2. Skaff deg et av pen kildekode UNIX'ene og lr bruke og kjre det.
3. Lr deg bruke internett og kode HTML.
4. Hvis du ikke har funksjonell engelsk, lr det.

Hackerholdningen er vital, men ferdigheter er enda mer vitalt. Innstilling er ingen erstatning for kompetanse, og det er et absolutt grunnleggende verkty av ferdigheter du trenger fr en hvilken som helst hacker vil drmme om kalle deg en.

Dette verktyet endres sakte over tid ettersom teknologi skaper nye ferdigheter og gjr eldre ubrukelige. For eksempel, det inkluderte gjerne programmering i maskinvaressprk, og inkluderte ikke fr n nylig HTML. Men her og n inkluderer det ganske klart flgende:

1. Lr programmere.

Dette er, selvsagt, den mest grunnleggende hackingferdigheten. Hvis du ikke er kjent med programmeringssprk anbefaler jeg starte med Python. Det har rent design, er bra dokumentert, og er relativt grei mot nybegynnere. Til tross for at det er et bra sprk begynne med, s er det ikke utelukkende et lekety; det er veldig kraftfullt og fleksibelt og velegnet til strre prosjekter. Jeg har skrevet en mer detaljert vurdering av Python. Gode guider er tilgjengelig p Python's nettside.

Jeg pleide anbefale Java som et bra sprk starte tidlig med, men denne kritikken har forandret min mening (sk etter "The Pitfalls of Java as a First Programming Language" inni det). En hacker kan ikke, som de humoristisk nok kaller det "approach problem-solving like a plumber in a hardware store"; du m vite hva komponentene faktisk gjr. N tror jeg at det beste sannsynligvis er lre C og Lips frst, og s Java.

Det er muligens et mer generelt poeng her. Dersom et sprk er for mye for deg, s lam det samtidig vre bde et bra verkty for produksjonsniv og et drlig for lringsniv. Det er ikke bare sprk som trenger ha dette problemet; web frameworks som RubyOnRails, CakePHP, Django kan gjre det for enkelt n den nrliggende forstelsen som vil etterlate deg uten ressurser nr du m takle en vanskelig oppgave, eller til og med bare debuge en lsning til en enklere.

Dersom du befinner deg innen seris programmering, s m du lre C, the viktigste sprket i UNIX. C++ er nrt relatert til C; dersom du kan ett av dem, s vil ikke det andre vre srlig vanskelig. Ingen av dem er et bra sprk begynne lre programmering i, dog. Og, faktisk, desto mer du klarer unng programmering i C desto mer produktiv vil du vre.

C er veldig effektivt, og bruker veldig lite av din maskinvares ressurser. Dessverre s er C s effektivt ved kreve at du utfrer mye lavniv behandling av ressurser (som minne) for hnd. All den lavniv koden er kompleks og utsatt for feil, og vil ta opp mye av tiden du bruker p luke ut feil. Med dagens maskiners kraft, s er dette som oftest et drlig bytte -- det er smartere bruke et sprk som bruker maskinvarens tid mindre effektivt, men din tid mye mer effektivt. Derav, Python.

Andre sprk av spesiell viktighet for hackere inkluderer Perl og LISP. Perl er verdt lre seg av praktiske rsaker; det er veldig utbredt for aktive nettsider og systemadministrasjon, slik at om du aldri har skrevet Perl s burde du lre lese det. Mange bruker Perl til det jeg foreslr bruke Python til, til unng programmering i C til oppgaver som ikke krever C's maskinvareeffektivitet. Du vil behve vre i stand til forst koden deres.

LISP er verdt lre seg av en annen rsak -- den dypgende opplevelsen du vil f nr du til slutt skjnner det. Den opplevelsen vil gjre deg til en bedre programmerer for resten av livet, til og med p tross av at du kanskje aldri kommer til benytte deg av LISP i noen srlig grad. (Du kan tilegne deg noen nybegynnererfaringer med LISP ganske lett med skrive og modifisere redigeringsmuligheter for teksteditoren Emacs eller Script-Fu plugins for GIMP.)

Det beste er faktisk lre alle fem av Python, C/C++, Java, Perl, og LISP. Ved siden av det vre de viktigste hacking sprkene, s representerer de veldig forskjellige aspekter ved programmering, og hvert av dem vil lre deg noe verdifullt.

Men pass p at du vil ikke oppn ferdighetsnivet til en hacker eller knapt en programmerer dersom du bare vet ett eller to sprk -- du trenger lre hvordan du skal tenke omkring problemer innen programmeringen p en generel mte, uavhengig av programmeringssprket. For virkelig kunne vre en hacker, trenger du komme deg til det punktet hvor du kan lre et nytt sprk innen noen dager ved benytte deg av hva som str i manualen i tillegg til det du vet fra fr. Dette betyr at du burde lre flere veldig forskjellige sprk.

Jeg kan ikke gi komplette instruksjoner p hvordan lre programmere her -- det er en kompleks ferdighet. Men jeg kan fortelle deg at bker og kurs ikke vil ha noe for seg (mange, kanskje mesteparten av de beste hackerene er selvlrte). Du kan lre sprks egenskaper -- biter av kunnskap -- fra bker, men tankesettet som gjr kunnskap til levende ferdigheter kan kun bli lrt gjennom praktiske velser. Det som vil ha noe for seg er (a) lese kode og (b) skrive kode.

Peter Norvig, som er en av Google's beste hackere og medforfatter til den mest brukte instruksjonen om AI, har skrevet et fremragende essay ved tittel Teach Yourself Programming in Ten Years (Lr deg selv programmering i lpet av ti r). Hans "oppskrift til lykkes med programmering" er verdt nye oppmerksomhet.

Det lre og programmere er som lre skrive bra morsml. Det beste er lese det skrevne ord av mestere av formen, skrive litt selv, les mye mer, skriv litt mer, les mye mer, skriv noe mer ... og repeter til det du skriver begynner utvikle seg til en form for styrke og enkelthet du ser i modellene dine.

Det finne god kode lese kunne vre ganske vanskelig, ettersom det var f store programmer tilgjengelig i form av kildekode for uerfarne hackere til lese og prve ut. Dette har endret dramatisk; programvare med tilgjengelig kildekode, programmeringsverktyer, og operativsystemer (alt bygget av hackere) er n vidt tilgjengelig. Noe som bringer meg elegant over til vrt neste emne...

2. Skaff deg et av pen kildekode UNIX'ene og lr bruke og kjre det.

Jeg gr ut fra at du har en datamaskin eller at du kan f tilgang til en. (Sett av et yeblikk til vre fornyd med hvor lettvindt slikt er. Hackerkulturen startet tilbake da datamaskiner var s dyre at enkeltindivider ikke kunne eie dem.) Det viktigste skrittet en hvilken som helst nybegynner kan ta p vegen mot tilegne seg hacker ferdigheter er g til anskaffelse av Linux eller en av BSD-variantene eller OpenSolaris, for s installere det p en datamaskin, og kjre det.

Ja, det er andre operativsystemer der ute i verden foruten UNIX. Men de blir distribuert i binrform -- du kan ikke lese koden, og du kan ikke modifisere den. Det prve lre hacking p en Microsoft Windows datamaskin eller et annet lukket kildekode system er som prve lre og danse mens du har rustning p deg.

Under Mac OS X s er det mulig, men bare en del av systemet er pen kildekode -- du vil sannsynligvis mte p et hav av hindrende murer, og du m vre ppasselig slik at du ikke utvikler den drlige metoden det er vre avhengig av Apples lukkede kode. Hvis du konsentrerer deg om ditt UNIX-system, som er under hjelmen, kan du lre noe verdifullt.

UNIX er det operativsystemet brukt til styre internett. Selv om du kan lre bruke internett uten ha kjennskap til UNIX, s kan du ikke vre en internetthacker uten forst UNIX. P grunn av dette er hackerkulturen i dag ganske sterkt sentrert omkring UNIX. (Dette var ikke ndvendigvis tilfellet, og noen gammeldagse hackere er fremdeles ikke begeistret for det, men symbiosen mellom UNIX og internett har blitt sterk nok til at selv Microsofts muskel ikke ser ut til kunne serist fortrenge det.)

S, kjr opp UNIX -- Selv liker jeg Linux, men det finnes andre metoder (og ja, du kan kjre bde Linux og Microsoft Windows p en og samme datamaskin). Lr det. Kjr det. Lek med det. Snakk med internett via det. Les koden. Modifiser koden. Du vil f bedre programmeringsverktyer (inkludert C, LISP, Python og Perl) enn et hvilket som helst Microsoft operativsystem kan drmme av ha, og du vil f det gy, og du vil tilegne deg mer kunnskap enn du trodde var mulig til du ser bakover p det som en mesterhacker.

For lre mer om UNIX, se The Loginataka. Du vil kanskje ogs se p The Art Of UNIX Programming.

For f fatt i Linux, se Linux Online!; du kan laste ned derfra eller (enda bedre) finne en lokal Linux brukergruppe som kan hjelpe deg med innstallasjonen. Fra en nybegynners perspektiv er alle Linux distribusjoner noks like.

I lpet av de frste 10 rene dette dokumentete eksisterte, skrev jeg at fra en nybegynners perspektiv at alle distribusjoner av Linux er omtrent like. Men i 2006-2007 ble det skapt et beste valg: Ubuntu. Mens andre distroer har deres egne sterke omrder, er Ubuntu langt p veg den mest tilgjengelige for nybegynnere innen Linux.

Du kan finne hjelp til BSD UNIX, samt ressurser, p www.bsd.org.

Et bra nybegynnerskritt vil vre prve boote hva Linuxfans kaller en live-CD, en distribusjon som kjrer p CD uten at man trenger modifisere harddisken. Dette vil g tregt, ettersom CD-ROM er treg, men det er en mte f se p mulighetene uten gjre noe drastisk.

Jeg har skrevet guide for nybegynnere om grunnleggende UNIX og internett.

Jeg pleide anbefale innstallere enten Linux eller BSD som et enkelt prosjekt dersom du er en nybegynner. Dog, n til dags, innstallasjonsprosedyrene har blitt gode nok slik at gjre det helt p egen hnd er mulig selv for en nybegynner. Uansett, jeg anbefaler fremdeles ta kontakt med din lokale Linux-brukergruppe og spr om hjelp. Det kan ikke skade, og kan gjre hele prosessen enklere.j

3. Lr deg bruke internett og kode HTML.

Mesteparten av det hackerkulturen har bygget arbeider i det stille, som hjelpe med kjre fabrikker, kontorer og universiteter uten noen penbar innflytelse p hvordan ikke-hackere lever. Internett er det store unntaket, det store skinnende hackerleketyet som til og med politikere har innrmmet at har endret verden. Utelukkende p grunnlag av denne dette (samt mangt andre gode) vil du trenge lre hvordan arbeide med internett.

Dette betyr ikke bare lre kjre en nettleser (som enhver kan gjre), men lre skrive HTML, internetts viktigste sprk. Dersom du ikke vet hvordan programmere, skrive HTML vil lre deg noen mentale vaner som vil hjelpe deg til lre. S bygg en hjemmeside. Prv hold deg til XHTML, som er et renere sprk enn klassisk HTML. (Det er gode guider for nybegynnere tilgjengelig p internett; her er en av dem.)

Men bare det ha en hjemmeside er langt fra godt nok til gjre det til en hacker. Internett er full av hjemmesider. Mesteparten av dem er meningslst, innholdslst dritt -- meget fjong dritt, vr oppmerksom p det, men like fullt dritt uansett (for mer informasjon om dette se The HTML Hell Page).

For ha verdi, s trenger siden din innhold -- det m vre interessant og/eller ha nytteverdi for andre hackere. Og det frer oss over til neste emne...

4. Hvis du ikke har funksjonell engelsk, lr det.

Som en Amerikaner med Engelsk som morsml var jeg noe tilbakeholden med foresl dette, av frykt for at det kunne bli oppfattet som en form for kulturell imperialisme. Men flere med andre morsml har bedt meg om peke p at engelsk er det gjeldende sprket til hackerkulturen og internett, og at du vil trenge kunne det for fungere i hackersamfunnet.

Tilbake til rundt 1991 lrte jeg at mange hackere som hadde engelsk som et andresprk brukte det i tekniske diskusjoner til og med nr de har det samme morsml; jeg ble gjort oppmerksom p at engelsk hadde et rikere teknisk vokabular enn noe annet sprk og er derfor et bedre egnet verkty for jobben. Av lignende rsaker er oversettelser av tekniske bker skrevet i engelsk ofte ikke tilfredsstillende (nr de blir oversatt i det hele tatt).

Linus Torvalds, en finne, kommenterer koden sin p engelsk (tilsynelatende har det aldri fallet ham inn gjre noe annet). Hans flytende engelsk har vrt en viktig faktor i det kunne rekrutere et verdensomspennende samfunn av utviklere for Linux. Det er et eksempel vel verdt flge etter.

Det ha engelsk som morsml garanterer ikke for at du vil ha sprkkunnskaper nok til fungere som en hacker. Hvis sprket du skriver er forenklet, har gramatiske feil og er full av skrivefeil, s vil mange hackere (inkludert meg) finne p ignorere deg. Samtidig som ufullstendig skriving ikke konsekvent trenger bety ufullstendig tenkning, s har vi generelt sett hatt en ganske streng hovedregel -- og vi har ikke bruk for ufullstendige tenkere. Hvis du fortsatt ikke kan skrive skikkelig, lr det.

spacer

Status i hackerkulturen.

1. Skriv programvare med tilgjengelig kildekode.
2. Hjelp, test og feilsk programvare med tilgjengelig kildekode.
3. Publiser viktig informasjon.
4. Hjelp med holde infrastrukturen i gang.
5. Tjen hackerkulturen i seg selv.

Som med de fleste kulturer uten konomisk fundament kjrer "hackerdommen" p omdmme. Du prver lse interessante problemer, men hvor interessante de er, og om dine lsninger er noe srlig gode, er noe som bare de som er like gode som deg eller enda bedre er i stand til bedmme.

S nr du spiller hackerspillet lrer du holde stillingen primrt bassert p hva andre hackere synes om egenskapene dine (dette er rsaken til at du egentlig ikke er en hacker inntil andre hackere kaller deg en). Dette faktum overskygges av bildet av hacking som et ensomt prosjekt; ogs av et hackerkulturelt tabu (som gradvis har forsvunnet siden slutten av 1990-tallet men fremdeles eksisterer) mot innrmme at egoet og andres aksept og anerkjennelse er innvolvert i motivasjonen en har overhodet.

Spesielt er "hackerdommen" hva antropologer kaller en gavekultur. Du fr status og omdmme ved ikke dominere over andre mennesker, ei heller ved vre vakker, ei heller ved ha ting som andre vil ha, men heller ved gi ting bort. Spesifisert, ved gi bort tiden din, kreativiteten din, og alle resultater bassert p dine egenskaper.

Det er fem grunnleggende ting du kan gjre for bli respektert av hackere:

1. Skriv programvare med tilgjengelig kildekode.

Det frste (mest sentrale og mest tradisjonelle) er skrive programvare som andre hackere synes er morsomme eller nyttige, og gi kildekoden til programvaren bort til hele hackerkulturen for videre bruk.

(Vi pleide kalle disse arbeidene "free software", men dette forvirret for mange mennesker som ikke var sikker p hva "free" egentlig innebar. De fleste av oss foretrekker n heller bruke "open source" programvare.)

Hackerkulturens mest verdsatte nesten-guddommer er mennesker som har skrevet store, funksjonelle programvare som dekker et stort behov og gitt det bort, slik at alle kan bruke dem.

Men her er det litt av et stykke historisk poeng. Mens hackere alltid har sett opp til pen kildekode utviklere blant dem, som vr kulturs hardeste kjerne, fr midten av 1990-tallet jobbet de fleste hackere av den tiden p lukket kildekode. Dette var fremdeles sant da jeg skrev den frste versjonen av dette dokumentet i 1996; pen kildekode ble ndvendigvis allminneliggjort etter 1997 og forandret ting. I dag s er "hackerkulturen" og "pen kildekode utviklere" to beskrivelser for hva som egentlig er den samme kulturen og beboere -- men det er verdt huske at det ikke alltid var slik.

2. Hjelp, test og feilsk programvare med tilgjengelig kildekode.

De feilsker ogs programvare med tilgjengelig kildekode. I denne alt annet enn perfekte verdenen vil vi alltid bruke mesteparten av tiden vi bruker p utvikle programvare til feilsking-delen. Dette er runnen til at en hvilken som helst tenkende pen kildekodeforfatter fortelle deg at gode beta-testere (som vet beskrive symptomer klart, oppdage problemene raskt, kan tolerere feil p grunn av gjenvlige oppdateringer, og er villig til ta i bruk noen f simple diagnostiseringsrutiner) er verdt sin vekt i gull. En alene av disse kan utgjre forskjellen mellom en lang fase med feilskingingens mareritt og en som knapt er en plagsomhet.

Hvis du er en nybegynner, prv finn et program under utvikling som interesserer deg og vr en god beta-tester. Det er naturlig progresjon fra det hjelpe med og teste programvare til hjelpe og feilske dem til hjelpe med og modifisere dem. Du vil lre mye p denne mten, og skaffe deg god karma hos mennesker som senere vil hjelpe deg.

3. Publiser viktig informasjon.

En annen god ting er samle og filtrere ndvendog og interessant informasjon p nettsider eller dokumenter som lister Ofte Stilte Sprsml (FAQ, p engelsk), og gjre disse allment tilgjengelig.

Vedlikeholdere av store tekniske FAQer fr nesten like mye respekt som pen kildekodeforfattere.

4. Hjelp med holde infrastrukturen i gang.

Hackerkulturen (og den tekniske utviklingen av internet, for den saks skyld) drives av frivillige. Det er mye ndvendig men uglamorst arbeid som trenger bli gjort for holde det i gang -- administrere mailinglister, moderere nyhetsgrupper, vedlikeholde store arkiver til sider til programvare, utvikle RFC-dokumenter og andre tekniske standarder.

Folk som gjr dette vil f respekt, ettersom alle vet at disse jobbene krever mye tid og ikke er like gy som kode. Det gjre dem viser dedikering.

5. Tjen hackerkulturen i seg selv.

Til slutt, s kan du tjene og innovere kultiren i seg selv (ved , for eksempel, skrive en konkret innfring i hvordan man kan bli en hacker :-)). Dette er ikke noe du vil vre i stand til gjre inntil du har vrt tilstede en stund og blitt velkjent med en av de fire frste ting.

Hackerkulturen har ikke akkurat noen ledere, men den har kulturelle helter, eldstebrdre, historikere og talsmenn. Nr du har vrt i skyttergraven lenge nok vil du kanskje bli en av dem. Vr p vakt: hackere har misstillit til hyrstete eldstebrdre, s det synlig ske denne type bermmelse er farlig. Fremfor streve etter den s m du stille deg slik at det faller naturlig for deg, og da vre beskjeden og takknemmlig for statusen din.

spacer

Hacker/Nerd-koblingen.

I motsetning til hva mange tror s trenger du ikke vre en nerd for bli hacker. Det kan riktignok vre til hjelp, og mange hackere er nerder. vre sosialt utenforstende hjelper deg med forbli konsentrert om de virkelige viktige tingene, som tenke og hacke.

Med dette til grunn har mange hackere tatt betegnelsen "nerd" og til og med den barskere termen "geek" med stolhet -- det er en mte si at de er uavhengig av konvensjonelle sosiale forventinger.

Dersom du er i stand til konsentrere deg nok omkring hackingen til at du blir god i det og fremdeles ha et liv, s er det fint. Dette er mye lettere i dag enn hva det var da jeg var en nybeginner i 1970-rene; mainstreamkulturen er mye mer positivt innstillt p technonerder i dag. Det er til og med et kdende nummer av folk som innser at hackere ofte er en hykvalitets kjrlighetsemne og samboeremne.

Dersom du fler deg tiltrukket av hacking fordi du ikke har et liv, s er det i orden det ogs -- i det minste vil du ikke ha problemer med holde konsentrasjonen. Kanskje fr du deg et liv senere.

spacer

Stilkarakterer.

Igjen, for vre en hacker, s m du tilegne deg hackeres tankesett. Det er et par ting du kan gjre nr du ikke er ved datamaskinen din som ser ut til hjelpe. De er ikke en erstatning for hacking (ingenting er) men mange hackere gjr dem, og fler at de p en grunnleggende mte tilkobles med essensen av hacking.

  • Lr skrive morsmlet ditt godt. P tross av at det er stereotypisk at programmerere ikke kan skrive, s er et overraskende antall hackere (inkludert de mest vellykkede jeg vet om) veldig dyktig til skrive.
  • Les science fiction. G til science fiction sammenkomster (en god mte bruke til mte hackere og blivende hackere p).
  • Lr selvforsvar. Den type mental disiplin som er krevet i selvforsvar ser ut til minne p mange mter om det hackere gjr. Den mest populre formen blant hackere er definitivt asiatiske "empty-hand" kunster som Tae Kwon Do, ulike former for Karate, Wing Chun, Aikido, eller Ju Jitsu. Vestlig forsvar og astiatisk sverdkunster har tydelige etterflgere. P steder hvor det er lovlig er skyting med pistol av kende popularitet siden slutten av 1990-tallet. Den mest hackeraktige type selvforsvar er den som fremmer mental disiplin, avslappet vaktsomhet, og kontroll fremfor styrke, bli atletisk eller fysisk hardhet.
  • Studer en faktisk meditasjonsdisiplin. Den lengstlevende favoritten blant hackere er Zen (det er mulig lre fra Zen uten tilegne seg en religion eller forkaste den du alt har). Andre typer kan ogs fungere, men vr forsiktig med velge en som ikke krever at du tror p spr ting.
  • Utvikle et analytisk re for musikk. Lre verdsette uvanlige typer musikk. Lr spill en form for instrument bra, eller synge.
  • Utvikle din sans for ordspill.

Desto mer av dette du alt gjr, desto strre er sjangsen for at du er et naturlig hackermateriale. Hvorfor disse tingene spesielt er ikke helt klart, men det henger sammen med en blandet bruk av venstre - og hyredelen av hjernens egenskaper som ser ut til vre viktig; hackere m vre i stand til bde tenke logisk og tr ut av den synlige logikk omkring et problem i lpet av et yeblikk.

Jobb s hardt som du leker, og lek s hardt som du jobber. For ekte hackere vil grensene mellom "leke", "jobbe", "vitenskap" og "kunst" forsvinne etterhvert, eller smelte sammen til et hyere niv av kreativ sky. Og, ikke si deg fornyd med et begrenset antall egenskaper. P tross av at de fleste hackere beskriver seg selv som programmerere, s er det veldig sannsynlig at de er kompetente i flere ulike relaterte funksjoner -- system administrasjon, webdesing, og PC hardware feilsking er vanlige. En hacker som er en system administrator, p den andre siden, vil etter all sannsynlighet ha ganske gode kunnskaper om skriptprogrammering og webdesign. Hackere gjr ikke ting halvvegs; hvis de satser p en egenskap i det hele tatt s har de for vane bli veldig god i det.

Til slutt et par ting ikke gjre:

  • Ikke bruk et tpelig, overdrevet bruker - eller loginnavn.
  • Ikke bli innvolvert i drittkasting p Usenet (eller andre steder).
  • Ikke kall deg selv en "cyberpunk", og ikke kast bort tiden din p noen som gjr det.
  • Ikke post eller skriv e-post full av stavefeil og gramatiske feil.

Det eneste rykte du fr av gjre disse tingene er at du er en tulling. Hackere har god hukommelse -- det kan ta revis dekke over dine tidlige feilskritt nok til bli akseptert.

Problemet med loginnavn eller kallenavn fortjener noe utdypning. skjule identiteten din bak et kallenavn er umoden og tpelig oppfrsel som er karakteristisk for crackere, warez d00dz, og andre lavere livsformer. Hackere gjr ikke dette; de er stolte av det de gjr og vil at det skal assosieres med deres virkelige navn. S dropp kallenavnet om du har et. I hackerkulturen vil det bare stemple deg som en taper.

spacer

Andre ressurser.

Paul Graham har skrevet et essay kallet Great Hackers, og et annet om Undergraduation, hvor han sier mye klokt.

Peter Seebach vedlikeholder en fremragende Hacker FAQ for ledere som ikke vet hvordan de skal hndtere hackere.

Det er et dokument kallet How To Be A Programmer som et er glimrende suplement til dette. Det inneholder verdifulle rd, ikke bare om koding og kunnskapskning, men om hvordan fungere i et programmeringsteam.

Jeg har ogs skrevet A Brief History Of Hackerdom.

Jeg har en artikkel, The Cathedral and the Bazaar, som forklarer mye omkring hvordan Linux og pen kildekodekulturen virker. Jeg har skrevet enda mer direkte om dette temaet i etterflgeren Homesteading the Noosphere.

Rick Moen har skrevet et fabelaktig dokument om hvordan drive en Linux brukergruppe.

Rick Moen og jeg har samarbeidet om et annet dokument i How To Ask Smart Questions. Dette vil hjelpe deg i ske assistanse p en mte som gjr det mer sannsynlig at du faktisk vil f det.

Dersom du trenger instruksjoner i grunnleggende ferdighet om hvordan bruke datamaskin, UNIX, og hvordan internett fungerer, se The UNIX and Internet Fundamentals HOWTO.

Nr du gir ut programvare eller skrifter patch for programvare, s br du prve flge retningslinjene i the Software Release Practice HOWTO.

Dersom du likte Zen-diktet vil du kanskje ogs like Rootless Root: The UNIX Koans of Master Foo.

spacer

Historiske bemerkninger: Hacking, pen kildekode og fri programvare.

Da jeg begynte skrive denne HOWTO'en sent i 1996 var noen av omstendighetene omkring det anerledes i forhold til hva det er i dag. Noen f ord om disse endringene kan klargjre ting for folk som er frustrerte vedrrende forholdet mellom pen kildekode, fri programvare, og Linux til hackermiljet. Dersom du ikke er nysgjerrig om dette s kan du fortsette rett til FAQ (Ofte Stilte Sprsml) og bibliografien.

Hackerkarakteren - og miljet som jeg har beskrevet her lenge fr Linux ble utbredt etter 1990; Jeg ble frst innvolvert med det rundt 1976, og rttene er tilbakesporet til det tidlige 60-tallet. Men fr Linux ble mesteparten av hackingen gjort p enten proprietre operativsystemer eller en hndfull av kvasieksperimentel hjemmelaget systemer som MIT sitt ITS som aldri ble utviklet utenfor deres akademiske krets. Mens det har vrt noen tidligere (fr Linux) forsk p forandre situasjonen, ble gjennombrudet i bestefall veldig marginalt og restriktert til miljet av dedikerte sanne troende som var en liten minoritet selv innen hackermiljet, dog med respekt til den strre verden av programvare generelt.

Det som n blir kallet "open source" (pen kildekode) gr tilbake s langt som hackermiljet gjr, men inntil 1985 var det navnls praktisering fremfor en rvken bevegelse med teorier og opprop koblet til det. Denne frhistorien sluttet i 1985 nr erkehacker Richard Stallman ("RMS") prvde gi det et navn - "fri programvare". Men hans forsk p navngivning var ogs et forsk p pstelser; han la til vekt ideologisk bagasje til "fri programvare"-merket, noe som mye av det eksisterende hackermiljet aldri aksepterte. Som et resultat av dette ble "fri programvare"-merket hylytt forkastet av en substensiell minoritet av hackermiljet (spesielt blant de som var innvolvert med BSD UNIX), og brukt med seris men stille reservering fra resten av majoriteten (inkludert meg selv).

P tross av disse reservasjonene, RMS's pstand om definere og lede hackermiljet under termen "fri programvare" holdt helt til midten av 1990-tallet. Det ble bare for alvor utfordret av veksten av Linux. Linux ga pen kildekode utvikling et naturlig hjem. Mange prosjekter under termer we n kaller pen kildekode migrering fra proprietre UNIX'er til Linux. Miljet rundt Linux vokste voldsomt, og ble betydelig strre og mer fravrende fra opprinnelsen enn hackermiljet fr Linux. RMS forskte p sitt ikke-fleksible vis p lede all denne aktiviteten inn i hans "fri programvare"-bevegelse, men ble feilet bde p grunn av den eksploderende misnyen fra Linuxmiljet og den offentlige skepsisen mot den

gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.