Академический Документы
Профессиональный Документы
Культура Документы
Como editor do Jargon File, freqentemente recebo pedidos por email de entusiasmados iniciantes, perguntando (de fato) "como eu posso aprender a ser um grande hacker?". stranhamente, parece que n!o e"istem F#$s ou documentos na %eb que se refiram a essa importante quest!o, ent!o aqui est& o meu. Caso 'oc( este)a lendo um trecho deste documento off*line, a 'ers!o atual fica em http+,,---.ccil.org,.esr,faqs,hacker*ho-to.html.
O que um hacker?
/ Jargon File cont0m um monte de defini12es do termo "hacker", a maioria deles tendo a 'er com aptid!o t0cnica e um pra3er em resol'er problemas e superar limites. 4e 'oc( quer saber como se tornar um hacker, entretanto, apenas duas s!o realmente rele'antes. "iste uma comunidade, uma cultura compartilhada, de programadores e"perts e gurus de rede cu)a hist5ria remonta a decadas atr&s, desde os primeiros minicomputadores de tempo compartilhado e os primeiros e"perimentos na #67#net. /s membros dessa cultura deram origem ao termo "hacker". 8ackers constru9ram a :nternet. 8ackers fi3eram do sistema operacional ;ni" o que ele 0 ho)e. 8ackers mant0m a ;senet. 8ackers fa3em a %orld %ide %eb funcionar. 4e 'oc( 0 parte desta cultura, se 'oc( contribuiu a ela e outras pessoas o chamam de hacker, 'oc( 0 um hacker. # mentalidade hacker n!o 0 confinada a esta cultura do hacker*de*soft-are. 8& pessoas que aplicam a atitude hacker em outras coisas, como eletr<nica ou m=sica ** na 'erdade, 'oc( pode encontr&*la nos n9'eis mais altos de qualquer ci(ncia ou arte. 8ackers de soft-are reconhecem esses esp9ritos aparentados de outros lugares e podem cham&*los de "hackers" tamb0m ** e alguns alegam que a nature3a hacker 0 realmente independente da m9dia particular em que o hacker trabalha. >as no restante deste documento, nos concentraremos nas habilidades e dos hackers de soft-are, e nas tradi12es da cultura compartilhada que deu origem ao termo ?hacker@. "iste outro grupo de pessoas que se di3em hackers, mas n!o s!o. 4!o pessoas (adolescentes do se"o masculino, na maioria) que se di'ertem in'adindo computadores e fraudando o sistema telef<nico. 8ackers de 'erdade chamam essas pessoas de "crackers", e n!o tem nada a 'er com eles. 8ackers de 'erdade consideram os crackers pregui1osos, irrespons&'eis, e n!o muito espertos, e alegam que ser capa3 de quebrar sistemas de seguran1a torna algu0m hacker tanto quanto fa3er liga1!o direta em carros torna algu0m um engenheiro automobil9stico. :nfeli3mente, muitos )ornalistas e escritores foram le'ados a usar, err<neamente, a pala'ra "hacker" para descre'er crackersA isso 0 muito irritante para os hackers de 'erdade. # diferen1a b&sica 0 esta+ hackers constr5em coisas, crackes as destr5em.
4e 'oc( quer ser um hacker, continue lendo. 4e 'oc( quer ser um cracker, '& ler o ne-sgroup alt.BCDD e se prepare para se dar mal depois de descobrir que 'oc( n!o 0 t!o esperto quanto pensa. isso 0 tudo que eu digo sobre crackers.
A Atitude Hacker
8ackers resol'em problemas e constr5em coisas, e acreditam na liberdade e na a)uda m=tua 'olunt&ria. 7ara ser aceito como um hacker, 'oc( tem que se comportar de acordo com essa atitude. para se comportar de acordo com essa atitude, 'oc( tem que realmente acreditar nessa atitude. >as se 'oc( acha que culti'ar a atitude hacker 0 somente um meio para ganhar aceita1!o na cultura, est& enganado. Eornar*se o tipo de pessoa que acredita nessas coisas 0 importante para voc ** para a)ud&*lo a aprender e manter*se moti'ado. #ssim como em todas as artes criati'as, o modo mais efeti'o para se tornar um mestre 0 imitar a mentalidade dos mestres ** n!o s5 intelectualmente como emocionalmente tamb0m. nt!o, se 'oc( quer ser um hacker, repita as seguinte coisas at0 que 'oc( acredite nelas+
1. O mundo est repleto de problemas fascinantes esperando para serem resol idos.
4er hacker 0 muito di'ertido, mas 0 um tipo de di'ers!o que necessita de muito esfor1o. 7ara ha'er esfor1o 0 necess&rio moti'a1!o. #tletas de sucesso retiram sua moti'a1!o de uma esp0cie de pra3er f9sico em trabalhar seus corpos, em tentar ultrapassar seus pr5prios limites f9sicos. #nalogamente, para ser um hacker 'oc( precisa ter uma emo1!o b&sica em resol'er problemas, afiar suas habilidades e e"ercitar sua intelig(ncia. 4e 'oc( n!o 0 o tipo de pessoa que se sente assim naturalmente, 'oc( precisar& se tornar uma para ser um hacker. 4en!o, 'oc( 'er& sua energia para "hackear" sendo es'a9da por distra12es como se"o, dinheiro e apro'a1!o social. (Foc( tamb0m tem que desen'ol'er uma esp0cie de f0 na sua pr5pria capacidade de aprendi3ado ** crer que, mesmo que 'oc( n!o saiba tudo o que precisa para resol'er um problema, se souber uma parte e aprender a partir disso, conseguir& aprender o suficiente para resol'er a pr5"ima parte ** e assim por diante, at0 que 'oc( termine.)
mant(*lo alimentado e pagar o aluguel e computadores. G!o 0 inconsistente usar suas habilidades de hacker para sustentar a fam9lia ou mesmo ficar rico, contanto que 'oc( n!o esque1a que 0 um hacker.)
7ortanto, 'oc( tem que aprender a desconfiar de atitude e respeitar todo tipo de compet(ncia. 8ackers n!o dei"am posers gastar seu tempo, mas eles idolatram compet(ncia ** especialmente compet(ncia em "hackear", mas compet(ncia em qualquer coisa 0 boa. # compet(ncia em habilidades que poucos conseguem dominar 0 especialmente boa, e compet(ncia em habilidades que in'ol'em agude3a mental, per9cia e concentra1!o 0 a melhor. 4e 'oc( re'erenciar compet(ncia, gostar& de desen'ol'(*la em si mesmo ** o trabalho duro e dedica1!o se tornar& uma esp0cie de um intenso )ogo, ao in'0s de trabalho repetiti'o. isso 0 'ital para se tornar um hacker.
1. Aprenda a pro*ramar.
ssa 0, claro, a habilidade b&sica do hacker. m KLLM, a linguagem que 'oc( absolutamente precisa aprender 0 C (apesar de n!o ser a que 'oc( de'e aprender primeiro). >as 'oc( n!o 0 um hacker e nem mesmo um programador se 'oc( souber apenas uma linguagem ** 'oc( tem que aprender a pensar sobre problemas de programa1!o de um modo geral, independentemente de qualquer linguagem. 7ara ser um hacker de 'erdade, 'oc( precisa ter chegado ao ponto de conseguir aprender uma no'a linguagem em quest!o de dias, relacionando o que est& no manual ao que 'oc( )& sabe. :sso significa que 'oc( de'e aprender '&rias linguagens bem diferentes. #l0m de C, 'oc( tamb0m de'e aprender pelo menos J:47 e 7erl (e Ja'a est& tentando pegar um lugar nessa lista). #l0m de serem as linguagens mais importantes para hackear, cada uma delas representa abordagens I programa1a!o bem diferentes, e todas o educar!o em pontos importantes. u nao posso lhe dar instru12es completas sobre como aprender a programar aqui ** 0 uma habilidade comple"a. >as eu posso lhe di3er que li'ros e cursos tamb0m n!o ser'ir!o (muitos, tal'e3 a maioria dos melhores hacker s!o auto*didatas). / que ser'ir& 0 (a) ler cdigo e (b) escrever cdigo. #prender a programar 0 como aprender a escre'er bem em linguagem natural. # melhor maneira 0 ler um pouco dos mestres da forma, escre'er algumas coisas, ler mais um monte, escre'er mais um monte, ler mais um monte, escre'er... e repetir at0 que seu estilo comece a desen'ol'er o tipo de for1a e economia que 'oc( '( em seus modelos. #char bom c5digo para ler costuma'a ser dif9cil, porque ha'ia poucos programas grandes dispon9'eis em c5digo*fonte para que hackers no'atos pudessem ler e me"er.
ssa situa1!o mudou dramaticamenteA open*source soft-are (soft-are com c5digo* fonte aberto), ferramentas de programa1!o, e sistemas operacionais (todos feitos por hackers) est!o amplamente dispon9'eis atualmente.
>as apenas ter uma home page n!o chega nem perto de torn&*lo um hacker. # %eb est& repleta de home pages. # maioria delas 0 in=til, porcaria sem conte=do ** porcaria muito bem apresentada, note bem, mas porcaria mesmo assim (mais sobre esse assunto em Ehe 8E>J 8ell 7age). 7ara 'aler a pena, sua p&gina de'e ter contedo ** de'e ser interessante e,ou =til para outros hackers. isso nos le'a ao pr5"imo assunto...
depura1!o. 7or isso, qualquer autor de open*source soft-are que pense lhe dir& que bons beta*testers (que saibam descre'er sintomas claramente, locali3ar problemas, tolerar bugs em um lan1amento apressado, e este)am dispostos a aplicar algumas rotinas de diagn5stico) 'alem seu peso em ouro. #t0 mesmo um desses beta*testers pode fa3er a diferen1a entre uma fase de depura1!o 'irar um longo e cansati'o pesadelo, ou ser apenas um aborrecimento saud&'el. 4e 'oc( 0 um no'ato, tente achar um programa sob desen'ol'imento em que 'oc( este)a interessado e se)a um bom beta*tester. 8& um progress!o natural de a)udar a testar programas para a)udar a depurar e depois a)udar a modific&*los. Foc( aprender& muito assim, e criar& um bom karma com pessoas que lhe a)udar!o depois.
A Cone,#o Hacker6"erd
Contrariamente ao mito popular, 'oc( n!o tem que ser um nerd para ser um hacker. #)uda, entretanto, e muitos hackers s!o de fato nerds. 4er um proscrito social o a)uda a se manter concentrado nas coisas realmente importantes, como pensar e "hackear". 7or isso, muitos hackers adotaram o r5tulo "nerd", e at0 mesmo usam o termo (mais duro) "geek" como um s9mbolo de orgulho ** 0 um modo de declarar sua independ(ncia de e"pectati'as sociais normais. Fe)a Ehe Peek 7age para discuss!o e"tensi'a. 4e 'oc( consegue se concentrar o suficiente em hackear para ser bom nisso, e ainda ter uma 'ida, est& 5timo. :sso 0 bem mais f&cil ho)e do que quando era um no'ato nos anos MDA atualmente a cultura mainstream 0 muito mais recepti'a a tecno*nerds. 8& at0 mesmo um n=mero crescente de pessoas que percebem que hackers s!o, freqentemente, amantes e c<n)uges de alta qualidade. Pirl@s Puide to Peek PuSs. 4e hackear o atrai porque 'oc( n!o 'i'e, tudo bem ** pelo menos 'oc( n!o ter& problemas para se concentrar. Eal'e3 'oc( consiga uma 'ida normal depois.
G!o use um nome de usu&rio ou pseud<nimo bobo e grandioso. G!o entre em flame -ars ("guerrinhas") na ;senet (ou em qualquer outro lugar). G!o se auto*intitule um "cSberpunk", e n!o perca seu tempo com algu0m que o fa1a. G!o poste ou escre'e email cheio de erros de ortografia e gram&tica.
# =nica reputa1!o que 'oc( conseguir& fa3endo alguma dessas coisas 0 a de um t-it Qum chato, geralmente filtrado nos grupos de discuss!oR. 8ackers tem boa mem5ria ** pode le'ar anos antes que 'oc( se reabilite o suficiente para ser aceito.
Outros 7ecursos
/ Joginataka tem algumas coisas a di3er sobre o treinamento e a atitude adequados a um hacker de ;ni". u tamb0m escre'i # Nrief 8istorS /f 8ackerdom. 7eter 4eebach mant0m um e"celente 8acker F#$ para gerentes que n!o sabem como lidar com hackers. u escre'i um documento, Ehe Cathedral and the Na3aar ("# Catedral e o Na3ar"), que e"plica muito sobre como o Jinu" e as culturas de open*source soft-are funcionam.
Per*untas 8req9entes
:; <oc) me ensina como =hackear=?
Oesde que publiquei essa p&gina, recebi '&rios pedidos por semana de pessoas querendo que eu "ensinasse tudo sobre hacking". :nfeli3mente, eu n!o tenho tempo nem energia para issoA meus pr5prios pro)etos hackers tomam KKDU do meu tempo. >esmo se eu fi3esse, hacking 0 uma atitude e uma habilidade na qual 'oc( tem que basicamente ser auto*didata. Foc( 'er& que, embora hackers de 'erdade queiram lhe a)udar, eles n!o o respeitar!o se 'oc( pedir "mastigado" tudo que eles sabem. #prenda algumas coisas primeiro. >ostre que 'oc( est& tentando, que 'oc( 0 capa3 de aprender so3inho. Oepois fa1a perguntas aos hackers que encontrar.
$uando 'oc( esti'er pronto pra come1ar a programar, eu recomendaria come1ar com 7erl ou 7Sthon. C 0 realmente importante, mas muito mais dif9cil.