XHOST UPGRADEHOSTING

Cum să devii un hacker

Istoric revizuiri
Revizuire 1.3329 Noiembrie 2005 esr
Adaugată legătură către excelentul eseu al lui Peter Norvig
Revizuire 1.3229 Iunie 2005esr
Material nou în legătură cu necesitatea de a nu rezolva iar probleme care au mai fost rezolvate. Un set întrebări frecvente despre hacking și programarea open-source. Trei întrebări care să iți spună dacă ești deja un hacker.
Revizuire 1.3122 Martie 2005esr
Adăugată o legatură către un alt eseu al lui Paul Graham, câteva sfaturi despre cum să alegi primul proiect. Noi legături către pagini cu traduceri.
Revizuire 1.302 Martie 2005esr
Adaugate legături către pagini cu traduceri.

Cuprins

De ce acest document?
Ce este un Hacker?
Atitudinea unui Hacker
1. Lumea este plină de probleme fascinante care așteaptă să fie rezolvate.
2. Nici o problemă nu ar trebui să fie rezolvată de doua ori.
3. Evită plictiseala și munca neinteresantă.
4. Libertatea este bună.
5. Atitudinea nu substituie competențele.
Cunoștințe esențiale
1. Invată să programezi.
2. Instalează și folosește un sistem de operare din familia Unix.
3. Invată să folosești internetul și HTML.
4. Daca nu ști engleză la un nivel acceptabil, învață.
Statutul în comunitatea hackerilor
1. Scrie programe cu surse deschise ( open-source )
2. Ajută la testarea și îmbunătățirea programelor open-source
3. Publică informații utile
4. Ajută la menținerea funcțională a infrastructurii
5. Ajută comunitatea hackerilor
Legătura hacker/tocilar(nerd)
Puncte pentru stil
Alte resurse
Întrebări frecvente

De ce acest document?

Ca editor al dicționarului de jargon și autor al altor câteva documente similare foarte cunoscute primesc des mesaje de la începători în rețele care întreabă "Cum pot să învăț să fiu un hacker?". În 1996 am observat că nu există nici un fel de document care să raspundă la această întrebare, așa că am scris acest document. Mulți hackeri îl considera acum definitiv și presupun că asta înseamnă că este. Totuși, eu nu sunt o autoritate exclusivă în acest domeniu; dacă nu iți place ești liber să scri propria versiune.

Dacă citești un rezumat al acestui document versiunea completă o găsești la http://garaj.xhost.ro/hacker-howto/hacker-howto.ro.htm.

Notă: la sfârșitul acestui document găsești o listă cu întrebări frecvente. Citește această listă de două ori înainte de a pune orice întrebare despre acest document.

Acest document mai există în următoarele traduceri : Arabic Bulgarian, Catalan, Chinese (Simplified), Danish, Dutch, Farsi, Finnish, German, Hebrew, Italian Japanese, Norwegian, Polish, Portuguese (Brazilian), Spanish, Turkish, și Swedish. Atenție pentru că acest document se schimbă frecvent și poate să fie neactualizat.

Imaginea cu cele cinci-puncte-în-nouă-pătrate poartă numele de glider. E un model simplu cu niște proprietăți foarte interesante într-o simulare matematică numita : Life care a fascinat mulți ani. Cred că este o bună emblemă care prezintă cum sunt hackerii : abstracți, misterioși, și totuși o poartă către o lume cu o logică aparte. Citește mai multe despre emblemă aici .

Ce este un Hacker?

Dicționarul de jargon conține mai multe definții ale cuvantului hacker, cele mai multe fiind legate de obsesia pentru tehnică și de dorința de a rezolva probleme și a depăși limite. Dacă vrei să ști cum să devii un hacker doar două definiții sunt relevante.

Există o comunitate, o cultură, formată din programatori experti și magicieni în ceea ce privește rețelele care își are originea în primele experimente ARPAnet. Membrii acestei culturi au creat termenul de hacker. Hackerii au construit internetul. Hackerii fac să funcționeze Usenet. Hackerii mențin World Wide Web funcțional. Dacă faci parte din această cultură, dacă ai contribuit și ceilalți știu cine ești și te numesc hacker, atunci ești un hacker.

Conceptul de hacker nu este limitat doar la tehnică. Există oameni care aplică atitudinea unui hacker și în alte domenii cum ar fi electronica și muzica. Termenul poate fi asociat celui mai înalt nivel din orice știință sau artă. Hackerii programatori recunosc aceste spirite înzestrate și în alte persoane. Unele persoane spun că atitudinea unui hacker este independentă de domeniu. În continuarea acestui document o să mă concentrez pe deprinderile și atitudinea unui hacker programator, și pe tradiția celor care au impus denumirea de hacker.

Mai există un grup de oameni care se autodeclară hackeri, dar care nu sunt. Acești oameni ( în special adolescenți ) nu fac altceva decât să atace calculatoare pe internet și să folosească ilegal sistemul telefonic. Hackerii adevărați numesc aceste persoane crackeri și nu vor să aibă nici o legătură cu ei. Majoritatea hackerilor adevarați cred că crackerii sunt leneși, iresponsabili, și nu foarte inteligenți, și simplu fapt de a fi capabil să intri în anumite calculatoare nu te face să fi hacker la fel cum a fi capabil să pornești o mașină fară chei nu te face un inginer auto. Din nefericire, mulți jurnaliști și scriitori au fost păcăliți să folosească cuvântul hacker pentru a descrie crackeri; acest lucru îi irită pe hackerii adevărați.

Diferența esențială dintre un hacker și un cracker este următoarea : hackerii construiesc lucruri pe când crackerii nu fac altceva decât să distrugă.

Dacă vrei să devii un hacker continuă să citești. Dacă tot ce vrei e să fi un cracker atunci citește grupul de știri alt.2600 și pregătește-te să faci cinci sau zece ani de închisoare după ce descoperi că nu ești așa inteligent cum crezi. Și asta e tot ce voi spune despre crackeri.

Atitudinea unui Hacker

Hackerii rezolva probleme și construiesc, ei cred în libertate și ajutorul reciproc dezinteresat. Pentru a fi acceptat ca un hacker, trebuie să te comporți ca și cum ai avea această atitudine. Și pentru a te comporta astfel trebuie să crezi cu adevărat în aceste valori.

Dar dacă te gândești să imiți atitudinea de hacker doar pentru a fi acceptat în comunitate atunci ai ințeles greșit. E foarte important să devii tipul de persoană care crede că aceste lucruri sunt importante pentru că te ajută să înveți și să rămâi motivat. Ca toate celelalte arte care presupun creativitate, cel mai eficient mod de a deveni un maestru este imitarea acțiunilor unui maestru, nu doar intelectual ci și emoțional.

