Можна знайти купу визначення для терміну «хакер», більшість з яких пов’язана з технічною компетентністю і задоволенням, одержуваним від вирішення проблем та подолання перешкод. Але якщо ж ви хочете знати, як стати хакером, то дійсно істотними є два аспекти.

Є певна спільнота, якась загальна культура, що складається з досвідчених програмістів і мережевих чародіїв, яка в свою чергу веде свою історію від перших мінікомп’ютерів з поділом часу і від самих ранніх експериментів з мережею ARPAnet. Члени цієї культури і дали народження терміну «хакер». Хакери побудували Internet. Хакери зробили операційну систему Unix тим, чим вона є сьогодні. Хакери ведуть Usenet. Хакери забезпечують роботу World Wide Web. Якщо ви є частиною цієї культури, якщо ви внесли в неї свій внесок, та інші члени цієї культури знають — хто ви і називають вас хакером, то ви — хакер.

Хакерський погляд на світ не обмежується лише культурою хакерів-програмістів. Є люди, які застосовують хакерський підхід і до інших речей, на зразок електроніки або музики. Насправді, ви можете зустрітися з цим підходом на вищих рівнях будь-якої науки або мистецтва. Софтверні хакери визнають таких близьких за духом людей і теж можуть називати їх «хакерами», деякі навіть проголошують, що хакерська природа насправді не залежить від середовища, в якій працює хакер.

Є й інша група людей, голосно називають себе хакерами, але вони ними не є. Це ті люди (головним чином, молодь чоловічої статі), кого тягнуть за злом комп’ютерних та телефонних систем. Справжні хакери називають таких людей «крэкерами» і не бажають мати з ними нічого спільного. Справжні хакери в більшості своїй вважають крэкеров лінивими, безвідповідальними і не дуже розумними. Те, що людина здатна зламати систему безпеки, не робить його хакером, точно так само як вміння красти тачки не робить вас автомобільним майстром. До нещастя багато журналісти і письменники введені в оману і використовують слово «хакер» для опису крэкеров, і це безмежно дратує справжніх хакерів.

Головне розходження в наступному: хакери будують речі, а крэкеры їх ламають.

Якщо ви хочете стати хакером, то продовжуйте читання. Якщо ви хочете стати крэкером, то вирушайте читати ньюз-групу alt.2600и приготуйтеся відсидіти від п’яти до десяти років у в’язниці, коли виявите, що не настільки вправні наскільки вважали.

Хакерський підхід.

Хакери вирішують проблеми і будують речі, вони вірять в свободу і добровільну взаємодопомога. Для того, щоб вас сприймали як хакер, ви повинні вести себе так, як якщо б це була ваша власна позиція. А для того, щоб вести себе так, ніби це ваша позиція, ви повинні дійсно вірити в цю позицію.

Але якщо ви розраховуєте культивувати хакерські підходи лише для отримання визнання в культурі, то ви втратили суть.

Стати такою людиною, хто вірить у такі речі — це важливо для вас, тому що це допоможе вам навчитися і підтримає прагнення. Як і в будь-якому іншому творчості, найефективніший спосіб стати майстром — це наслідувати світогляду майстрів, не тільки інтелектуально, але й емоційно.

Так що якщо ви хочете стати хакером, то повторюйте такі речі, поки не повірите в них:

Світ повний дивних проблем, що чекають свого рішення.
Бути хакером — це величезне задоволення, але це задоволення такого роду, яке вимагає маси зусиль. Для таких зусиль потрібна мотивація. Атлети-чемпіони черпають мотивацію свого роду фізичного задоволення, одержуваного від доведення власного тіла до досконалості, від подолання власних фізичних меж. Подібно до цього, щоб бути хакером ви повинні отримувати максимум задоволень від рішення проблем, від відточування своїх навичок, від тренування свого інтелекту.

Якщо ж ви не з тих, хто відчуває подібні речі природним чином, то вам знадобитися стати таким, щоб стати хакером. В іншому випадку ви виявите, що вся ваша хакерська енергія вичерпана такими подразниками, як секс, гроші і успіх у суспільстві.

