- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF107:Феномен хакерства
Материал из Linuxformat.
- История хакерства
Содержание |
Хакеры: как все начиналось
- Мир хакеров не материализовался из воздуха. Ричард Хиллзли разбирается, откуда он взялся, каков он сейчас и каким будет завтра.
Когда журналист Стивен Леви [Steven Levy] получил от журнала Rolling Stone задание разоблачить «разросшийся, враждебный и антиобщественный» мир компьютерных хакеров, он обнаружил не более чем скромное полуподпольное движение. Многие студенты, с которыми он беседовал тогда, позже стали ключевыми фигурами революции свободного ПО. Однако в то время «хакеры» считались отщепенцами, не слишком отягченными моралью, но дорвавшимися до знаний, недоступных другим. «Общественное мнение» полагало, что они затевают применить эти знания с целью вывернуть мир наизнанку… а то и хуже.
Леви обнаружил нечто совершенно иное. «Они не были асоциальными выродками: это были обаятельные люди, стремившиеся к великому. Это были художники, исследователи, первопроходцы. Они выделывали на компьютере невероятные вещи, и это восхищало меня». Книга, написанная Леви по результатам этого исследования, Hackers: Heroes of the Computer Revolution [Хакеры: герои компьютерной революции], была опубликована в 1984 году. Книга стала классикой оценки влиятельной субкультуры и ее вклада в развитие мира компьютеров.
От истоков
Леви отыскал корни хакерской культуры в Массачусетском технологическом институте [Massachusetts Institute of Technology, MIT]. Движение зародилось среди студентов, входивших в состав подкомитета энергетики и сигнализации (Signals and Power, S&P) клуба технического моделирования железных дорог (Tech Model Railroad Club, TMRC) в конце 50-х – начале 60-х годов.
«Там-то я и наткнулся на источник всех этих компьютерных дебатов, – вспоминал Леви. – Ее [железнодорожной модели] основу составлял лабиринт переключателей и проводов, обеспечивавших управление поездами. Эти люди были первыми, назвавшими себя “хакерами” в технологическом смысле».
За моделью «стояла Система, похожая на совместное порождение Руби Голдберга [американский мультипликатор того времени] и Вернера фон Брауна», – писал Леви, – причем система постоянно улучшалась, переделывалась, оттачивалась, а иногда «падала» – на клубном жаргоне, ломалась. Люди из S&P были одержимы проблемами Системы, ее растущей сложностью; влиянием изменения одной части на все остальное; и достижением оптимального взаимодействия частей».
Полуночные бродяги
Хакеров из S&P прозвали еще «Комитетом ночных реквизиций», потому что «…если для оснащения Системы какой-либо новой функцией нужен был комплект диодов или пара добавочных реле, несколько членов S&P могли, дождавшись темноты, добыть недостающие детали там, где они имелись. Ни один из хакеров, людей как правило щепетильно-честных, не отождествлял этого с воровством».
Эти вылазки неминуемо привели к обнаружению новейшего компьютера TX-0 в корпусе № 26 института, и хакеры начали осаждать компьютер по ночам, «…когда ни один человек в здравом уме не выбрал бы час машинного времени в расписании, которое по пятницам вывешивалось рядом с кондиционером в лаборатории RLE… Хакеры TMRC, вскоре переименованные в “хакеров TX-0”, изменили стиль жизни, вобрав в нее компьютер».
Один из хакеров MIT, Боб Сондерс [Bob Saunders], позднее объяснял Леви: «Другие вовсю учились, проводя дни напролет в четырехэтажных корпусах за смрадными химическими опытами, столкновениями элементарных частиц и всяким таким. А мы просто не обращали внимания на их занятия, нам это было неинтересно. Они изучали свое, мы – свое. А то, что большая часть нашей деятельности оказалась вне рамок учебного плана, нас мало заботило».
Политические и социальные идеалы хакеров вращались вокруг машины. Ричарда Гринблатта [Richard Greenblatt], иногда называемого «хакером из хакеров», отчислили с курса: он так увлекся компьютером, что ему было не до лекций с экзаменами. Говорят, Гринблатт нечасто вспоминал о личной гигиене и отличался внешней непрезентабельностью, зато именно он написал первую шахматную программу и создал Maclisp, диалект Lisp для проекта MAC на PDP-6. Он стал также соавтором революционной «Несовместимой системы с разделением времени» (Incompatible Timesharing System, ITS), ставшей разносчиком хакерского программирования. Кроме того, он, совместно с Томом Найтом [Tom Knight], приложил руку к созданию Lisp Machine, первой коммерческой однопользовательской рабочей станции.
Первые хакеры продолжали работу: это они придумали компьютерные игры, музыкальные программы и фокусы с дисплеями. Вскоре их взяла под крыло лаборатория искусственного интеллекта (Artificial Intelligence, AI) под руководством профессоров Марвина Мински [Marvin Minsky] и Джона Маккарти [McCarthy], изобретателя Lisp. В 1963 году AI Group вошла в состав институтского проекта MAC. Аббревиатура раскрывалась двояко: Multiple Access Computing [коллективные вычисления] и Machine Aided Cognition [компьютерное познание]. Проект финансировало Агентство по перспективным исследовательским программам (Defense Advanced Research Projects Agency, DARPA) Министерства обороны США.
Маккарти и Мински всячески поощряли инициативу, пытливость и поиски сотрудников лаборатории, предоставив группе из десяти-двенадцати хакеров AI полную свободу действий, даже после расширения сферы исследований AI Group. В 1970 году Лаборатория искусственного интеллекта MIT (или AI Lab) получила самостоятельность, но исследования компьютерных технологий продолжались.
В среде хакеров TMRC и AI Lab сформировался своеобразный кодекс чести, позже известный как Моральный кодекс хакера (The Hacker Ethic). Сленг, на котором хакеры общались между собой, был запечатлен в институтском файле jargon.txt и стал основой «Словаря хакера». Хакеры MIT впервые определили «хак» как «быстро написанную короткую программу, обеспечивающую результат» или как «написание программ не просто ради практической цели, но и ради удовольствия от самого процесса». Они считали хакером того, кто «программирует самозабвенно и с наслаждением, а не разводит об этом теории».
Пока Леви писал свою книгу, обстановка в AI Lab менялась, отражая изменения в окружающем мире. Благодаря гибкости и изяществу, любимым языком программирования у хакеров был Lisp, требующий много памяти. Это побудило Гринблатта и Найта, двух ключевых сотрудников AI Lab, основать отдельный проект. Lisp Machine была рабочей станцией, целиком посвященной Lisp, написанной на программистов; она объединялась в сети Lisp-машин. Мало кто тогда догадывался об этом, но Lisp-машина – в своем роде кульминация достижений хакеров – стала началом конца их образа жизни. Никто не жалел об этом так, как Ричард Столлмен, котрого Леви назвал «последним из подлинных хакеров». Для него AI Lab была всем: обществом, семьей и целью жизни.
Столлмен влился в AI Lab в 1970 году и вскоре стал одной из ее звезд: он непрерывно переписывал и совершенствовал разные части системы. В частности, он работал над редактором TECO, позднее переросшим в Emacs (от Editing MACros). Однако в 80-х растущая коммерциализация Lisp-машины компанией Symbolics, основанной бывшими сотрудниками AI Lab, стала соблазном для столлменовского сообщества хакеров. Леви приводит записки Столлмена:
«Больно вспоминать то время. В лаборатории остались профессора, студенты и исследователи – «не-хакеры», они не знали и знать не хотели, как обращаться с системой и оборудованием. Машины ломались и не ремонтировались: иногда их просто выбрасывали. Необходимые изменения в программном обеспечении не делались. «Не-хакеры» реагировали на это переходом на коммерческие системы, принося с ними фашизм и лицензионные соглашения. Я часто бродил по пустым ночным комнатам, которые прежде были полны народа, и думал: “Бедная AI Lab! Ты умираешь, и мне тебя не спасти…”».
Просто забава
В ответ на распад AI Lab Столлмен основал проект GNU, Фонд свободного ПО [Free Software Foundation, FSF] и разработал Универсальную общественную лицензию [General Public License, GPL], под которой ныне выпускается большинство открытых и свободных программ. Целью GNU, начатого Столлменом в 1983 году, стало создание «с нуля» абсолютно свободной операционной системы.
«Единственная причина, побуждающая нас создать целую операционную систему, – говорил Столлмен, – это убеждение в том, что операционная система должна быть свободной полностью, а не на 90%. Если не принять свободу как принцип, всегда найдется повод сделать исключение. По той или иной причине, практические соображения рано или поздно вынуждают делать исключения».
Девятью годами позже Линус Торвальдс объявил группе usenet comp.os.minix о предстоящем создании Linux: «Я пишу (свободную) операционную систему (просто для забавы, не такую большую и профессиональную, как GNU) для клонов 386(486) AT».
Истоки культуры, из которой выросли Linux и движение свободного ПО, восходят непосредственно к AI Lab и Моральному кодексу хакера. Особый вклад Столлмена состоит в предвидении юридических и проприетарных препятствий распространению идей свободного ПО. Язык общения на таких проектах (да и во всей ПО-индустрии) в значительной мере сформировался под влиянием трудов Столлмена. Его отношение к законам и патентам, окружающим мир ПО, можно выразить одним из принципов Морального кодекса хакера: «Доступ к компьютерам – как и любые сведения, необходимые для познания мира – должен быть неограниченным и всеобщим».
Основа замысла
Успех коллективной модели разработки программного обеспечения движением свободного ПО, прямым наследником хакерской культуры AI Lab, изменил облик всей индустрии программирования. Достижения GNU/Linux, Apache, Perl и других свободных проектов открывают перед компьютерным миром новые горизонты.
Столь разные организации, как Intel, Novell, NASA, Sun Microsystems и IBM, не только вносят идеи и публикуют ПО на условиях GPL и ее вариантов, но и активно участвуют в проектах свободного ПО к двойной выгоде: их собственных пользователей и сообщества. Их мотивы не всегда альтруистичны, но на результат это не влияет. Свободное и открытое ПО (Free/Libre and Open Source Software, FLOSS) стало стандартным способом разработки для многих компаний, и это изменило отношение к обмену и использованию информации корпорациями и индивидуальными пользователями. Компании принимают участие из эгоистичных побуждений: потому что «это работает» и дает двойной результат при вдвое меньших вложениях. Разные люди участвуют в этих проектах по разным причинам, а некоторые, как Линус Торвальдс, работают просто ради удовольствия. «Основа моего замысла», писал Торвальдс в 1995 году, «в том, что Linux должен приносить радость людям».
Эволюция и революция
В процессе развития в сети Интернет модель разработки ПО с открытым исходным кодом создала некоторые новые правила. Неформальность новой модели, возможность для каждого участника найти занятие по своим способностям поощряют новаторство похлеще экономических стимулов. Очень важно, что весь процесс разработки подвержен равноправному обсуждению коллег-хакеров. Чтобы получить стоящий продукт, необходим талантливый замысел, а воплощение талантливого замысла следует подкрепить критикой коллег – принцип, общепризнанный в науке. Процесс развития человечества основывается на общей совокупности знаний (нечто подобное обеспечивает открытый исходный код программы), и в новых исследованиях используется весь багаж сведений, накопленный прежними человеческими поколениями. В этом смысле разработка программ с открытым исходным кодом – лишь вариант традиционного процесса.
Моральный кодекс хакера в значительной мере сформировал культуру раннего Интернета. Тим Бернерс-Ли [Tim Berners-Lee] в своей книге The World Wide Web: A Very Short Personal History [WWW: Краткая история] писал: «Идея всемирной паутины – единое пространство, где все мы общаемся, обмениваясь информацией. Пространство всеобъемлющее и вездесущее, ведь гипертекстовая ссылка может указать на что угодно, будь то личное, местное или глобальное; набросок, эскиз или нечто завершенное. Есть и вторая часть идеи: всеобщее использование Интернета привело к тому, что он стал реалистичным зеркалом (или даже первичным воплощением) нашей работы, нашего досуга и нашего взаимного общения. Ну, а коль скоро наше взаимодействие переместилось в Сеть, мы смогли при помощи компьютера проанализировать состояние вещей, оценить свою деятельность, определить свое место во всем этом и продумать, как лучше объединить усилия для совместной работы».
С коммерческой точки зрения разработка ПО с открытым исходным кодом – это революция, ведь в бизнесе впервые поняли, какие преимущества дает объединение усилий и обобществление накопленных знаний. Ошеломляющие результаты получены при опробовании такой модели в создании анимации, спецэффектов и биотехнологиях.
Существование свободного ПО сломало входные барьеры: здесь можно начать с малого, просто вливаясь в существующий проект, обеспечивая ему поддержку и добавляя ценности; или начать новый проект, требующий привлечения крупных ресурсов. Еще одно достоинство подобных методов работы – они открывают доступ к технологии тем, кто иначе был бы отрезан от мирового развития. Джордж Бернард Шоу высказался однажды: «Пусть у тебя и у меня есть по яблоку. Если мы обменяемся яблоками, у каждого из нас останется по одному. Но если у тебя есть идея и у меня есть идея, и мы обменяемся идеями, у каждого из нас будет уже по две идеи».
Свобода информации
Принцип «Информация должна быть свободной» затронул не только развитие свободного ПО и Интернета: он резко контрастирует с засильем патентов и авторских прав, удерживающих знания и власть в руках корпораций. Ценность свободы и сотрудничества, обеспечиваемых GPL, коллективные методы работы, которые она поощряет, открыли миру ПО безграничные возможности, неочевидные на момент создания этой лицензии.
Модель разработки FLOSS (и доступность продвигаемых ею идей) весьма привлекательна для широкого разнообразия проектов, в том числе и весьма далеких от специфичного мира компьютерных программ. LXF
Моральный кодекс хакера
Хакерская этика, в интерпретации Стивена Леви, основывается на следующих правилах:
- Доступ к компьютерам – как и к любым сведениям, необходимым для познания мира – должен быть неограниченным и всеобщим. Не забывай о своем праве на информацию!
- Любая информация должна быть свободно доступной.
- Не верь авторитетам – стремись к децентрализации. Оценка хакера определяется его реальными делами, а не мишурой (степень, возраст, раса или положение в обществе).
- Твори на компьютере чудеса.
- Компьютер изменит жизнь к лучшему.
Четыре свободы
Ричард Столлмен определил свободное ПО как «свободу пользователя запускать, копировать, передавать, изучать, изменять и улучшать программы». Точнее, это сводится к четырем основным свободам пользователя в отношении ПО:
- 0 Свобода запускать программы, с любой целью.
- 1 Свобода изучать принципы работы программ и приспосабливать их к своим нуждам. Доступ к исходному коду – обязательное условие.
- 2 Свобода распространять копии программ, чтобы помочь ближним.
- 3 Свобода совершенствовать программы и опубликовывать свои усовершенствования, ради общественного блага. Доступ к исходному коду – обязательное условие.