Sau, așa cum afirmă acest poem Zen modern :

Pentru a urma calea:
privește maestrul,
urmează maestrul,
mergi împreună cu maestrul,
privește prin ochii maestrului,
fi tu maestrul.
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.

Deci, pentru a deveni un hacker repetă următoarele lucruri până când reușești să crezi în ele:

1. Lumea este plină de probleme fascinante care așteaptă să fie rezolvate.

A fi un hacker e foarte amuzant, un gen de amuzament care are nevoie de foarte mult efort. Efortul necesită motivație. Atleții de succes își mențim motivația din dorința de a-și împinge trupul către obiective din ce în ce mai ridicate. Asemănător, pentru a fi un hacker trebuie să te simți motivat să rezolvi probleme, să îți îmbunătățești aptitudinile, și să îți exerciți inteligența.

Dacă nu ești genul de persoană care simte aceste lucruri natural, va trebui să devii o astfel de persoană pentru a deveni un hacker. Altfel, o să descoperi că energia pentru hacking e folosită în altfel de distracții precum sex, bani și aprobare socială.

( Trebuie să îți dezvolți și o încredere în propria capacitate de a învăța lucruri noi, încrederea în faptul că chiar dacă nu ști tot ce e necesar pentru a rezolva o problema, dacă reușești să întelegi o parte din ea și să înveți în continuare din acest punct vei ști suficient pentru a rezolva urmatoarea parte și tot așa, până când termini. )

2. Nici o problemă nu ar trebui rezolvată de două ori.

Creierele creative sunt o resursă limitată. Nu ar trebui să fie irosite reinventând roata mai ales știind că sunt atâtea probleme interesante care așteaptă să fie rezolvate.

Pentru a te comporta ca un hacker, trebuie să înțelegi că timpul celorlalți este la fel de important ca și al tău, astfel încat este o datorie morală să împarți informațiile, să rezolvi probleme a căror soluție să o faci disponibilă oricui pentru ca ceilalți hackeri să rezolve noi probleme și să nu fie nevoiți să rezolve probleme deja rezolvate.

Atenție pentru că "Nici o problemă nu ar trebui rezolvată de două ori" nu implică faptul că toate solutiile existente trebuie să fie considerate permanente, sau că există o singură soluție pentru o anumită problemă. Des învățăm mult despre o problema pe care nu am știut să o rezolvăm studiind o primă rezolvare. Este bine, și de multe ori chiar necesar, să decidem că putem să rezolvam problema mai bine. Nu sunt benefice barierele artificiale impuse tehnic, legal sau instituțional ( programe cu sursă închisă ) care împiedică refolosirea unei soluții bune și fortează oamenii să reinventeze roata.

(Nu trebuie să crezi ca ești obligat să dai toată munca ta creativă, deși hackerii care fac acest lucru sunt mai respectați. E compatibil cu valorile hackerilor să vinzi destul astfel încât să ai ce mânca, platii chiria și cumpăra calculatoare. Este acceptat să îți folosețti deprinderile de hacker pentru a te îmbogatii, atâta timp cât nu uiți de ceilalți hackeri și de valorile de care discutam aici.)

3. Evită plictiseala și munca neinteresantă.

Hackerii ( și persoanele creative în general ) nu ar trebui să fie niciodată plictisiți sau să facă o muncă repetitivă și neinteresantă, pentru că atunci când acest lucru se întâmplă nu mai pot să rezolve probleme noi și interesante. Pierderea este dureroasă pentru toți. Evită plictiseala și orice formă de muncă neinteresantă.

Pentru a te comporta ca un hacker trebuie să crezi în acest lucru suficient de mult încât să încerci să automatizezi orice fel de muncă plictisitoare, nu doar pentru tine ci și pentru ceilalți ( în special alți hackeri ).

(Nu există nici o excepție la acest lucru. Hackerii vor face câteodată lucruri care par repetitive și plictisitoare unui observator ca un exercițiu de limpezire a gândurilor, sau pentru a forma o nouă deprindere sau pentru o anumită experiență care nu poate fi încercată altfel. Dar aceasta este o alegere, nimeni care e capabil să gândească nu ar trebui să fie forțat să facă o muncă plictisitoare.)

4. Libertatea este bună.

Hackerii sunt natural independenți, nesupuși autorităților. Oricine poate să îți dea ordine poate să te oprească să rezolvi o problemă de care ești fascinat, și sigur va găsi un motiv stupid pentru aceasta. Așa că atitudinea autoritară trebuie să fie respinsă în orice situație.

(Dar asta nu înseamnă că trebuie să luptăm împotriva tuturor autorităților. Copii trebuie să fie ghidați și criminalii închiși. Un hacker poate să accepte o anumită autoritate pentru a obține ceva, care este mai valoros decât timpul pe care îl pierde urmând ordinele. Dar aceasta este o situație rar întâlnită și acceptată conștient.)

Autoritățile se dezvoltă bazându-se pe secrete și cenzură. Acestea împiedică schimbul liber și voluntar de informație, autoritățile preferă cooperarea pe care o pot controla. Deci pentru a te comporta ca un hacker trebuie să îți dezvolți o repulsie instinctivă față de cenzură, secrete și uzul forței. Trebuie să ai puterea să acționezi conform acestei credințe.

5. Atitudinea nu substituie competențele.

Pentru a fi un hacker trebuie să îți dezvolți această atitudine. Dar copierea unei atitudini nu te va face un hacker, așa cum nu te va face un atlet sau o vedetă. Pentru a devenii un hacker ai nevoie de inteligență, practică, dedicare, și multă muncă.

Trebuie să înveți să nu ai încredere în atitudine și să respecți competența de orice fel. Priceperea la lucruri dificile, pe care puțini le pot înțelege, care necesită concentrare și atenție, este cu atât mai mult apreciată.

Dacă respecți competența, o să îți placă să o dezvolți în tine și munca dificilă va devenii un joc intens. Atitudinea este vitală pentru a devenii un hacker.

Cunoștințe esențiale

Atitudinea este foarte importantă dar cunoștințele sunt și mai importante. Atitudinea nu substituie cunoștințele, și există un set de deprinderi pe care trebuie să le ai înainte ca cineva să se gândească să te numească hacker.

Acest set de deprinderi se schimbă lent pe masură ce trece timpul și tehnologia creează cunoștințe noi și le face pe cele vechi insuficiente. De exemplu inițial includea necesitatea de a ști să programezi în limbaj de asamblare, și doar recent a fost introdus și HTML. Dar acum include următoarele deprinderi :