Ви також повинні розвинути щось віри у власні здібності до навчання. Віри в те, що навіть якщо ви і не знаєте всього, що необхідно для вирішення проблеми, але якщо ви освоїли лише шматочок і на цьому навчилися, то вже знаєте достатньо, щоб вирішити і наступний шматок — і так далі, поки все не буде зроблено.

Ніхто і ніколи не повинен вирішувати проблему двічі.

Творчі мізки — це цінний і обмежений ресурс. Не варто розтрачувати їх на перевинайдення колеса, коли навколо чекає так багато чудових нових проблем.

Щоб вести себе як хакер, ви повинні вірити, що час роздумів інших хакерів — дорогоцінність, причому настільки, що майже моральним обов’язком для вас є поділитися інформацією. Вирішити проблеми, а потім просто роздати рішення, щоб інші хакери могли вирішувати нові проблеми замість того, щоб безупинно повертатися до старих.

Від вас не потрібно вірити, що ви зобов’язані роздати всі плоди своєї творчості, хоча ті хакери, хто так робить, — найбільш шановані серед інших хакерів. З цінностями хакерів цілком узгоджується продаж плодів творчості, достатня для забезпечення вас їжею, дахом і комп’ютерами. Це узгоджується і з використанням ваших хакерських навиків для підтримки сім’ї та навіть для того, щоб розбагатіти, поки займаючись цим ви не забуваєте, що є хакером.

Нудьга і рутина — це зло.

Хакери (і взагалі творчі люди) ніколи не повинні займати нудними речами або грузнути в рутині монотонної роботи, тому що коли це відбувається, то це означає, що вони не роблять того, що можуть робити лише вони — вирішувати нові проблеми. Подібне марнотратство шкодить кожному. Тому нудьга і рутина — це не просто неприємні речі, це зло.

Щоб вести себе як хакер, ви повинні вірити в це так, щоб бажати автоматизації всіх нудних дрібниць настільки, наскільки можливо, і не тільки для себе, але і для всіх (особливо для інших хакерів).

Але іноді хакери займаються речами, які можуть здатися монотонними або нудними сторонньому спостерігачеві, як вправи для прочищення мізків або ті ж для вироблення навику.Або ж для придбання особливого роду досвіду, який неможливо отримати іншим шляхом. Але все це робиться за власним вибором, ніхто з вміють думати ніколи не повинен примушуватися до нудної роботи.

Свобода — це благо.

Хакери за своєю природою антиавторитарны. Будь-хто, хто може віддати вам накази, може зупинити рішення вами будь-який з проблем, вас очаровавших. І, враховуючи спосіб мислення авторитарних мізків, знайдуться які-небудь приголомшливо ідіотські причини, щоб це зробити. Так що з авторитарним підходом слід битися усюди, де ви його зустрінете, щоб він не душив вас та інших хакерів.

Це не те ж саме, що битися з усіма владами. Дітям потрібно керівництво, злочинність потрібно стримувати. Хакер може погоджуватися на прийняття якогось роду керівництва, коли є можливість отримати те, що потрібно і не особливо багато часу витрачається на виконання наказів. Але це обмежена розумна угода, щось на зразок особистої поступки.

Авторитаризм процвітає в умовах цензури і секретності. Його адепти не вірять в добровільна співпраця і в розподіл інформацією, їм подобатися тільки таке «співробітництво», яким вони керують. Тому, щоб вести себе як хакер, ви повинні виробити в собі інстинктивне неприйняття цензури, секретності, а також застосування сили або брехні для примусу відповідальних дорослих людей. І діяти виходячи з такої віри.

Позиція не замінить компетентність.

Для того, щоб бути хакером ви повинні розвинути деякі з перерахованих підходів. Але схопивши лише підходи ви станете хакером не більшою мірою, ніж спортсменом-рекордсменом або рок-зіркою. Для того, щоб стати хакером, потрібно інтелект, практика, самовідданість і тяжка праця.

Тому вам доведеться навчитися з недовірою ставитися до позиції, але з повагою до компетентності будь-якого роду. Хакери не дозволяють позерам тринькати їх час, але вони поклоняються компетентності, особливо хакерської компетентності, але компетентність хороша в чому завгодно. Особливо цінується володіння такими необхідними навичками, які мало у кого є. А найкраще — це компетентність в таких навичках, які вимагають проникливого розуму, вправності і концентрації.

