Підручник як стати хакером - основні навички хакера

Як стати Хакером - Основні навички хакера


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


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

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

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

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

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

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

Для додаткової інформації про вивчення Unix див. The Loginataka.

Щоб дістати в свої руки Linux, див. Where can I get Linux ( "Як я можу отримати Linux").

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

Схожі статті