1. Învată să programezi.

Acest lucru este esențial. Daca nu ști să programezi în nici un limbaj îți recomand să începi cu Python. E foarte bine gândit, bine documentat, și destul de blând cu începătorii. Lăsând la o parte faptul că e un limbaj bun pentru începători, Python nu este o jucărie, este un limbaj foarte puternic și flexibil și care se pretează a fi folosit la proiecte mari. Am scris o evaluare mai detaliată aici. Niște tutoriale foarte bune sunt disponibile pe pagina web www.python.org

Java este un alt limbaj bun pentru a învăța să programezi în el. Este ceva mai dificil decât Python dar produce un cod mai rapid. Este un limbaj care e foarte bine să fie știut. Din nefericire însă implementarea oficială Sun este încă proprietară. Aceasta nu este o prea mare problemă în ceea ce privește limbajul în sine pentru că există alternative open-source de foarte bună calitate; problema reală este dată de bibliotecile de funcții care sunt disponibile împreună cu limbajul. Implementările open-source sunt încă în spatele celor oficiale oferite de Sun. Așa că dacă vrei să înveți Java folosește o implementare open-source pentru a evita să devii dependent de codul proprietate Sun.

Dar trebuie să fi conștient că nu o să ajungi un hacker, nici măcar un programator dacă ști unul sau două limbaje de programare, trebuie să inveți să gândești problemele de programare la modul general, independent de limbaj. Pentru a fi un hacker adevărat trebuie să ajungi până în punctul în care să reușești să înveți un limbaj nou în câteva zile făcând asociații cu ceea ce ști deja. Asta înseamnă că trebuie să ști mai multe limbaje diferite.

După ce depășești faza inițială și o să incepi să înțelegi principalele concepte trebuie să înveți C, limbajul pe baza căruia a fost construit Unix. C++ are foarte multe elemente comune cu C, dacă ști unul va fi ușor să îl înveți pe celălalt. Nici C, nici C++ nu sunt genul de limbaje pe care să le înveți prima data. O să observi că o să fi mult mai productiv in alte limbaje decât în C.

C-ul este foarte eficient, și econom cu resursele calculatorului. Din nefericire C-ul are aceasta eficiență deoarece managementul memoriei și a resurselor este lăsat în seama programatorului. Tot codul acesta este complex și predispus la probleme ( bug-uri ) și va consuma foarte mult timp. Tinând cont de cât de rapide sunt calculatoarele de astăzi este mai bine să folosești un limbaj care să economisească timpul programatorului și nu pe cel al calculatorului ( ex:Python ).

Alte limbaje de importanță deosebită pentru un hacker sunt Perl și LISP. Perl merită învățat în special din motive practice; este folosit foarte frecvent pentru pagini de web dinamice și pentru administrarea sistemului, astfel încât chiar dacă nu o scri programe în Perl tot trebuie să ști să înțelegi o sursă. Mulți oameni utilizează Perl așa cum sugerez eu să fie folosit Python, pentru a evita programarea în C atunci cand nu e nevoie de eficiență. Va trebui să fi capabil să înțelegi aceste programe.

LISP merită învățat pentru sentimentul de mulțumire pe care îl ai atunci cand reușești să-l înțelegi. Această experiență te va face un programator mai bun pentru tot restul vieții, chiar dacă nu o să folosești LISP pentru a scrie programe. ( Poți să capeți niște experiență în LISP ușor scriind și modificând moduri de editare pentru Emacs, sau Script-Fu plugins pentru GIMP. )

Cel mai bine e să le înveți pe toate cinci : Pyhton, C/C++, Java, Perl si LISP. În afara faptului că sunt cele mai importante limbaje pentru hacking sunt și ipostaze ale diferitelor paradigme de programare, și fiecare te va educa în diferite moduri.

Nu pot să dau instrucțiuni complete despre cum să înveți să programezi, e o muncă dificilă. Dar pot să îți spun că nu te vor ajuta foarte mult carțile și cursurile ( mulți, poate cei mai mulți hackeri sunt autodidacți ). Pot să înveți despre un limbaj din carți, dar modul de gândire care transformă acele cunoștiințe într-o deprindere pot fi învățate numai prin exercițiu și programare. Ceea ce trebuie să faci e să (a) citești programe și să scri programe.

Peter Norving care este unul dintre cei mai buni hackeri de la Google și coautor al unor excelente cărți despre inteligență artificială, a scris un eseu excelent numit Teach Yourself Programming in Ten Years. Rețeta lui pentru succes în programare merită toată atenția.

A învăța să programezi e ca și cum ai învăța o nouă limbă. Cea mai bună modalitate e să citești câteva texte scrise de experți în domeniu, să scrii niște chestii singur, să citești mai mult, să mai scri, să citești, să scri .... și să repeți până când dezvolți în scris genul de putere și economie pe care o vezi în modelele tale.

Găsirea unor programe bune pentru analizat era o chestie dificilă, pentru că erau puține disponibile sub formă de cod sursă pe care puteau experimenta hackerii. Acest lucru s-a schimbat dramatic; programe cu sursă deschisă ( open-source ), unelte pentru programare și sisteme de operare ( toate construite de hackeri ) sunt acum disponibile pentru oricine. Ceea ce ne apropie de următorul subiect .....

2. Instalează și folosește un sistem de operare din familia Unix.

O să presupun că ai un calculator personal sau ai acces la unul. ( Gândește-te un moment ce înseamnă asta. Cultura hackerilor a apărut în timpul în care calculatoarele erau așa de scumpe încât nici o persoană fizică nu își permitea să își cumpere. ). Unul dintre cei mai importanți pași pe care un începător îl poate face pentru a începe să dobândească deprinderi de hacker este să facă rost de o copie de Linux sau BSD, să-l instaleze pe calculatorul personal și să învețe să-l folosească.

Da, mai sunt și alte sisteme de operare în lume în afară de Unix. Dar sunt distribuite sub formă binară, nu poți citi codul, nu-l poți modifica. A încearca să înveți hacking pe un calculator cu Microsoft Windows sau orice alt sistem de operare cu surse închise e ca și cum ai încerca să dansezi îmbrăcat în gips.

Sub Mac OS X este posibil, dar numai o parte din sistemul de operare are și surse, e posibil să te lovești de multe ziduri, și trebuie să fi atent să nu dezvolți prostul obicei de a depinde de codul proprietate Apple. Dacă te concentrezi pe Unix poți învăța foarte multe lucruri.