Якщо ви обожнюєте компетентність, то ви отримуєте насолоду, розвиваючи її в собі. Тяжка праця і відданість стануть для вас захоплюючою грою, а не рутиною. І це життєво необхідно для того, щоб стати хакером.
Основні навички.

Хакерський погляд на життя — це важливо, але майстерність — багато разів важливіше. Позиція не замінить компетентності, і існує певний набір базових навичок, якими необхідно володіти, перш ніж будь-який з хакерів помыслит назвати хакером і вас.

Цей базовий набір з часом потихеньку змінюється по мірі того, як технологія породжує нові навички і робить непотрібними застарілі. Наприклад, зазвичай згадувалося програмування на машинній мові, але аж до недавнього часу в набір не включали мову HTML. Однак, на сьогоднішній комплект цілком виразно входять наступні компоненти :

Навчитеся програмувати.
Це, звичайно ж, фундаментальний хакерський навик. Якщо ж ви не знаєте жодного комп’ютерного мови, рекомендуємо почати з мови Python. Він зрозуміло розроблений, добре документований і щодо доброзичливий до новачків. Незважаючи на те, що він хороший для першої мови, це не просто іграшка. Це потужний і гнучкий мову, добре підходить для великих об’єктів.

Але знайте, що ви не досягнете хакерського рівня майстерності (або рівня хорошого програміста), якщо будете знати лише одну мову програмування. Вам необхідно навчитися мислити про проблеми програмування взагалі, незалежно від будь-якої конкретної мови. Щоб бути справжнім хакером, вам треба досягти рівня, на якому ви зможете вивчити нову мову за кілька днів, співвідносячи положення керівництва з тим, що вам вже відомо. Це означає, що вам слід вивчити кілька дуже різних мов.

Якщо ви займаєтеся серйозним програмуванням, то вам доведеться вивчити Сі, основний мову операційної системи Unix (хоча це і не ту мову, який слід намагатися вивчити першим). Інші мови першорядної важливості для хакерів — це Perl та Lisp. Мова Perl має сенс вивчити з практичних міркувань: він дуже широко використовується для активних web-сторінок і системного адміністрування, так що навіть якщо вам ніколи не доведеться писати на Perl, ви повинні навчитися його читати. Lisp варто вивчити заради тих глибоких освічених знань, які ви здобудете, коли нарешті його засвоїте. Ці пізнання зроблять вас чудовим програмістом на все життя, навіть якщо ви ніколи особливо і не будете використовувати сам Lisp.

Краще всього, насправді, вивчити всі чотири цих мови (Python, C, Perl і Lisp). Крім того, що це найважливіші хакерські мови, вони демонструють дуже різні підходи до програмування і кожен з них навчить вас цінних речей.

Ми не можемо дати тут розгорнуті інструкції щодо того, як навчитися програмувати — це складне мистецтво. Але можемо сказати вам, що книги і курси цього не навчать (багато хто, можливо, більшість хакерів — це самоучки). Що навчає, так це читання кодів і написання кодів.

Навчитися програмувати — це як навчитися писати гарним природним мовою. найкращий спосіб для цього — почитати щось з написаного майстрами, потім написати трохи самому; прочитати побільше, написати трохи побільше; прочитати ще більше, написати ще побільше… І повторювати цей процес до тих пір, поки ваші програми не розвинуться щось потужне і економічне.

Відшукати хороші коди для читання раніше було складно, тому що було дуже мало великих програм, доступних у вихідних кодах і придатних для вивчення і метушні юних хакерів. Нині ситуація кардинально змінилася: програми у вихідних кодах, программистский інструментарій та операційні системи тепер широко доступні. Тому…

Дістаньте один з варіантів Unix у вихідних кодах, навчитеся використовувати його і з ним працювати.
Вважаємо, що ви маєте персональний комп’ютер або можете отримати до нього доступ. Єдиний і найважливіший крок, який будь-хто з новачків може зробити для придбання хакерських навиків, — це роздобути копію Linux або однією з версій BSD-Unix, встановити її на персональній машині і запустити.

