Jak zostac hackerem - Eric Raymond.pdf

(362 KB) Pobierz
406680238 UNPDF
Jak zostać Hackerem ­ HOWTO
Autor: Eric S. Raymond
Skąd ten dokument?
Jako twórca Jargon File często otrzymuję prośby e­mailem od wielu entuzjastycznych 
nowicjuszy w Sieci pytających (w skrócie): "w jaki sposób mogę zostać doskonałym 
hakerem?". Co dziwne, nie ma jak do tej pory jakichkolwiek FAQ'ów lub innych 
dokumentów Webowych traktujących o tym ważnym temacie, więc oto mój. 
Haker ­ kto to taki?
Jargon File zawiera garść definicji terminu "haker", większość z nich opierających się na 
biegłości w zagadnieniach technicznych, znajdowaniu upodobania w rozwiązywaniu 
problemów i przekraczaniu ograniczeń. Jeśli jednak chcesz wiedzieć, w jaki sposób  zostać 
hackerem, tylko dwie z nich są naprawdę odpowiednie. 
Istnieje społeczność, kultura grupowa, złożona z ekspertów w dziedzinie programowania i 
magików sieciowych, której historia sięga wstecz poprzez dziesięciolecia do pierwszych 
wielodostępnyc h *   minikomputerów i najwcześniejszych eksperymentów z siecią ARPAnet. 
Członkowie tej kultury zapoczątkowali termin "haker". Hakerzy zbudowali Internet. Hakerzy 
uczynili z UNIXa system operayjny, jakim jest dzisiaj. Hakerzy zapoczątkowali Usenet. 
Hakerzy sprawili, że Światowa Pajęczyna (World Wide Web) zaczęła działać. Jeśli jesteś 
częścią tej kultury, jeśli bierzesz w niej czynny udział i inni ludzie z tej grupy Ciebie znają i 
nazywają Cię hakerem ­ wtedy  jesteś  hakerem. 
Filozofia hakera nie jest ograniczona do tej kultury software'owo­hakerskiej. Są ludzie, 
którzy stosują postawę hakera w innych zagadnieniach, jak elektronika czy muzyka ­ w 
rzeczywistości możesz znaleźć ją na najwyższym poziomie we wszystkich dyscyplinach 
nauki czy sztuki. Software'owi hakerzy rozpoznają te bratnie dusze gdziekolwiek się pojawią 
i mogą ich również nazywać hakerami ­ są tacy, którzy twierdzą, że natura hakera jest 
naprawdę niezależna od konkretnego medium, nad którym on pracuje. Niemniej jednak w 
dalszej części tego dokumentu skupimy się na umiejętnościach i postawach hakerów 
software'owych, oraz na tradycjach kultury społecznej, która zapoczątkowała termin "haker". 
Jest druga grupa ludzi, którzy głośno nazywają siebie hakerami, ale nimi nie są. 
Wspomniani ludzie (w większości niedorosłe osobniki płci męskiej) znajdują podnietę we 
włamywaniu się do komputerów i robieniu zamieszania w systemie telefonicznym. 
Prawdziwi hakerzy nazywają takich ludzi "krakerami" i nie chcą mieć z nimi nic wspólnego. 
Prawdziwi hakerzy uważają w większości, że krakerzy są leniwi, nieodpowiedzialni i 
niezbyt błyskotliwi, a fakt, że jesteś w stanie przełamać system ochrony nie czyni Cię 
hakerem bardziej niż umiejętność uruchamiania samochodu "na krótko" robi z kogoś 
inżyniera w dziedzinie motoryzacji. Niestety, wielu dziennikarzy i autorów publikacji dało 
się oszukać i używają słowa "haker" na określenie krakera. A to bezgranicznie irytuje 
hakerów z prawdziwego zdarzenia. 
Podstawowa różnica jest następująca: hakerzy coś tworzą, a krakerzy to niszczą. 
Jeśli chcesz być hakerem, czytaj dalej. Jeśli masz ambicję zostać krakerem, przeczytaj grupę 
406680238.001.png
dyskusyjną alt.2600 i przygotuj się na pięć do dziesięciu lat odsiadki po tym, jak okaże się, 
że nie jesteś tak bystry, jak myślałeś. I to wszystko co mam do powiedzenia o krakerach.
Postawa hakera
Hakerzy rozwiązują problemy i tworzą rzeczy wierząc w wolność i wzajemną pomoc. Aby 
zostać zaakceptowanym jako haker, musisz zachowywać się jakbyś sam miał ten rodzaj 
podejścia. Jednak żeby zachowywać się tak, jakbyś miał takie podejście, musisz w nie 
naprawdę uwierzyć. 
Jednakże jeśli myślisz o rozwijaniu postaw hakerskich jedynie jak o metodzie uzyskania 
akceptacji wewnątrz kultury, zmierzasz w złym kierunku. Bardzo ważne jest, abyś stał się 
takim typem człowieka, który wierzy w te rzeczy ­ po to, byś łatwiej uczył się i zachował 
motywację. Jak we wszystkich dziedzinach twórczej sztuki, najefektywniejszą metodą 
zostania mistrzem jest naśladowanie stylu myślenia mistrzów ­ nie tylko intelektualnie, lecz 
również emocjonalnie. 
Więc, jeśli chcesz być hakerem, powtarzaj następujące rzeczy do chwili, kiedy w nie 
uwierzysz: 
1. Świat jest pełen fascynujących problemów oczekujących na 
rozwiązanie.
Być hakerem to kupa zabawy, ale to tego typu zabawa, która pochłania mnóstwo wysiłku. 
Wysiłek wymaga motywacji. Atleci odnoszący sukcesy biorą swoją motywację z formy 
fizycznego zadowolenia płynącego z umiejętności nakłonienia własnego ciała, aby działało 
tak, jak sobie tego życzą, z popychania samych siebie poza własne fizyczne ograniczenia. 
Podobnie, aby być hakerem, musisz odczuwać podstawową satysfakcję z rozwiązywania 
problemów, wyostrzania własnych umiejętności i ćwiczenia swojej inteligencji. 
Jeśli nie jesteś osobą myślącą tak w sposób naturalny, musisz takim zostać, jeśli chcesz być 
hakerem. W przeciwnym razie zorientujesz się, że twoja hakerska energia jest uszczuplana 
przez zagadnienia takie jak seks, pieniądze i społeczna akceptacja. 
(Musisz również rozwinąć w sobie rodzaj wiary we własne możliwości uczenia się ­ wiary, 
że możesz nie wiedzieć wszystkiego, czego potrzebujesz do rozwiązania problemu, ale jeśli 
zmierzysz się z nim choć trochę i wskutek tego nauczysz się czegoś, umiesz już 
wystarczająco, żeby ugryźć następny kawałek i tak dalej, aż będzie po wszystkim.) 
2. Nikt nigdy nie powinien rozwiązywać problemu dwa razy.
Twórcze umysły są wartościowym, rzadkim surowcem. Nie powinny być marnotrawione na 
powtórne wynajdowanie koła jeśli jest tyle fascynujących problemów czekających na 
rozwiązanie. 
Aby zachowywać się jak haker musisz wierzyć, że myślowy czas innych hakerów jest cenny 
­ tak bardzo, że niemal moralnym obowiązkiem jest, abyś dzielił się informacjami, 
rozwiązywał problemy i rozdawał rozwiązania tak, aby inni hakerzy mogli rozwiązywać 
nowe  problemy zamiast konieczności ciągłego przetwarzania starych. 
(Nie musisz wierzyć, że masz obowiązek rozdawać za darmo  całą  swoją twórczą 
działalność, choć hakerzy, którzy tak czynią uzyskują najwięcej szacunku od innych. Nie jest 
sprzeczne z wartościami hakera, żebyś mógł sprzedać wystarczająco dużo, aby mieć dostęp 
do pożywienia, dachu nad głową i komputerów. Jest logiczne, że używasz swoich hakerskich 
umiejętności aby utrzymać rodzinę lub wręcz wzbogacić się, tak długo, dopóki robiąc to nie 
zapomnisz, że jesteś hakerem.) 
3. Znudzenie i harówka są złe.
Hakerzy (i twórczy ludzie w ogóle) nigdy nie powinni zanudzać się czy też być zmuszonymi 
do zaharowywania się przy głupiej i powtarzalnej robocie, ponieważ jeśli tak się stanie, 
okaże się, że nie robią tego, co powinni ­ rozwiązywania problemów. To marnotrawstwo 
szkodzi wszystkim. Dlatego znudzenie i nużąca praca są nie tylko nieprzyjemne, ale w 
rzeczywistości szkodliwe. 
Aby zachowywać się tak, jak haker, musisz uwierzyć w to wystarczająco mocno, aby 
zautomatyzować nudne fragmenty tak bardzo, jak to możliwe, nie tylko dla siebie, ale i dla 
innych (w szczególności innych hakerów). 
(Jest jednak pewien oczywisty wyjątek od tej reguły. Hakerzy czasem robią rzeczy, które 
mogą wydawać się powtarzalnymi lub nudnymi dla obserwatora jako ćwiczenia 
oczyszczające umysł, lub, gdy w celu osiągnięcia konkretnego rodzaju doświadczenia nie 
można inaczej. Ale jest to wybór ­ nikt, kto jest istotą myślącą nie powinien być zmuszany 
do nudy.) 
4. Wolność jest dobra.
Hakerzy z natury sprzeciwiają się narzucaniu władzy. Każdy, kto może wydawać Ci 
polecenia jest w stanie powstrzymać Cię przed rozwiązywaniem problemu, niezależnie jak 
bardzo byłbyś nim zafascynowany ­ a biorąc pod uwagę sposób działania władczych 
umysłów, zawsze znajdą one jakiś niebywale głupi powód aby tak uczynić. Więc 
autokratyczne nastawienie powinno być zwalczane gdziekolwiek byś go nie znalazł, w 
przeciwnym razie stłumi Ciebie i innych hakerów. 
(To nie jest wszakże to samo, co zwalczanie wszelkich form władzy. Dzieci muszą być 
wychowywane a przestępcy izolowani. Haker może zgodzić się na zaakceptowanie pewnych 
form władzy w celu osiągnięcia czegoś co ceni bardziej niż czas, który poświęci spełniając 
rozkazy. Ale to jest ograniczona i świadoma transakcja, nikt nie  oferuje  takiej formy 
uległości, jakiej oczekiwaliby ludzie o autokratycznym nastawieniu.) 
Autokratom służy cenzura i utajnienie. Nie ufają oni dobrowolnej współpracy i dzielenia się 
informacjami ­ jedyną współpracą, którą lubią jest ta kontrolowana przez nich. Więc aby 
zachowywać się jak haker, musisz wytworzyć w sobie instynktowną wrogość wobec 
cenzury, utajnienia i używania siły lub podstępu do wywierania przymusu na 
odpowiedzialnych za swoje czyny dorosłych ludziach. I musisz być gotów do działania 
zgodnie z tymi przekonaniami. 
5. Postawa nie zastąpi kompetencji.
Aby być hakerem musisz wytworzyć w sobie niektóre z tych postaw. Ale kopiowanie 
postawy samej dla siebie nie uczyni z Ciebie hakera, tak samo jak postawa nie uczyni z 
Ciebie mistrza w sporcie lub gwiazdy rocka. Żeby zostać hakerem potrzeba inteligencji, 
ćwiczeń, poświęcenia i ciężkiej pracy. 
W związku z tym musisz nauczyć się niedowierzania dla postawy oraz szacunku dla 
kompetencji pod każdą postacią. Hakerzy nie pozwolą pozerom marnować ich czasu, ale 
cenią sobie kompetencję ­ szczególnie kompetencję w hakerstwie, ale każda inna jest też 
dobra. Kompetencja w dziedzinach, które niewielu potrafi opanować jest szczególnie 
ceniona, a kompetencja w dziedzinach, które wymagają umysłowej dokładności, wysiłku i 
koncentracji jest ze wszystkich najlepsza. 
Jeśli jesteś czcicielem kompetencji, będziesz z przyjemnością rozwijać je w sobie ­ ciężka 
praca i poświęcenie staną się formą intensywnej zabawy, nie zaś harówką. A to jest 
szczególnie istotne w procesie stawania się hakerem.
Podstawowe umiejętności hakera.
Postawa hakera jest istotna, ale umiejętności znaczą jeszcze więcej. Postawa nie zastąpi 
kompetencji i można wyróżnić pewien konkretny zestaw umiejętności, które będziesz musiał 
posiąść zanim hakerom przyśni się nazwać Ciebie jednym z nich. 
Ten zestaw zmienia się powoli w czasie wraz z techniką wytwarzającą nowe zdolności i 
czyniące inne z nich przestarzałymi. Na przykład kiedyś do zasobu zdolności hakera 
zaliczało się programowanie w języku maszynowym, natomiast do niedawna nie należała do 
nich znajomość HTMLa. W chwili obecnej w miarę jasno można zaliczyć do nich co 
następuje: 
1. Naucz się programowania.
To jest oczywiście fundamentalna umiejętność hakera. Jeśli nie znasz żadnego języka 
programowania komputerów, polecam rozpoczęcie od Pythona. Jest zaprojektowany w 
czysty sposób, dobrze udokumentowany i stosunkowo przyjazny dla początkujących. 
Pomimo dobrego spełniania roli pierwszego języka programowania, nie jest on po prostu 
zabawką: jest potężnym i elastycznym narzędziem świetnie dopasowanym do dużych 
projektów. 
Bądź jednak świadom, że nie osiągniesz poziomu umiejętności hakera, a nawet zwykłego 
programisty, jeśli będziesz znać zaledwie jeden język ­ musisz nauczyć się myśleć o 
problemie programistycznym w sposób ogólny, niezależny od jakiegokolwiek języka. Aby 
być prawdziwym hakerem, potrzebujesz osiągnąć poziom, na którym możesz nauczyć się 
nowego języka w ciągu dni poprzez porównanie tego, co wyczytasz w podręczniku z tym, co 
już umiesz. Oznacza to, że powinienieś nauczyć się kilku bardzo różniących się od siebie 
języków. 
Jeśli zajmiesz się poważnym programowaniem, będziesz musiał nauczyć się C, rdzennego 
UNIXowego języka (choć nie powinieneś uczyć się go w pierwszej kolejności). Inne języki 
o szczególnej wartości dla hakerów to Perl i LISP. Perl jest wart nauczenia z przyczyn 
praktycznych: jest bardzo szeroko wykorzystywany do tworzenia aktywnych stron WWW i 
administracji systemem, więc nawet jeśli nie piszesz programów w Perlu powinieneś 
nauczyć się go czytać. LISP jest wart nauki dla głębokiego uczucia oświecenia, kiedy go 
wreszcie zrozumiesz. To doświadczenie uczyni z ciebie o wiele lepszego programistę, nawet 
jeśli nie używasz LISPa zbyt często. 
Najlepiej jednak nauczyć się wszystkich czterech (Pythona, C, Perla, LISPa). Poza faktem, 
że są najważniejszymi hakerskimi językami programowania, reprezentują bardzo różne 
podejścia do programowania, a każdy z nich nauczy Cię innych wartościowych rzeczy. 
Nie mogę dać tu kompletnych instrukcji jak nauczyć się programowania ­ to skomplikowana 
umiejętność. Ale mogę powiedzieć, że książki i kursy tego nie zrobią (wielu, może 
większość  najlepszych hakerów to samouki). Co Ci pomoże to: (a)  czytanie kodu , (b)  pisanie  
kodu
Nauka programowania jest jak nauka doskonałego pisania w języku naturalnym. Najlepszą 
metodą jest czytanie rzeczy pisanych przez mistrzów formy, pisanie samemu, czytanie dużo 
więcej, pisanie nieco więcej, czytanie jeszcze więcej, pisanie jeszcze trochę więcej ... 
powtarzaj aż Twoje pisanie zacznie rozwijać się do siły i wydajności, którą obserwujesz w 
swoich wzorcach. 
Kiedyś znalezienie dobrego kodu było zadaniem trudnym, ponieważ mało było dużych 
programów dostępnych w kodzie źródłowym do czytania i zabawy dla świeżo opierzonych 
hakerów. To zmieniło się znacząco. Oprogramowanie z udostępnionym kodem źródłowym, 
narzędzia programistyczne, systemy operacyjne (wszystkie zbudowane przez hakerów) są 
dziś szeroko dostępne. I to pięknie doprowadza mnie do następnego tematu... 
2. Weź jeden z UNIXów dostępnych z kodem źródłowym i naucz 
się go używać i zarządzać nim.
Zakładam, że masz komputer, lub możesz uzyskać dostęp do takowego ( ta dzisiejsza  
młodzież  ma dużo lżej :­)). Jeden z najważniejszych kroków, który musi postawić nowicjusz 
w kierunku osiągnięcia umiejętności hakera jest zdobycie kopii Linuxa lub jednego z BSD­
UNIXów, zainstalowanie go na komputerze i uruchomienie. 
Tak, są systemy operacyjne na tym świecie poza UNIXem. Ale są udostępniane w kodzie 
binarnym ­ nie możesz poczytać kodu i nie możesz go zmienić. Próbowanie nauki hakerstwa 
w DOSie, Windows lub pod MacOS jest jak nauka tańca z gipsem na całym ciele. 
Poza tym UNIX jest systemem operacyjnym Internetu. Chociaż możesz nauczyć się 
posługiwania Internetem bez znajomości UNIXa, lecz bez zrozumienia go nie nauczysz się 
internetowego hakerstwa. Z tej przyczyny kultura hakerów jest silnie scentralizowana wokół 
UNIXa. (To nie zawsze była prawda i niektórzy hakerzy starej daty nie są z tego powodu 
szczęśliwi, ale symbioza pomiędzy UNIXem i Internetem stała się tak silna, że nawet potęga 
Microsoft a *   nie jest w stanie zadać jej poważnego ciosu.) 
Więc postaw UNIXa ­ osobiście lubię Linuxa, ale są inne drogi (no i oczywiście  możesz 
używać Linuxa i DOS/Windows na tej samej maszynie). Naucz się go. Zarządzaj nim. Baw 
się nim. Nawiąż kontakt z Internetem za jego pomocą. Czytaj jego kod źródłowy. Modyfikuj 
kod. Otrzymasz lepsze narzędzia programistyczne (włączając C, Lisp, Python, i Perl) niż 
system operacyjny Microsofta mógłby marzyć, będziesz miał kupę frajdy i wsiąkniesz 
więcej wiedzy niż się zorientujesz zanim nie spojrzysz na to później z perspektywy 
hakerskiego mistrza. 
3. Naucz się używać World Wide Web i pisać w HTML.
Większość rzeczy, które zostały zbudowane przez kulturę hakerską jest ukrytych przed 
wzrokiem pozwalając kierować fabrykami, biurami i uniwersytetami bez widocznego piętna 
na stylu życia nie­hakerów. Web jest jednym wielkim wyjątkiem, wielką błyszcącą zabawką 
hakerów, która, co potwierdzają nawet  politycy , zmienia świat. Z tego jedynego powodu (i 
wielu innych równie dobrych) powinieneś nauczyć się jak dział Sieć. 
Nie oznacza to po prostu nauki posługiwania się browserem (każdy to może zrobić), ale 
nauczyć się pisania w HTML, języku Webu. Jeśli nie umiesz programować, pisanie w 
HTMLu nauczy Cię paru umysłowych przyzwyczajeń, które pomogą Ci to opanować. A 
więc: zbuduj sobie  home page
Jednakże posiadanie samej strony domowej nie jest jeszcze wystarczające do uczynienia Cię 
hakerem Sieć jest pełna stron domowych. Większość z nich jest bezcelowyn, pozbawionym 
Zgłoś jeśli naruszono regulamin