Unix este sistemul de operare al internetului. Deși poți să înveți să folosești internetul fără să ști Unix, nu poți să fi un hacker fără să înțelegi Unix. Din acest motiv, cultura hackerilor este strâns legată de Unix. ( Acest lucru nu a fost întotdeauna adevărat, și câțiva hackeri nu sunt prea bucuroși, dar simbioza între Unix și internet este suficient de puternică încât nici Microsoft nu poate să intervină.)

Așa că instalează un sistem din familia Unix ( Și mie îmi place Linux dar mai există și alte căi ( și da, poți să ai și Linux și Windows pe același calculator )). Invață să-l folosesti. Experimentează cu el. Navighează pe internet cu el. Citește codul. Modifică codul. O să ai la dispoziție unelte pentru programare : C, LISP, Python și Perl, mai mult decât pe orice sistem Microsoft, o să înveți mult mai repede decât îți dai seama.

Pentru mai multe informații în legătură cu Unix vezi The Loginataka. Aruncă o privire și pe The Art Of Unix Programming.

Pentru a obține o copie Linux, vizitează Linux Online!; poți să descarci de acolo sau ( o idee mai bună ) gasește un grup local de utilizatori Linux care să te ajute cu instalarea. Din perspectiva unui nou utilizator toate distribuțiile Linux sunt identice.

Poți să gasesti informații și resurse despre BSD Unix la www.bsd.org.

Am scris o scurtă introducere la adresa Basics of Unix and the Internet

(Notă : Nu recomand instalarea unui sistem Linux sau BSD singur, mai ales dacă ești un începător. Pentru Linux găsește un grup de utilizatori și cere ajutor.)

3. Învață să folosești internetul și HTML.

Cele mai multe lucruri pe care cultura hackerilor le-a produs nu s-au bucurat de atenție publică, fiind folosite în fabrici și universități fără nici un impact direct asupra omenilor în general. Internetul este marea excepție, marea și strălucitoarea jucărie realizată de hackeri care a schimbat lumea. Din acest motiv ( și multe altele ) trebuie să înveți să ști să lucrezi pe internet.

Asta nu înseamnă doar să ști să folosești un browser ( oricine poate să facă asta ), trebuie să înveți să scri HTML - limbajul Web-ului. Dacă nu ști să programezi învățând HTML o să îți fie mai ușor să înveți apoi un limbaj de programare. Așa că trebuie să îți faci o pagină pe web. Încearcă să folosești standardul XHTML, care e mai aranjat decât clasicul HTML. ( Se găsesc ușor tutoriale pe internet; aici e unul.)

Dar simplu fapt de a avea o pagina e doar începutul lungului drum spre a devenii un hacker. Internetul e plin de astfel de pagini. Majoritatea au un conținut inutil ( vezi The HTML Hell Page ).

Ca să merite, pagina ta va trebui să aibă conținut, să fie interesantă/folositoare altor hackeri. Și asta ne aduce la urmatorul subiect ....

4. Dacă nu ști engleză la un nivel acceptabil, învață.

Ca american și vorbitor nativ de limbă engleză am ezitat să sugerez acest lucru, l-am perceput ca o formă de imperialism cultural. Dar câțiva vorbitori nativi de altă limbă decât engleza m-au împins să declar că engleza este limba comunității hackerilor și că trebuie să o ști pentru a te integra.

În jurul anului 1991 am învățat că mulți hackeri care stiau engleza o foloseau în special în discuțiile tehnice; mi s-a spus că engleza are un vocabular tehnic mult mai bogat decât orice altă limba și deci este un instrument mai bun pentru astfel de discuții. Din motive similare traducerile cărților tehnice din engleză sunt deseori nesatisfăcătoare.

Linus Torvalds comentează tot codul pe care îl scrie în engleză ( aparent nici nu și-a pus vreodată problema dacă ar trebui să facă altfel ). Engleza lui fluentă a fost un factor important în abilitatea sa de a recruta o comunitate globală de dezvoltatori Linux. Este un exemplu bun de urmat.

Fiind un vorbitor nativ de engleză nu garantează că știi suficient de mult pentru a fi un hacker. Dacă scrisul este plin de dezacorduri și de greșeli, mulți hackeri ( inclusiv eu ) vor avea tendința să te ignore. Deși scrisul dezordonat nu înseamnă neapărat și o gândire dezordonată am observat că există totuși o corelație destul de puternică. Daca nu ști să scri bine, învață.

Statutul în comunitatea hackerilor

Ca și celelalte culturi care nu se bazează pe economie, cultura hackerilor se bazează pe reputație. Tu încerci să rezolvi probleme interesante, dar cât de interesante sunt, și cât de bune sunt soluțiile tale rămâne să decidă ceilalți.

Atunci când faci parte din jocul hackerilor scorul tău e dat în special de ceea ce gândesc ceilalți ( din acest motiv nu te poți numi hacker până în momentul când ceilalți nu te numesc astfel ). Acest fapt este mascat de imaginea hackingului văzut ca o activitate solitară; și de un tabu din cultura hackerilor ( care a început să dispară din 1990 dar care este încă puternic ) împotriva admiterii faptului că aprobarea celorlalti are un rol în motivație.

Cultura hackerilor este ceea ce antropologi numesc o cultură a darului. Obții reputație și ești respectat, nu fiind frumos, nu având lucruri pe care alți oameni le vor, ci oferind - timp, creativitate, și rezultatul muncii tale.

Sunt cinci lucruri pe care le poți face pentru a fi respectat de ceilalți hackeri :

1. Scrie programe cu surse deschise ( open-source )

Primul lucru ( central și tradițional ) pe care îl poți face e să scri programe pe care ceilalți hackeri să le considere distractive și utile, și să oferi codul sursă al acestor programe astfel încât toți să îl poată folosi.

(Inițial au fost numite gratis ( free ) dar termenul a introdus confuzie pentru că nu se știa exact ce înseamnă gratis. Cei mai mulți folosesc astăzi termenul de open-source).

Cei mai respectați în cultura hackerilor sunt cei care au scris programe mari și capabile, care au satisfăcut o nevoie generală și care au fost oferite gratis împreună cu sursele complete astfel încât oricine să le poată folosi și învăța din ele.

Dar lucrurile nu au fost mereu așa. Deși hackerii au privit dezvoltatorii open-source cu multă admirație ca un element esențial al culturii, înainte de 1990 majoritatea hackerilor scriau programe cu sursele închise. Această atitudine era încă activă în 1996 când am scris prima versiune a acestui document; lucrurile s-au schimbat începând cu anul 1997. Astăzi comunitatea hackerilor și comunitatea dezvoltatorilor open-source sunt două denumiri care descriu același lucru dar e bine să știm că lucrurile nu au fost mereu așa.