Так, у світі є й інші операційні системи, окрім Unix. Але їх поширюють в двійковому вигляді — ви не зможете читати коди і не зможете їх модифікувати. Вчитися хакерства на машинах під DOS, Windows або MacOS — це все одно, що вчитися танцювати повністю загіпсованим.

Крім того, Unix — це операційна система Internet. Хоча ви можете навчитися використовувати Internet і не знаючи Unix, але ви не можете бути Internet-хакером, не розуміючи Unix. З цієї самої причини сьогоднішня хакерська культура є вельми сильно Unix-сконцентрованою. (Це не завжди було так, і декому з колишніх хакерів такий стан справ не дуже до вподоби, але симбіоз між Unix та Internet став настільки міцним, що навіть сили Microsoft не вистачає, щоб серйозно на це вплинути).

Так що заводите собі Unix, краще всього Linux, але є й інші варіанти (ви можете працювати як під Linux, так і під DOS/Windows на одній і тій же машині). Вивчіть цю ОС. Працюйте з нею. Возитеся з нею. Спілкуйтеся через неї з Internet. Читайте коди. Змінюйте їх. Ви отримаєте такий программистский інструментарій (включаючи C, Lisp і Perl), про який будь-яка з ОС Microsoft і не мріяла. Ви отримаєте задоволення, і ви засвоїте більше знань, ніж припускали в процесі навчання, коли озирніться на цей процес вже будучи майстром-хакером.

Навчитеся використовувати World Wide Web і писати HTML.
Більшість з тих речей, що створені хакерської культурою роблять свою справу невидимо, допомагаючи працювати фабрикам, установам і університетам без скільки-небудь помітного впливу на життя не-хакерів. WWW — це одне велике виключення, гігантська блискуча хакерська іграшка, яка навіть за визнанням політиків змінює світ. Лише з однієї цієї причини (а також безлічі інших приємних причин) вам потрібно навчитися працювати з Web.

Це не означає, що потрібно просто навчитися керувати браузером (це будь вміє), але й навчитися писати HTML, мовою розмітки документів для Web. Якщо ви ще не вмієте програмувати, то писання на HTML навчить ваше мислення деяким корисним звичкам, які стануть в нагоді при освоєнні мов програмування. Так що робіть домашню сторінку. Але просте володіння домашньої сторінки навіть і близько не поведе вас до того, щоб стати хакером. У Web повним-повно домашніх сторінок. Більшість з них — це безглуздий, непотрібний мотлох. Дуже яскраво і привабливо оформлений мотлох, безперечно, але все одно непотріб.

Щоб бути вартим, ваша сторінка повинна мати «контент» — зміст. Вона повинна бути цікавою та/або корисною для інших хакерів.
Хакерська культура.
Як і більшість культур без грошової економіки, Хакерландия будується на репутації. Ви намагаєтеся вирішити цікаві проблеми, але наскільки вони цікаві, і наскільки хороші ваші рішення, — це щось таке, про що зазвичай можуть судити тільки (в технічному сенсі) рівні вам або перевершують вас.

Таким чином, коли ви граєте в хакерські гри, ви вчіться вести рахунок головним чином з того, що думають про вашу майстерність інші (саме тому ви не будете хакером до тих пір, поки вас не стануть так називати інші хакери). Даний факт затінюють як образ хакера-одинака, так і певні табу хакерський культури, не допускають, щоб чиєсь его або зовнішні визнання взагалі могли бути мотивацією для хакера.

Зокрема Хакерландия — це те, що антропологи називають «культурою дарів». Ви заробляєте статус і репутацію не тим, що керуєте іншими людьми, і не тим, що прекрасні, і не тим, що маєте речі, які є предметом жадання інших. Але швидше тим, що роздаєте речі. Зокрема, обдаровуючи своїм часом, своєю майстерністю і результатами своєї творчості.

Є п’ять основних типів речей, які ви можете робити, щоб вас поважали хакери:

Пишіть програм з відкритим вихідним кодом.

Перше — це писати програми, які інші хакери вважають цікавими або корисними, і роздавати вихідні коди програм для використання всієї хакерської культурою.

