Подобные методы, хотя им и не хватало утонченности, служили своей цели. Несмотря на то, что профессора и администраторы превосходили хакеров в Лаборатории ИИ численностью два к одному, хакерская этика брала верх. Действительно, к моменту появления Столлмана в Лаборатории ИИ хакеры и администрация лаборатории образовали нечто вроде симбиотических отношений. В обмен на ремонт оборудования и поддержание программного обеспечения в рабочем состоянии хакеры получали право работать над любимыми проектами. Часто эти проекты сводились к дальнейшему усовершенствованию машин и программ. Подобно подросткам-автолюбителям, тюнингующим машины, большинство хакеров рассматривали возню с техникой как особую форму развлечения.
Нигде этот импульс к ковырянию в технике не отражался лучше, чем в операционной системе, управлявшей центральным мини-компьютером лаборатории PDP-6. Названная ITS (что расшифровывается как Incompatible Time Sharing system — несовместимая система разделения времени), эта операционная система воплотила хакерскую этику в самой своей конструкции. Хакеры создали ее в знак протеста против оригинальной операционной системы Проекта MAC — Compatible Time Sharing System (CTSS), и назвали ее соответствующим образом. В то время хакеры считали архитектуру CTSS слишком ограничивающей, поскольку она сужала возможности программистов по модификации и улучшению внутренней структуры самой программы в случае необходимости. Согласно одной из легенд, передававшейся среди хакеров, решение о создании ITS имело и политический подтекст. В отличие от CTSS, разработанной для IBM 7094, ITS создавалась специально для PDP-6. Позволив хакерам самим писать системы, администраторы Лаборатории ИИ гарантировали, что за PDP-6 будет комфортно работать только хакерам. В феодальном мире академических исследований этот гамбит сработал. Хотя PDP-6 находилась в совместном владении с другими отделами, исследователи в области ИИ вскоре завладели ею безраздельно.
ITS могла похвастаться функциями, которые большинство коммерческих операционных систем не предлагали еще долгие годы — такими возможностями, как многозадачность, отладка и полноэкранное редактирование. Используя ее и PDP-6 в качестве базы, лаборатория смогла объявить о независимости от Проекта MAC незадолго до появления Столлмана. Приношу извинения за беглый обзор зарождения ITS — операционной системы, которую многие хакеры до сих пор считают воплощением хакерского этоса. Подробнее о политическом значении программы см. в книге Simson Garfinkel, Architects of the Information Society: Thirty-Five Years of the Laboratory for Computer Science at MIT (MIT Press, 1999).
Будучи хакером-учеником, Столлман быстро увлекся ITS. Несмотря на всю сложность для новичков, программа содержала множество встроенных функций, которые давали уроки разработки ПО таким подмастерьям-хакерам, как он сам.
«В ITS был очень элегантный внутренний механизм, позволяющий одной программе исследовать другую, — говорит Столлман, вспоминая программу. — Вы могли самым чистым, детально описанным образом изучать всевозможные статусы другой программы».
Используя эту функцию, Столлман мог наблюдать за тем, как написанные хакерами программы обрабатывают инструкции во время выполнения. Еще одна любимая функция позволяла программе мониторинга приостанавливать выполнение задачи отслеживаемой программы между инструкциями. В других операционных системах такая команда привела бы к появлению наполовину посчитанной бессмыслицы или автоматическому аварийному сбою системы. В ITS это предоставляло очередной способ контроля пошаговой производительности.
«Если вы говорили: „Остановить задачу“, она всегда останавливалась в пользовательском режиме. Она останавливалась между двумя инструкциями пользовательского режима, и все параметры задачи для этого момента оставались согласованными», — говорит Столлман. «Если вы говорили: „Возобновить задачу“, она продолжала работу должным образом. Мало того, если вы изменяли статус задачи, а затем возвращали его обратно, все оставалось согласованным. Нигде не было никаких скрытых статусов».
К концу 1970 года хакерство в Лаборатории ИИ стало регулярной частью недельного расписания Столлмана. С понедельника по четверг Столлман посвящал часы бодрствования учебе в Гарварде. Однако стоило наступить пятнице, как он садился в метро („T“) и отправлялся в МТИ на выходные. Столлман обычно подгадывал свое прибытие к ритуальной поездке за едой. Присоединяясь к пяти или шести другим хакерам в их ночных поисках китайской еды, он запрыгивал в потрепанную машину и ехал через Гарвардский мост в близлежащий Бостон. В течение следующих двух часов он и его коллеги-хакеры обсуждали все подряд: от ITS до внутренней логики китайского языка и системы пиктограмм. После ужина группа возвращалась в МТИ и хакерствовала до рассвета.
Для чокнутого изгоя, который редко общался со своими школьными сверстниками, это был окрыляющий опыт — внезапно оказаться в компании людей со схожей страстью к компьютерам, научной фантастике и китайской кухне. «Я помню множество рассветов, увиденных из машины по возвращении из Чайнатауна», — с ностальгией вспоминал Столлман 15 лет спустя в своей речи в Шведском королевском технологическом институте. «На самом деле видеть рассвет — это прекрасно, потому что это такое спокойное время суток. Это прекрасное время, чтобы готовиться ко сну. Так приятно идти домой, когда свет только начинает ярчать, а птицы начинают чирикать; вы можете ощутить настоящее чувство мягкого удовлетворения, умиротворения от проделанной за эту ночь работы». См. Ричард Столлман, «Лекция RMS в KTH (Швеция)» (30 октября 1986 г.).
http://www.gnu.org/philosophy/stallman-kth.html
Чем больше Столлман общался с хакерами, тем сильнее перенимал их мировоззрение. Будучи уже приверженцем идеи личной свободы, Столлман начал наполнять свои действия чувством общественной ответственности. Когда другие нарушали общественный кодекс, Столлман не молчал. Меньше чем через год после своего первого визита Столлман уже сам взламывал запертые кабинеты, пытаясь вернуть конфискованные терминалы, принадлежавшие лабораторному сообществу в целом. В истинно хакерской манере Столлман также попытался внести свой личный вклад в искусство взлома замков. Один из самых изощренных трюков по открыванию дверей, приписываемый Гринблатту, заключался в том, чтобы согнуть жесткую проволоку в виде трости и прикрепить петлю из скотча к ее длинному концу. Просунув проволоку под дверь, хакер мог крутить и поворачивать ее так, чтобы длинный конец коснулся дверной ручки. Если клей на ленте держался крепко, хакер мог повернуть ручку двери несколькими резкими движениями.
Когда Столлман опробовал этот трюк, он нашел его неплохим, но в некоторых местах несовершенным. Заставить скотч приклеиться удавалось не всегда, и крутить проволоку так, чтобы повернулась дверная ручка, было igualmente сложно. Столлман вспомнил, что в потолке коридора были плитки, которые можно было сдвинуть в сторону. На самом деле некоторые хакеры использовали фальшпотолок как способ обойти запертые двери — подход, который обычно покрывал нарушителя стекловолокном, но свое дело делал.
Столлман подумал об альтернативном подходе. Что если вместо того, чтобы просовывать проволоку под дверь, хакер сдвинет одну из панелей и встанет прямо над дверным косяком?
Столлман взял на себя труд испытать это. Вместо проволоки он опустил длинную U-образную петлю из магнитной ленты, закрепив петлю из клейкой ленты у основания буквы U. Встав над дверным косяком, он свесил ленту так, чтобы она захватила дверную ручку. Приподняв ленту до фиксации клея, он затем потянул за левый конец ленты, поворачивая ручку против часовой стрелки. И действительно, дверь открылась. Столлман добавил новый штрих к искусству взлома замков.
«Иногда приходилось пинать дверь после того, как повернешь ручку», — вспоминает Столлман сохранявшуюся недоработку нового метода. «Чтобы это получилось, требовалось некоторое чувство равновесия».
Подобная деятельность отражала растущую готовность Столлмана говорить и действовать в защиту своих политических убеждений. Дух прямого действия Лаборатории ИИ оказался достаточно вдохновляющим, чтобы Столлман смог вырваться из робкого бессилия своих подростковых лет. Взломать кабинет, чтобы освободить терминал, — это не то же самое, что участвовать в акции протеста, но это было эффективно в тех аспектах, в которых большинство протестов бессильны. Это решало насущную проблему.
К последним годам учебы в Гарварде Столлман начал применять причудливые и дерзкие уроки Лаборатории ИИ и у себя в университете.
«Он рассказывал тебе про змею? — спрашивает его мать в какой-то момент интервью. — Он и его соседи по общежитию выдвинули змею на студенческие выборы. Судя по всему, она набрала значительное число голосов».
Столлман подтверждает кандидатуру змеи с некоторыми оговорками. Змея баллотировалась на выборах в пределах Керриер-Хауса — общежития Столлмана, а не университетского студенческого совета. Столлман действительно помнит, что змея привлекла довольно значительное количество голосов, во многом благодаря тому, что у змеи и ее хозяина была одна и та же фамилия. «Люди могли голосовать за нее, потому что думали, что голосуют за хозяина, — говорит Столлман. — Предвыборные плакаты гласили, что змея „проползает на“ должность. Мы также заявляли, что она является кандидатом „на вольном выпасе“, поскольку парой недель ранее она забралась в стену через вентиляционную систему, и никто не знал, где она находится».
Выдвижение змеи в совет общежития было лишь одной из нескольких предвыборных шуток. На более поздних выборах Столлман и его соседи по общежитию выдвинули сына старосты дома. «Его предвыборной платформой был обязательный выход на пенсию в возрасте семи лет», — вспоминает Столлман. Впрочем, такие розыгрыши бледнели по сравнению с шутками с фальшивыми кандидатами в кампусе МТИ. Одним из самых успешных розыгрышей с подставным кандидатом стала кошка по кличке Вудсток, которой действительно удалось обойти по числу голосов большинство человеческих кандидатов на общеуниверситетских выборах. «Они никогда не объявляли, сколько голосов получил Вудсток, и относились к этим голосам как к испорченным бюллетеням, — вспоминает Столлман. — Но большое количество испорченных бюллетеней на тех выборах намекало на то, что Вудсток на самом деле победил. Пару лет спустя Вудсток при подозрительных обстоятельствах попал под машину. Никто не знает, работал ли водитель на администрацию МТИ». Столлман утверждает, что не имел никакого отношения к кандидатуре Вудстока, «но я восхищался этим». В электронном письме вскоре после того, как эта книга ушла в финальный цикл редактуры, Столлман говорит, что черпал политическое вдохновение и в гарвардском кампусе. «На первом курсе Гарварда, на уроке истории Китая, я прочитал историю о первом восстании против династии Цинь, — говорит он. — Эта история не является достоверной историей, но она была очень трогательной».
В Лаборатории ИИ политическая деятельность Столлмана приобрела более острый оттенок. В 1970-х годах хакеры сталкивались с постоянными попытками преподавателей и администраторов обойти ITS и ее дружественный к хакерам дизайн. Одна из первых таких попыток произошла в середине 1970-х годов, когда все больше преподавателей начали призывать к внедрению системы безопасности файлов для защиты исследовательских данных. Большинство других компьютерных лабораторий установили подобные системы еще в конце 1960-х годов, но Лаборатория ИИ благодаря настойчивости Столлмана и других хакеров оставалась свободной от безопасности зоной.
Для Столлмана противодействие системе безопасности носило как этический, так и практический характер. С этической стороны Столлман указывал на то, что все искусство хакерства опирается на интеллектуальную открытость и доверие. С практической стороны он ссылался на то, что внутренняя структура ITS строилась с целью поощрения этого духа открытости, и любая попытка изменить этот дизайн потребовала бы капитальной переработки.
«Хакеры, написавшие Несовместимую систему разделения времени, решили, что защита файлов обычно используется самозваными системными менеджерами для получения власти над всеми остальными, — объяснял позже Столлман. — Они не хотели, чтобы кто-то мог получить власть над ними таким образом, поэтому они не стали реализовывать подобную функцию. Результат заключался в том, что всякий раз, когда что-то в системе ломалось, вы всегда могли это починить». См. Ричард Столлман (1986).
Благодаря такой бдительности хакерам удавалось сохранять машины Лаборатории ИИ свободными от систем безопасности. Однако в соседней Лаборатории компьютерных наук МТИ победу одержали сторонники безопасности. В 1977 году LCS установила свою первую систему на основе паролей. И снова Столлман взял на себя задачу исправить то, что он считал этической распущенностью. Получив доступ к программному коду, управлявшему системой паролей, Столлман внедрил программную команду, которая отправляла сообщение любому пользователю LCS, пытавшемуся выбрать уникальный пароль. Если пользователь вводил, например, слово «starfish», сообщение возвращалось примерно в таком виде: Я вижу, вы выбрали пароль «starfish». Предлагаю вам сменить его на пароль «carriage return». Его намного проще вводить, к тому же это соответствует принципу отсутствия паролей. См. Стивен Леви, «Хакеры» (Penguin USA [в мягкой обложке], 1984): 417. Я изменил эту цитату, которую Леви также использует в качестве отрывка, чтобы более наглядно проиллюстрировать, как программа может обнажать фальшивую безопасность системы. Леви использует подстановочный знак «[такой-то и такой-то]». Пользователи, которые действительно вводили «carriage return» — то есть те, кто просто нажимал кнопку Enter или Return, вводя пустую строку вместо уникального пароля, — оставляли свои аккаунты доступными для всего мира. Как бы пугающе это ни звучало для некоторых пользователей, это подкрепляло хакерскую идею о том, что компьютеры Института и даже его файлы принадлежат общественности, а не частным лицам. Столлман в интервью для книги 1984 года «Хакеры» с гордостью отмечал, что пятая часть сотрудников LCS приняла этот аргумент и использовала пароль из пустой строки. См. Стивен Леви, «Хакеры» (Penguin USA [в мягкой обложке], 1984): 417.
Крестовый поход Столлмана с нулевой строкой в конечном итоге оказался безуспешным. К началу 1980-х годов даже машины Лаборатории ИИ обзавелись системами безопасности на основе паролей. Тем не менее это представляет собой важную веху с точки зрения личного и политического взросления Столлмана. Для объективного наблюдателя, знакомого с дальнейшей карьерой Столлмана, это удобная точка перегиба между робким подростком, боящимся высказаться даже по жизненно важным вопросам, и взрослым активистом, который вскоре превратит занудство и уговоры в профессию на полную ставку.
Выступая против компьютерной безопасности, Столлман опирался на многие силы, сформировавшие его ранние годы: жажду знаний, неприятие авторитетов и разочарование в скрытых процедурах и правилах, из-за которых некоторые люди оказываются невежественными изгоями. Он также опирался на этические концепции, которые определят его взрослую жизнь: общественную ответственность, доверие и хакерский дух прямого действия. Выражаясь языком компьютерного программирования, нулевая строка представляет собой версию 1.0 политического мировоззрения Ричарда Столлмана — кое-где неполную, но в целом вполне зрелую.
Оглядываясь назад, Столлман не спешит придавать слишком большого значения событию столь раннего периода своей хакерской карьеры. «На том раннем этапе было много людей, разделявших мои чувства, — говорит он. — Большое количество людей, принявших нулевую строку в качестве пароля, было признаком того, что многие согласны с правильностью этого шага. Я просто был склонен проявить к этому активизм».
Тем не менее Столлман отдает должное Лаборатории ИИ за пробуждение этого духа активизма. Подростком Столлман наблюдал за политическими событиями, не имея ни малейшего представления о том, как отдельный человек может сделать или сказать что-то важное. В молодости Столлман открыто высказывался по тем вопросам, в которых чувствовал себя предельно уверенно — по таким темам, как проектирование ПО, общественная ответственность и личная свобода. «I примкнул к этому сообществу, чей образ жизни предполагал уважение к свободе друг друга, — говорит он. — Мне не потребовалось много времени, чтобы понять, что это хорошо. Дольше я приходил к выводу, что это моральный вопрос».
Хакерство в Лаборатории ИИ было не единственным занятием, помогавшим поднимать самооценку Столлмана. В середине второго курса в Гарварде Столлман примкнул к танцевальному ансамблю, специализирующемуся на народных танцах. То, что начиналось как банальная попытка познакомиться с женщинами и расширить свой кругозор в общении, вскоре превратилось в еще одну страсть наряду с хакерством. Танцуя перед публикой в традиционных нарядах балканских крестьян, Столлман больше не чувствовал себя неловким, нескоординированным 10-летним мальчишкой, чьи попытки играть в футбол заканчивались разочарованием. Он чувствовал себя уверенным, гибким и живым. На мгновение он даже ощутил намек на эмоциональную связь. Вскоре он нашел выступления перед публикой увлекательными, и вскоре после этого он начал жаждать исполнительской стороны танца почти так же сильно, как и социальной.
Хотя танцы и хакерство мало способствовали улучшению социального положения Столлмана, они помогли ему преодолеть чувство собственной странности, омрачавшее его жизнь до Гарварда. Вместо того чтобы оплакивать свою странную натуру, Столлман находил способы отпраздновать ее. В 1977 году во время посещения конвента научной фантастики он наткнулся на женщину, продававшую значки на заказ. В восторге Столлман заказал значок с красовавшейся на нем надписью «Impeach God».
Для Столлмана послание «Impeach God» работало на многих уровнях. Будучи атеистом с раннего детства, Столлман сначала увидел в этом попытку открыть «второй фронт» в продолжающихся дебатах о религии. «Тогда все спорили о том, мертв Бог или жив, — вспоминает Столлман. — „Impeach God“ подходило к вопросу о Боге с совершенно другой точки зрения. Если Бог настолько могущественен, чтобы сотворить мир и при этом ничего не делать для исправления проблем в нем, почему мы вообще должны хотеть поклоняться такому Богу? Не лучше ли отдать его под суд?»