2. Ajută la testarea și îmbunătățirea programelor open-source

Și cei care găsesc erorile din programele open-source sunt foarte respectați. În această lume imperfectă, inevitabil ajungem să ne petrecem cel mai mult timp de dezvoltare a programelor căutând erori. Din acest motiv orice dezvoltator open-source care gândește îți va spune că niște testeri buni ( care știu cum să descrie simptomele clar, să localizeze problemele, să ignore micile probleme din primele apariții, și care pot să aplice niște funcții de diagnosticare ) sunt foarte valoroși. Chiar și unul singur poate să facă diferența între o căutare de erori care este stresantă și una foarte ușoară.

Daca ești un începător, încearcă să găsești un program care este în dezvoltare și de care ești interesat și fi un bun tester. Are loc un avans natural de la a ajuta la testarea programelor, la a ajuta la eliminarea erorilor și a ajuta la scrierea lor. O să înveți foarte mult astfel și o să ai o relație bună cu oameni care te vor ajuta mai târziu.

3. Publică informații utile

Un alt lucru bun e să colectezi și să filtrezi informații utile și interesante în pagini web sau documente cu răspunsuri la întrebări frecvente ( FAQ - Frequently Asked Questions ) pe care să le faci disponibile tuturor.

Menținătorii celor mai importante liste de întrebări frecvente primesc la fel de mult respect ca și dezvoltatorii open-source.

4. Ajută la menținerea infrastructurii funcționale

Cultura hackerilor ( și a inginerilor care au dezvoltat internetul ) se bazează pe voluntariat. E foarte multă muncă necesară care trebuie făcută pentru a menține lucrurile funcționale : administrare liste de mail, moderare grupuri de știri, menținerea unor arhive mari de soft, dezvoltarea de RFC-uri și alte standarde tehnice.

Oamenii care fac aceste lucruri sunt foarte respectați pentru că toată lumea știe că aceste munci sunt mari devoratoare de timp și nu sunt atât de distractive ca programarea. Făcând aceste lucruri persoanele respective își arată loialitatea.

5. Ajută comunitatea hackerilor

În final, poți să ajuți la propagarea culturii hackerilor în sine ( prin de exemplu scrierea unui eseu despre cum să devii un hacker :-)). Nu vei putea să faci acest lucru decât dacă vei fi cunoscut de cât mai mulți oameni pentru unul din primele patru lucruri.

Comunitatea hackerilor nu are lideri, dar are eroi, "bătrâni", istorici și purtători de cuvânt. Când ai fost implicat mai mult timp în comunitate se poate să ajungi ceva de genul ăsta. Atenție: hackerii nu au încredere în ego-ul zgomotos al "bătrânilor" așa că poate fi periculos să ai o astfel de faimă. Nu trebuie să încerci din toate puterile să te ridici la un astfel de nivel, trebuie să te poziționezi de așa natură încât să îți cadă în brațe și atunci să fi modest.

Legătura Hacker/Tocilar(nerd)

Termenul nerd din engleză nu are o traducere exactă în română. În limba engleză termenul este mult mai nuanțat decât definiția acceptata în limba română. O astfel de persoană nu poate fi numită pur și simplu tocilar. Pentru mai multe informații vedeți pagina http://en.wikipedia.org/wiki/Nerd. În continuare în text o să folosesc termenul din română, tocilar, dar cu sensul mult mai nuanțat și apropiat de cel real. O discuție pe această temă poate fi lungă - și într-o oarecare măsură asemănătoare cu cea despre cum să devii un hacker.

Contrar miturilor, nu trebuie să fi un tocilar ca să fi un hacker. Ajută, și întradevăr majoritatea hackerilor sunt tocilari. Fiind mai puțin sociabil te ajută să rămâi concentrat asupra lucrurilor cu adevărat importante, precum gândirea și hackingul.

Din acest motiv, mulți hackeri au adoptat termenul de nerd(tocilar) și chiar și termenul mai dur geek ca o modalitate de a-și declara independența față de așteptările societății.

Dacă reușești să te concetrezi pe hacking suficient astfel încât să fi bun și să ai și o viață socială, totul e înregulă. Astăzi e mult mai ușor să faci asta decât era în 1970 când eram un începător; societatea este mult mai prietenoasă cu astfel de persoane azi. Există un număr în creștere de persoane care realizează că hackerii sunt și niște persoane foarte sensibile și iubitoare.

Dacă ești atras de hacking pentru că nu ai o viață socială și asta e ok, cel puțin nu o să ai probleme să te concentrezi. Poate o să ai o viață mai târziu.

Puncte pentru stil

Pentru a fi un hacker trebuie să îți formezi un mod de gândire specific. Sunt anumite lucruri pe care le poți face atunci când nu ești la un calculator care par să ajute. Nu există un substituient pentru hacking ( nimic nu e ) dar mulți hackeri apelează la astfel de activități și se simt conectați într-un anumit fel cu hackingul.

  • Învață bine limba materna. Deși există un stereotip că programatorii nu pot scrie, un număr surprinzător de hackeri ( inclusiv unii dintre cei mai împliniți pe care îi cunosc ) sunt foarte buni scriitori.

  • Citește cărti științifico-fantastice. Mergi la întâlnirile pe teme științifico-fantastice( sunt un loc bun unde poți întâlni alți hackeri )

  • Învață o formă de arte marțiale. Genul de disciplină mentală necesară pentru arte martiale este similară cu ceea ce fac hackerii. Cele mai populare forme între hackeri sunt Tae Kwon Do, diferite forme de Karate, Wing Chun, Aikido, sau Ju Jitsu. Cele mai populare sunt cele care pun accentul pe disciplina mentală, relaxare conștientă, și control în defavoarea rezistenței și puterii fizice.

  • Studiază o disciplină de meditație. Cea mai practicată în acest moment este Zen ( important, poate fi practicată fără necesitatea de a crede într-o noua religie sau renunțarea la cea pe care o ai deja ). Și altele pot funcționa dar trebuie să fi atent să nu începi să crezi chestii aiurea.

  • Dezvoltăți simțul muzical. Învață să apreciezi diferite genuri de muzica. Învață să cânți la un instrument muzical, sau doar să cânți.

  • Apreciază jocurile de cuvinte.

Cu cât mai multe lucruri din cele enumerate faci deja, este mai probabil să fi un hacker natural. De ce aceste lucruri nu se poate explica, dar sunt conectate cu o serie de caracteristici ale emisferei drepte și emisferei stângi care sunt importante; hackerii trebuie să fie capabili să gândească logic dar și să poată să depășească tiparele.