Таку роботу називали «вільно доступним програмним забезпеченням» (free software), але це бентежить деяких людей, точно не розуміють, що мається на увазі за словом «вільно-доступний». Тепер для такого програмного забезпечення багато хто воліє використовувати термін «з відкритим кодом» або «open-source software».Найбільш шановані напівбоги Хакерландии — це люди, які написали великі і талановиті програми, що відповідають самим широким потребам, і які роздали їх усім, так що кожен тепер їх використовує.

Допомагайте тестувати і відлагоджувати програми з відкритим вихідним кодом.

Шановані також ті, хто тестує і налагоджує програми з відкритим вихідним кодом. В цьому недосконалому світі ми неминуче витрачаємо найбільшу частину часу розробки програми на фазу налагодження. Саме тому будь-яка думаюча автор програм з відкритим кодом скаже вам, що хороші бета-тестери (знають, як виразно описати симптоми, добре локализующие проблеми, здатні виправляти помилки і застосовують кілька простих діагностичних підпрограм) цінуються на вагу золота. Всього один такий чоловік може перетворити фазу налагодження з затягнутого виснажливого кошмар в просто корисну затримку.

Якщо ви новачок, то спробуйте знайти розроблювану програму, яка вам цікава, і стати хорошим бета-тестером. Існує цілком природний шлях просування від допомоги в тестуванні програм допомоги в їх налагодження і далі до допомоги їх модифікації. Ви багато чому навчитеся таким способом і породите добру карму у відносинах з людьми, які допоможуть вам згодом.

Публікуйте корисну інформацію.

Ще одна хороша річ — відбирати і накопичувати корисну і цікаву інформацію на Web-сторінках або документів типу Чапи (FAQ або «найчастіші запитання та відповіді»), і робити їх загальнодоступними.

Провідні основних технічних ЧаВО майже настільки ж шановані, як і автори програм з відкритим кінцем кодом.

Допомагайте підтримувати функціонування інфраструктури.

Хакерська культура (і інженерна розробка Internet) заснована на добровольцях. Є маса необхідною, але не особливо ефективної роботи, яку потрібно робити, щоб підтримувати процес: адміністрування розсильних листів, модерування новинних груп, управління великими архівами програмного забезпечення, розробка RFC та інших технічних стандартів.

Люди, які добре роблять такого роду речі, глибоко шановані, оскільки кожен знає, що подібна робота вимагає купу часу і не так цікава, як ігри з кодами. Це робота свідчить про самовідданості.

Служіть самої хакерської культури.

Нарешті, ви можете служити і поширювати саму культуру. Але цим не варто займатися до тих пір, поки ви не поваритесь в цьому достатній час і не станете добре відомі завдяки одній із чотирьох перших речей.

У хакерської культури немає явних лідерів, але тут є «культурні герої», «племінні старійшини», історики і оратори. Коли ви досить довго поживете в цих траншеях, то зможете вирости в одного з таких людей. Але остерігайтеся: хакери насторожено ставляться до своїх крикливим племінним старійшинам, так що видиме досягнення такого роду слави таїть в собі небезпеку. Замість того, щоб прагнути до цього, вам краще як би не дбати про це і тоді це саме впаде на коліна, а вже потім можна стати скромним і милостивим у своєму статусі.
Хакер — «придурок»?
Всупереч поширеному міфу, вам не обов’язково бути дурнем, щоб бути хакером. Це, однак, допомагає, і багато хакери дійсно «придурки». Статус ізгоя суспільства допомагає вам залишатися зосередженими на дійсно важливих речах, таких як роздуми і хакерство.

Саме з цієї причини багато хакери носять ярлик «дурень» і навіть використовують як знак доблесті більш грубий термін «кретин» — це їх спосіб декларації свого незалежності від загальноприйнятих у суспільстві оцінок.

Якщо ви здатні достатньою мірою зосередитися на хакерстве, досягати тут помітних результатів і при цьому мати особисте життя — що ж, чудово. Сьогодні це набагато легше. Культурний мейнстрім став тепер набагато дружелюбніше до техно-недоумком. Є навіть зростаюча кількість людей, що виявляють, що хакери часто можуть бути цілком якісними коханцями і подружжям.

Якщо ж вас тягне до хакерства з тієї причини, що у вас немає особистого життя, що ж, і це непогано. Принаймні, у вас не буде проблем з концентрацією. А особисте життя — як знати, може вона прийде пізніше.