Muncește la fel de intens cum te joci, joacă-te la fel de intens precum muncești. Pentru hackerii adevărați granițele dintre "joc", "muncă", "știință" și "artă" par să dispară și să se uneasca într-un singur concept. Deasemenea nu trebuie să fi mulțumit cu un anumit set de cunoștințe. Deși majoritatea hackerilor se recomandă ca programatori, este foarte probabil să fie competenți și în alte domenii : administrare de sistem, web design, și depanatori de componente. Un hacker care este administrator de sistem este probabil să fie foarte bun la programarea în limbaje de script și web design. Hackerii nu fac lucrurile pe jumătate : dacă învață ceva nou au tendinta să devină foarte buni.

În final, câteva lucrurile care nu trebuie făcute.

  • Nu folosi un nick sau un ID grandios sau prostesc.

  • Nu participa la jigniri( flame wars ) pe Usenet ( sau oriunde altundeva ).

  • Nu te autointitula un vandal electronic( cyberpunk ) și nu băga pe nimeni în seamă care se denumește astfel.

  • Nu pune mesaje sau trimite mail-uri care sunt pline de erori

Nu vei primi decât mustrări pentru orice fel de astfel de abatere. Hackerii au memorie lungă, poate dura ani de zile pentru a fi acceptat.

Problema cu nick-urile merită să fie abordată mai pe larg. Ascunderea identitatii în spatele unui nume fals este o atitudine copilărească specifică crackerilor, warez d00dz, și altor forme de viață inferioare. Hackerii nu fac asta; sunt mândrii de ceea ce fac și vor ca acțiunilor lor să fie asociate cu numele lor real. Așa că dacă ai un astfel de nick, renunță la el. În cultura hackerilor nu va face altceva decât să te marcheze ca un ratat.

Alte resurse

Paul Graham a scris un eseu numit Great Hackers, și încă unul numit Undergraduation, în care se gasește multă înțelepciune.

Peter Seebach menține un excelent Hacker FAQ pentru manageri/angajatori care nu știu cum să trateze un hacker.

Există un document numit How To Be A Programmer care este o excelentă continuare la acesta. Conține sfaturi valoroase nu numai despre programare, dar și despre cum să te comporți într-o echipă de programatori.

Am scris și A Brief History Of Hackerdom.

Am scris un articol, The Cathedral and the Bazaar, care explică cum funcționează comunitatea Linux și comunitatea open-source. Am abordat subiectul și mai serios în cotinuarea numită Homesteading the Noosphere.

Rick Moen a scris un document excelent despre how to run a Linux user group.

Rick Moen și cu mine am colaborat la un alt articol numit How To Ask Smart Questions( Cum să pui întrebări inteligente ). Acesta te va ajuta să cauți ajutor într-un fel în care e destul de probabil să-l primești.

Dacă ai nevoie de informații despre cum merg calculatoarele personale, Unix și internetul citește The Unix and Internet Fundamentals HOWTO.

Atunci când publici programe sau scri patch-uri pentru programe încearcă să urmezi regulile din Software Release Practice HOWTO.

Dacă ți-a plăcut poemul Zen sigur o să-ți placă și Rootless Root: The Unix Koans of Master Foo.

Întrebări frecvente

Q: Cum pot să îmi dau seama daca sunt deja un hacker?
Q: O să mă înveți cum să fiu un hacker?
Q: Când pot să încep?
Q: Când trebuie să începi? Este prea târziu pentru mine să învăț?
Q: Cât o să dureze până devin un hacker?
Q: Sunt Visual Basic sau C# limbaje bune pentru începători?
Q: O să mă înveți cum să sparg un sistem, sau cum să sparg programe?
Q: Cum aflu parola unui cont?
Q: Cum pot să intru/citesc/monitorizez căsuța de mail a altcuiva?
Q: Cum pot să fur drepturile de operator pe IRC?
Q: Am fost atacat. Mă vei ajuta să răspund viitoarelor atacuri?
Q: Am probleme cu programele mele pe Windows. Ma ajuti?
Q: Unde pot să găsesc niște hackeri adevărați cu care să vorbesc?
Q: Poti să îmi recomanzi câteva cărti utile?
Q: Trebuie să știu matematică ca să devin hacker?
Q: Ce limbaj ar trebui să învăț prima dată?
Q: Ce fel de calculator am nevoie?
Q: Vreau să contribui. Poți să mă ajuți să aleg o problemă la care să lucrez?
Q: Trebuie să urăsc Microsoft?
Q: Programele open-source pun programatorii în imposibilitatea de a caștiga bani?
Q: Cum încep? Unde găsesc o versiune de Unix?
Q:

Cum știu dacă sunt deja un hacker?

A:

Pune-ți următoarele întrebări:

  • Vorbești cod fluent?

  • Te identifici cu scopul și valorile comunității hackerilor ?

  • Ai fost numit hacker de către un membru recunoscut al comunității?

Dacă poți răspunde da la toate cele trei întrebări atunci ești deja un hacker. Două nu sunt suficiente.

Primul test vizează cunoștințele. Probabil că ai răspuns da dacă ai minimul descris mai sus. Treci fără probleme dacă ai scris o cantitate apreciabilă de cod pentru un proiect open-source.

A doua întrebare vizează atitudinea. Dacă cele cinci principii ale hackerilor ti s-au părut obișnuite, asemănându-se mai mult cu modul cum trăiești decât cu o poveste, te apropii de un raspuns afirmativ. Aceasta e prima jumătate, cealaltă vrea să afle cât de mult de identifici cu proiectele pe termen lung ale comunității.

Aici am enumerat câteva dintre aceste obiective : Contează pentru tine dacă Linux devine mai bun și mai răspândit ? Te pasionează libertatea programelor ? Ești ostil monopolurilor ? Acționezi în credința că trebuie să vedem calculatoarele ca simple instrumente care fac lumea mai bogată și mai umană ?

Dar trebuie să punctăm un lucru aici. Comunitatea hackerilor are niște principii politice specifice, în special defensive, în special apărarea dreptului la libera exprimare. Comunitatea se luptă și cu legile de proprietate intelectuală care ar face comunitatea open-source ilegală. Unele dintre aceste proiecte pe termen lung sunt reprezentate de organizații precum Fundația Frontierei Electronice ( Electronic Frontier Fundation ). Dar în spatele acestui lucru, cei mai mulți hackeri văd în încercarea de a sistematiza atitudinea lor un program politic explicit dubios; am învățat, pe calea ce grea, că aceste încercări au efecte negative divizând comunitatea. Daca cineva vrea să te recruteze pentru a participa la un protest în numele atitudinii hackerilor, atunci clar a înțeles greșit. Raspunsul corect este probabil să Taci și arată-le codul.

A treia întrebare include o definiție recursivă. Am observat în secțiunea numită Ce este un hacker ? că a fi un hacker ține foarte mult de apartenența la o anumita subcultură și rețea socială cu o anumită istorie. În trecut, hackerii erau un grup mult mai disipat decât sunt astăzi. Dar importanța unei rețele sociale a crescut în ultimii 13 ani pe măsură ce internetul a facut posibilă menținerea ușor a legăturii cu ceilalți hackeri. O mică schimbare de comportament este că în acest deceniu avem propriile tricouri.

Sociologii care studiază rețele precum cea a hackerilor sub sigla generală de "colegii invizibile" au observat că o caracteristică a rețelelor de acest gen este că au așa numiți pazitori ale porților, membrii cheie cu autoritate socială care pot să introducă noii membrii în comunitate. Pentru că termenul de "colegiu invizibil" care definește cultura hackerilor este un termen mult prea general și informal și rolul unui astfel de păzitor al portilor este informal. Dar ceea ce fiecare hacker întelege este că nu orice hacker este un păzitor al porților. Aceste persoane au o anumită vechime și un anumit număr de realizări înainte să primească acest titlu. Cât de mult este greu de precizat, dar fiecare hacker știe când vede o astfel de persoană.

Q:

O să mă înveți cum să fiu un hacker?

A:

Din momentul în care am publicat prima dată această pagină am primit nenumărate cereri ( deseori câteva pe zi ) de la persoane care îmi cereau să le învăț tot ce trebuie să știe pentru a fi un hacker. Din nefericire, nu am timpul și energia să fac acest lucru; propriile mele proiecte, și munca în rolul partizan al comunitatii open-source îmi ocupa 110% din timp.

Chiar dacă aș fi avut acest timp la dispoziție, a fi un hacker înseamnă a avea o anumită atitudine și un set mare de cunoștiințe pe care trebuie să le dobândești singur. O să observi că chiar dacă hackerii adevărați vor să te ajute nu o să te respecte dacă îi implori să îți spună tot ce știu.

Învață câteva lucruri mai întâi. Arată că încerci, că ești capabil să înveți singur. Apoi apelează la alti hackeri cu întrebări precise.

Dacă îi scri unui hacker niște întrebări, sunt două lucruri pe care trebuie să le ști. În primul rând am observat că persoanele care sunt leneșe și neatente în scris sunt de cele mai mult ori neatente și leneșe și în gândire, neavând capacitatea de a devenii hackeri buni, așa că ai grijă să scri corect, să folosești gramatica și semnele de punctuație, altfel vei fi ignorat. În al doilea rând nu cere ca mesajul să fie trimis la o căsuță de mail diferită de cea de pe care ai trimis mesajul; am aflat că persoanele care fac acest lucru sunt deobicei hoți care folosesc conturi furate, și nu avem nici un interes în a rasplăti sau ajuta hoți.

Q:

Cum pot să încep ?

A:

Cea mai bună modalitate să incepi este să mergi la o intâlnire a unui grup de utilizatori Linux ( LUG ). Poți să gasești astfel de grupuri pe LDP General Linux Information Page; probabil că există unul aproape de tine, asociat cu o universitate sau un colegiu. Membrii acestei comunități îți vor da o copie Linux și te vor ajuta să îl instalezi și să începi să înveți.

Q:

Când trebuie să încep? Este prea târziu pentru mine să învăț?

A:

Orice varstă la care ești motivat este bună. Mulți oameni devin interesați între 15 și 20 de ani, dar cunosc excepții în ambele direcții.

Q:

Cât va dura să învăț să devin un hacker?

A:

Asta depinde de cât de talentat ești și cât de mult ești dispus să muncești. Majoritatea oamenilor pot să învețe un volum respectabil de informații în 18 luni pană la 2 ani, dacă se concetrează. Nu te gândi că se termină aici; dacă ești un hacker adevărat o să îți petreci restul vietii învățând și perfecționându-ți cunoștințele.

Q:

Sunt Visual Basic sau C# limbaje bune pentru începători?

A:

Dacă pui această întrebare în mod sigur te gândești să înveți să fi un hacker folosind un sistem Microsoft Windows. Aceasta este o idee proastă în sine. Când am comparat încercarea de a învăța să fi un hacker pe Windows cu a învăța să dansezi îmbrăcat în gips, nu glumeam. Nu încerca asta. E urât și nu va înceta să fie urât.

Sunt probleme specifice cu Visual Basic și C#; în principal din cauza faptului că nu sunt portabile. Deși există implementări open-source ale acestor limbaje, standardele implementate nu acoperă decât o mică parte din interfața de programare. În Windows majoritatea librăriilor sunt proprietatea unui singur producător ( Microsoft ); daca nu ești extrem de atent la ce fel de facilități folosești, mult mai atent decât poate fi un începător o să ajungi să fi blocat, softul fiind portabil doar pe platformele pe care Microsoft decide să le suporte. Dacă începi pe Unix, sunt disponibile limbaje mult mai bune. De exemplu, Python.

Visual Basic este groaznic. Ca orice alt Basic este slab gândit și nu te învață decât obiceiuri proaste de programare. Nu mă ruga să le explic în detaliu, această explicație ar umple singură o carte. Învață un limbaj bine realizat.

Unul dintre aceste obiceiuri proaste este să devii dependent de librăriile și uneltele de dezvoltare ale unui singur producător. În general orice limbaj care nu este suportat măcar sub una dintre platformele Linux sau BSD, și/sau măcar de trei producători diferiți de sisteme de operare, este un limbaj slab în care să înveți.

Q:

O să mă ajuți să sparg un sistem, sau să mă înveți cum să sparg programe?

A:

Nu. Orice persoană care pune o astfel de întrebare după ce a citit acest set de întrebări frecvente este prea proastă pentru a fi educată chiar dacă aș avea timpul necesar. Orice fel de întrebări pe email legate de acest subiect vor fi ignorate sau vor primi un răspuns brutal.

Q:

Cum pot să obțin parola contului altei persoane?

A:

Acesta este cracking. Dispari idiotule.

Q:

Cum pot să sparg/citesc/monitorizez casuța de mail a altcuiva ?

A:

Acesta este cracking. Pa.

Q:

Cum pot să fur drepturi de operator pe un canal de IRC?

A:

Acesta este cracking. Dispari.

Q:

Am fost crackuit. O să mă ajuți să mă apar de atacuri viitoare ?

A:

Nu. De fiecare dată când am fost întrebat acest lucru, întrebarea venea de la o persoană care rula Microsoft Windows. Nu este posibil să securizezi Windows împotriva atacurilor; codul și arhitectura au pur și simplu prea multe probleme, ceea ce face securizare Windows o misiune imposibila. Singura rezolvare este să treci la Linux sau la alt sistem de operare mai bun care să fie capabil de securitate.

Q:

Am probleme cu sistemul meu de operare Windows. Mă ajuți ?

A:

Da. Deschide consola DOS și tastează "format c:". Orice problemă ai întâlnit va înceta să mai existe în câteva minute.

Q:

Unde pot găsi niște hackeri cu care să vorbesc?

A:

Cel mai bun mod este să găsești un grup local de utilizatori Linux sau Unix și să mergi la întâlnirile lor ( poți să găsești câteva adrese de grupuri la LDP )\

(Obișnuiam să spun că nu o să găsești nici un hacker adevărat pe IRC, dar am început să înțeleg că acest lucru se schimbă. Aparent niște comunități serioase de hackeri, atașate proiectelor precum GIMP și Perl, au canale pentru IRC acum ).

Q:

Poți să îmi recomanzi câteva cărti utile despre subiecte legate de hacking ?

A:

Mențin o listă Linux Reading List HOWTO care îți poate fi utilă. Loginataka poate fi interesantă.

Pentru o introducere în Python vezi materiale introductive pe site-ul Python.

Q:

Trebuie să fiu bun la matematică pentru a deveni un hacker?

A:

Nu. Hackingul folosește foarte puțină matematică formala și aritmentică. În particular nu o să-ti trebuiască trigonometrie, calcul sau analiză ( excepția la acest lucru o face grafica 3D ). E bine să ști ceva logică și algebră booleană. Cunoștiințe de bază în teoria seturilor finite, combinatorică și teoria grafurilor se pot dovedi utile.

E mult mai important să fi capabil să gandești logic și să urmezi un lanț de raționamente logice, așa cum fac matematicienii. Deși conținutul matematic nu te va ajuta foarte mult, vei avea nevoie de disciplina și inteligența matematică. Dacă nu ești prea inteligent nu sunt prea multe speranțe pentru tine ca hacker; dacă îți lipsește disciplina ar fi bine să o dezvolți.

Cred că o bună modalitate de a afla dacă ai ceea ce îți trebuie e să gasești o copie a carții lui Raymond Smullyan's What Is The Name Of This Book?. Logica pe care o promovează în carte este în spiritul hackerilor. Dacă ești capabil să rezolvi problemele puse acolo e un semn bun; dacă îți place să le rezolvi e un semn și mai bun.

Q:

Ce limbaj ar trebui să învăț prima dată ?

A:

XHTML ( ultimul dialect de HTML ) dacă nu îl cunoști deja. Sunt foarte multe carți pe această temă, dar puține bune. Cea care îmi place cel mai mult este HTML: The Definitive Guide.

Dar HTML nu poate fi considerat un limbaj de programare. Când ești gata să începi să programezi, îți recomand să începi cu Python. O să auzi foarte multă lume care recomandă Perl, și Perl este încă mult mai popular decât Python, dar este mai dificil de învățat și ceva mai puțin bine gândit.

C este foarte important, dar este și mult mai dificil decât Python și Perl. Nu încerca să-l înveți ca primul limbaj.

Ca utilizator Windows nu trebuie să te axezi pe Visual Basic. O să te învețe obiceiuri proaste, și nu este portabil. Evită-l.

Q:

De ce fel de calculator am nevoie?

A:

În trecut calculatoarele erau destul de slabe încât impuneau limite artificiale hackerilor. Acest lucru nu mai este valabil începand cu mijlocul anului 1990; orice calculator mai bun decât un Intel 486DX50 va avea suficientă putere pentru dezvoltare, grafică, și comunicații internet, și cele mai mici discuri pe care le poți cumpăra astăzi oferă spatiu de stocare suficient.

Cel mai important lucru în alegerea unui calculator este compatibilitatea Linux ( sau BSD dacă decizi să urmezi acest drum). Acest lucru este valabil pentru majoritatea calculatoarelor noi. Singura parte problematica o reprezintă modemurile; unele calculatoare au componente specifice Windows care nu vor funcționa sub Linux.

Raspunsuri la întrebări frecvente legate de compatbilitate gasiti aici.

Q:

Vreau să contribui. Poți să mă ajuți să aleg o problemă la care să lucrez?

A:

Nu, pentru că nu știu care sunt talentele și interesele tale. Trebuie să fi automotivat, din această cauză proiectele alese de alți oameni aproape niciodată nu reușesc.

Încearcă astfel. Privește anunțurile de proiecte pentru câteva zile la adresa Freshmeat. Când vezi unul care te face să zici "Super! Aș vrea să lucrez la acest proiect!", înscrie-te.

Q:

Trebuie să urăsc Microsoft?

A:

Nu, nu trebuie. Nu pentru că nu ar merita, ci pentru că a existat o cultură a hackerilor cu mult înainte de Microsoft și va mai exista una și după ce Microsoft va fi istorie. Energia pe care o consumi urând Microsoft poate fi folosită mai util pentru a-ți îmbunătății capacitățile. Scrie programe bune care să discrediteze Microsoft fără a-ți polua karma.

Q:

Programele open-source pun programatorii în imposibilitatea de a câștiga bani?

A:

Acest lucru pare improbabil pentru moment, industria de programe open-source a creat locuri de muncă noi. Dacă a avea un program scris reprezintă un câștig economic față de faptul de a nu-l avea, programatorul va fi plătit indiferent dacă programul va fi open-source după ce este gata. Și nu contează cât de multe programe gratis sunt scrise, mereu va exista cerere pentru noi aplicații. Am scris mai multe despre acest subiect pe paginile Open Source

Q:

Cum încep ? Unde găsesc o veriune gratis de Unix?

A:

Dacă încerci să gasești un prim proiect pe care să-l faci nu mă întreba pe mine. În schimb urmarește proiectele de pe Freshmeat unde e posibil să găsești ceva interesant la care să poti să contribui.

Dacă nu ai instalat un sistem Unix pe calculator încă, în această pagină găsești legături către locuri unde să găsești cele mai populare versiuni de Unix. Pentru a fi un hacker îți trebuie inițiativă și abilitatea de a te educa singur. Incepe acum ......

Tradus de Savu Andrei - 21 ianuarie 2006. Mai multe despre mine pe blog. Vrei sa vezi ceva interesant? Intra pe www.youmago.ro si o sa gasesti aproape orice iti imaginezi.