Хакеры.Герои компьютерной революции

         

Клуб Технического Моделирования Железной дороги


   Почему Питер Самсон в полночь бродил по зданию №26? На этот вопрос он вряд ли бы сумел дать определенный ответ. Над некоторыми вещами лучше не стоит ломать голову. Если бы вы походили на ребят, с кем Питер познакомился и состоял в приятельских отношениях на своем первом году обучения в Массачусетском Технологическом Институте зимой 1958-59 года, то тогда никаких объяснений не потребовалось бы. Блуждание в лабиринте лабораторий и складских помещений, разгадывание тайн коммутации телефонных сигналов в машинных залах, отслеживание путей проводов или реле в подземных туннелях — для некоторых это было обычным поведением. Для них не требовалось оправдывать для себя импульс в душе, когда, оказавшись перед закрытой дверью, за которой что-то интригующе шумело, вдруг очень хотелось открыть дверь, понимая при этом, что они будут незваными гостями. И затем, если там никого не было, кто мог бы физически преградить доступ к источнику этого завораживающего шума, можно было коснуться машины, пощелкать выключателями, посмотреть, как она на это отреагирует, потом ослабить винты, снять крышку, покачать пальцами некоторые диоды и подергать некоторые разъемы. Питер Самсон и его друзья выросли с определенным отношением к миру, в котором вещи имели значение только в случае, если вы поняли, как они работают. Да и как можно вообще жить, не подержав их в своих руках?
   Именно в подвале Здания №26 Самсон и его друзья обнаружили комнату ЭОПД. Здание №26 было одним из корпусов МТИ — высокой конструкцией из стекла и стали, разительно отличавшейся от почтенных строений, с которых начинался институт со стороны Массачусетс Авеню, и чьи фронтоны были украшены колоннадами. В подвале этого здания, лишенного всякой индивидуальности, располагалась комната ЭОПД. ЭОПД означало «Электронное Оборудование Подготовки Данных». Это была комната, в которой размещались машины, которые работали почти как компьютеры.
   Не так много людей в 1959 году видели компьютер, не говоря уже о том, чтобы трогать его руками.
Самсон, молодой человек с жесткими рыжеволосыми кудрями и растягивавший при разговоре гласные так, что казалось, что он на полуслове перебирает в своей голове возможные варианты окончания предложений, уже сталкивался с компьютерами при своих, еще дошкольных, посещениях МТИ. До института он добирался из своего родного города Лоуэлл, который был расположен менее чем за тридцать миль от кампуса — университетского городка. Он заработал прозвище "кембриджский мальчик" и был одним из многих сходивших с ума по науке старшеклассников, которых тянуло как магнитом, к университетскому городку Кембриджа. Он даже пробовал собрать свой собственный компьютер из запчастей от списанных машин для пинбола, которые были лучшим источником логических элементов, которые он был в состоянии найти.
   Логические элементы —этот термин, похоже, заключал в себе то, что притягивало к электронике Питера Самсона, сына ремонтника заводского оборудования. В этом был свой смысл. Когда вы растете с жадным любопытством относительно того, как работают вещи вокруг вас, то вы испытываете глубокое восхищение, после того как вы открываете для себя нечто столь же изящное, как логическая схема, в которой каждый компонент выполняет свою собственную роль. Питер Самсон, который с самого начала оценил математическую простоту и изящество этих вещей, мог бы еще припомнить ТВ-шоу на Бостонском публичном канале WGBH, в котором объяснялось введение в программирование компьютера на специальном языке. Все это возбуждало его воображение. Для Питера, компьютер был чем-то похож на лампу Аладдина, которую достаточно было потереть, и она выполнила бы любое желание. Именно поэтому он старался узнать больше в этой области: предпринимал попытки построить свои собственные машины, принимал участие в соревнованиях и состязаниях различных научных проектов, и в конце концов попал в то место, к которому стремились все ребята его склада – этим местом был МТИ.
   Институт представлял собой собрание самых лучших из тех сверходаренных старшекласников с филиноподобными стеклами очков и слаборазвитым грудными мышцами, которые ошарашивали своими знаниями учителей математики и провалившихся на экзамене "физкультурников".


Ему также требовалось специальное кондиционирование, чтобы раскаленные вакуумные лампы внутри этого сооружения не нагрелись до температур, уничтожающих данные. Когда кондиционирование выходило из строя, а это было достаточно частым явлением, то звучал громкий гонг, после чего из близлежащего офиса пулей неслись три инженера. С машины очень быстро снимались кожухи, так чтобы ее внутренности не успели расплавиться. Все эти люди отвечали за перфорацию карт, их подачу в считыватели, нажатие кнопок и щелканье переключателями на машине. Они представляли собой Высшую Касту Жрецов, а те, кто был достаточно привилегирован, чтобы представить свои данные перед ликом Высших Жрецов являлись их официальными помощниками. Сама процедура загрузки программ фактически была ритуальным обрядом.
   Помощник:
   О, компьютер, окажи милость принять мой дар, состоящий из информации, так чтобы ты смог выполнить мою программу и возможно выдать мне результат вычислений.
   Жрец (от имени машины):
   Мы попробуем. Мы ничего не обещаем.
   Также общим правилом было то, что даже наиболее привилегированным из помощников не было дозволено иметь прямой доступ непосредственно к машине, и в течение нескольких часов, а иногда и в течение дней, они не видели результаты заглатывания и переваривания машиной их "пакета" карт.
   Самсону это все было известно, и конечно, все это его чертовски напрягало. Он страстно хотел добраться до этой проклятой машины, потому что он видел в этом смысл всей своей жизни.
   Чего Самсон не знал, и что он к своей большой радости обнаружил, что комната ЭОПД также имела специальную перфорирующую машину, называемую IBM 407. Она не только могла пробивать перфокарты, но также могла их считывать, сортировать и делать с них распечатку информации на бумагу. Похоже, что эти машины тоже никто не охранял, и они также в чем-то были похожи на компьютеры. Конечно, их использование не было праздником: необходимо было пропускать контакты через наборное поле, которое представляло собой квадрат пластмассы два на два дюйма с массой отверстий в нем.


Если бы вы поместили сотни проводов через отверстия в определенном порядке, то вы получили бы нечто, что напоминало крысоловку, но, на самом деле, эта штука устанавливалась в электромеханическую машину, после чего ее функции полностью менялись. Теперь с ней можно было бы делать то, что вы от нее хотели.
   Как раз этим и занимался Питер, вместе с несколькими своими друзьями из клуба при МТИ, в котором они строили модель железной дороги. Они ни у кого не спрашивали никаких разрешений, что, впрочем, было обычным явлением. Конечно, это все делалось по наитию и необдуманно, но это был шаг в будущее, отчасти нарисованное научной фантастикой, что было типично для пути, проходя по которому, эта странная субкультура сама тащила себя за волосы и постепенно дорастала до положения андерграунда. И в конечном итоге, она станет культурой, которая будет грубоватой и неофициальной душой компьютерного сообщества. Исследование IBM 407 было практически самой первой компьютерной хакерской авантюрой Клуба Технического Моделирования Железной Дороги, или TMRC.
   * * *
   Питер Самсон стал членом Клуба Технического Моделирования Железной Дороги, начиная со своей первой недели пребывания в МТИ с осени 1958 года. Самым первым событием, которое свежеиспеченные студенты МТИ должны были пройти, была традиционная приветственная лекция, точно такая же, которую мог вспомнить каждый, кто там учился. Посмотрите на того, кто сидит слева от вас..., посмотрите на того, кто сидит справа от вас..., один из Вас троих не сумеет закончить Институт.Предполагаемый эффект этой речи был рассчитан на создание неприятного чувства холодка за спиной всех новичков, который напомнил бы им о неотвратимой угрозе порядка и дисциплины. Практически всю свою сознательную жизнь, эти новички были свободны от академического давления. Эта свобода была заработана ими при помощи блеска их талантов в обычных школах, но теперь рядом с каждым из них, слева и справа, сидело по еще одному талантливому молодому человеку, каждый из которых был также умен и способен, как и они.


А возможно, еще способнее и умнее.

 
   Некоторые студенты не видели в этом никакого вызова или предупреждения. Эта часть молодежи воспринимала своих однокурсников через туманную призму дружеских отношений, и полагала, что вместе они, возможно, будут полезны друг другу в ненасытном познании природы вещей, которой в дальнейшем можно было бы распоряжаться по своему усмотрению. Изучению этого и без того имелось достаточно препятствий, так что стоило ли беспокоиться по поводу таких глупых вещей как эти преподаватели с коричневыми носами, пытающиеся им втолковать про какие-то звания и степени? Для таких студентов как Питер Самсон, процесс познания означал нечто большее, чем просто ученая степень.
   Через некоторое время после лекции началось что-то вроде Дня Первокурсника. Все организации студенческого городка — группы по интересам, различные сообщества и так далее, установили свои кабинки в большом зале для того, чтобы попытаться набрать себе новых членов. Клубом, к которому пристал Питер, был Клуб Технического Моделирования Железной Дороги (TRMC). Его участниками были старшекурсники с горящими глазами, стриженые ежиком, разговаривавшие со спазматическими каденциями, расталкивая в спешке слова. Они хвастались захватывающим внешним видом своих ширококолейных поездов, которые у них стояли в постоянной клубной комнате в Здании №20. Питеру Самсону очень нравились поезда, в особенности поезда метро, и поэтому он пошел вместе со всеми на экскурсию в корпус, который был временным сооружением, облицованным галькой и построенным еще во времена Второй Мировой Войны. Его коридоры были весьма объемистыми и, несмотря на то, что клубная комната была расположена на втором этаже, ей был свойственен сырой и мрачноватый подвальный вид.
   В клубной комнате, все доступное пространство занимала огромная модель железной дороги. Она заполняла почти всю комнату, и если вы стояли в небольшой области управления, называемой "вырез", то вы могли бы увидеть небольшой город, небольшие заводские корпуса, крошечную работающую линию с вагонетками, гору из папье-маше, и, конечно же, много поездов и рельсов.





Поезда были очень тщательно сделаны и очень сильно походили на свои прототипы в натуральную величину. Они сновали по изгибам и поворотам путей, столь же совершенно как будто на красивой картинке из книжки.
   Потом Питер Самсон посмотрел ниже основания, на котором стояла вся модель. Основание от пола имело высоту, которая была достаточна, чтобы под нее мог пролезть ползком человек. Его дыхание перехватило. Под железной дорогой находилась большая массивная матрица из проводов, реле и координатных коммутаторов в таком количестве, о котором Питер никогда и не мечтал. Четкими рядами шли группы переключателей, и тускло поблескивавших бронзовых реле, которые соединялись длинной и хаотичной путаницей красных, синих и желтых проводов, изгибающихся и поворачивавших так, как будто бы на голове у Эйнштейна произошел взрыв, и радужные волосы разлетелись во все стороны. Это была невероятно сложная система, и Питер Самсон поклялся выяснить, как она работает.
   Клуб Технического Моделирования Железной Дороги предоставлял своим членам ключ от клубной комнаты после того, как они отрабатывали сорок часов работы на модели. День Первокурсника был в пятницу. В понедельник, Питер имел свой собственный ключ.
   * * *
   Сама TMRC делилась на две группы. Некоторые члены клуба любили тратить свое время, изготавливая и раскрашивая точные копии некоторых поездов, имевших историческую ценность или которые просто нравились моделистам, или же созданием для модели элементов реалистичного пейзажа. Это была группа людей "ножа и кисти". Они подписывались на железнодорожные журналы и организовывали выезды клуба на экскурсию на старые железнодорожные ветки. Другая группа участников образовывала Подкомитет по Сигнализации и Питанию, и их, по большей части заботило то, что происходило непосредственно под моделью. Вместе, эти две группы, представляли собой Систему, которая напоминала сотрудничество между Руби Голдбергом и Вернером фон Брауном. В этой Системе что-то постоянно улучшалось, обновлялось, совершенствовалось, а иногда, говоря на клубном жаргоне «гронкалось» «(gronked)», то есть накрывалось медным тазом.


Люди СиП были одержимы тем, как работает их Система, ее растущей день ото дня сложностью, тем как любое вносимое ими изменение затрагивает ее остальные части, а также тем, как можно было бы наиболее оптимально построить связи между ее компонентами. Многие из частей Системы были предоставлены по шефскому плану колледжем компании Western Electric, другие — самой телефонной компанией. Факультетский наблюдатель за деятельностью клуба также отвечал за телефонную сеть университетского городка, а также присматривал за тем, чтобы сложное телефонное оборудование было доступно для моделистов. Используя это оборудование в качестве отправной точки, моделисты-железнодорожники придумали схему, которая позволяла управлять поездами сразу нескольким человекам, даже если поезда были в различных частях одного и того же участка. Приспособив номеронабиратели от телефонов, "инженеры" TMRC могли указать, каким участком железной дороги они хотели бы управлять, и запускали оттуда поезд. Это делалось при помощи нескольких типов телефонных реле, а также координатных устройств и шаговых искателей, работа которых действительно позволяла слышать как электричество передавается с одного блока на другой с этим таинственным звуком «щелк-щелк-щелк». Именно Группа СиП изобрела эту изощренную инженерную схему, и именно в Группе СиП нашло приют беспокойное любопытство, которое заставляло этих ребят рыть носом землю вокруг корпусов университетского городка в поиске способов получить в свои руки компьютер. Эти молодые люди были пожизненными учениками Практического Императива. Главой СиП был старшекурсник по имени Боб Сандерс, весь румяный и округлый, заразительно смеявшийся, а также обладавший достойным талантом переводить стрелки. Еще во время своего обучения в средней школе в Чикаго, он построил высокочастотный трансформатор для школьного проекта. Это был вариант катушки Тесла в шесть футов высотой — устройства, названного в честь инженера и изобретенного еще в девятнадцатом веке, которое, как предполагалось, испускало мощные волны электроэнергии.


Сандерс говорил, что его трансформатор сумел подавить телевизионный прием в нескольких кварталах в округе. Другим человеком, которого также притягивала работа в СиП, был Алан Коток, пухлый, слабовольный парень из Нью-Джерси в толстых очках, который учился в одной группе вместе с Самсоном. Семейство Котоков могло бы вспомнить как он, еще в возрасте трех лет, вырвал при помощи отвертки розетку из стены и заставлял ее извергать шипящий душ из потоков искр. Когда ему было шесть, он делал и подключал лампы. Учась в средней школе, он однажды побывал на экскурсии в лаборатории фирмы Mobil Research в близлежащем городке Хэддонфилд, и там впервые увидел компьютер. Это так его поразило, что оказало влияние на его решение в будущем поступать в МТИ. В свой первый год пребывания в институте, он заработал репутацию одного из наиболее способных членов СиП в TMRC. Ребята из СиП относились к категории людей, которые вполне могли потратить свое субботнее время на визиты в свалку-магазин Эли Хеффрона в Соммервилле. Там они выпрашивали запчасти, а затем проводили многие часы, лежа на спине на небольших досках с маленькими колесиками, которые они называли "банками" (bunkies), и при помощи которых они добирались до особо сложных мест в коммутационной системе. Они могли потратить целую ночь, нелегально подключаясь к телефонной линии между TMRC и Восточным Кампусом. Они играли технологиями как игрушками на детской площадке. Основные члены клуба могли зависать в нем на многие часы; постоянно улучшая Систему, споря по поводу того, что должно быть следующим шагом или разрабатывая свой собственный жаргон, который казался абсолютно непонятным тому, кто мог бы случайно наткнуться на этих фанатичных тинейджеров, одетых в поношенные рубашки с коротким рукавом и карандашами в карманах, в штанах из бумажного твила , и, всегда с бутылкой Кока-колы в одной руке. TMRC купила свою собственную машину по розливу Кока-Колы за умопомрачительную по тем временам сумму в $165; но при цене пять центов за бутылку все издержки были покрыты через три месяца.


Чтобы сделать продажу еще более удобной, Сандерс построил для покупателей Кока-Колы автомат для размена монет, который потом использовался еще в течение десяти лет. Когда какая-то часть оборудования не работала, это было "losing"; когда часть оборудования выходила из строя, ее называли "munged" ; два стола в углу комнаты назывались не офисом, а "орифисом" ; того, кто настаивал на учебе, называли "тулзой" (tool); мусор назывался "крафтом" (cruft); а разрабатываемый проект или изделие, создаваемое не только для достижения некоторой конструктивной цели, но и для того, чтобы оттянуться и получить простое удовольствие от собственно процесса, назывался "хаком" (hack). Последний термин, возможно, был древним жаргонным словом в МТИ. Слово "хак" долго использовалось для описания озорных студенческих шуток, которые студенты МТИ регулярно придумывали: например, покрытие отражающей фольгой купола, который возвышался над университетским городком. Но при его использовании в TMRC, подразумевалось серьезное уважение к обсуждаемому предмету разговора. Кто-нибудь мог назвать хитрое соединение между двумя реле "просто хаком", тем не менее, все понимали что, для того, чтобы это было действительно хаком, работа должна содержать новшество, иметь стиль, и должна быть проделана с технической виртуозностью. Даже если кто-то самоуничижительно говорил, что он "хакерил Систему" (подразумевая, что он по своему разумению, делал это также безыскусно, как человек, держащий в руках топор, колет дрова), весьма существенным признавалось мастерство, с которым на самом деле это все было проделано. Самые продуктивные участники группы Сигналов и Питания назвали себя "хакерами" с большой гордостью. В пределах границ клубной комнаты в Здании №20, и "Комнаты для Инструментов" (где было мало институтской учебы и много технических, чисто мужских разговоров), они наделяли сами себя атрибутами героев исландских легенд.


Вот, например, как Питер Самсон видел себя и своих друзей, подражая сандбургской поэзии, в информационном бюллетене клуба:

 
В свет и во тьму повергающий мир мановеньем руки,
Предохранителей Тестер, Прокладчик Путей,
Рубщик Системы продвинутый, игравший железной дорогой,
Странный, помятый, лежал он, растекшись под «полом»…

 

 
Ответь мне, о, бьющая точкой-об-точку контактов машина,
Линия, что коммутируешь ты, свет возносит над схемой,
Много мужей искушенных сказали мне — ты неисправна.
Я им поверил — я видел, что лампы, горевшие долго,

 

 
Те, что раскрашены тщательно кистью умелой,
Были повергнуты в тьму, привлекая,
Многих желающих тут же залезть под Систему.
Прямо под башнею, там, где скопление пыли,

 

 
Там мы похачим
Систему, где трещины ширятся вдвое.
Будет похачено все, даже если, кто это делает – он первокурсник-невежда,
Тот кто забросил занятья и кто будет выгнан в дальнейшем.

 

 
Будут похачены электрощиты, что стоят под замками,
Те что скрывают контакторы, что контролируют схему.
Будет похачено все!

 
   «Будет похачено все!», —этими странноватыми, в потрепанной одежде, лежащими под схемой хакерскими выбросами юношеской энергии; отстегнутыми поджаривателями диодов, которые гордятся своими ролями Повергателей мира во тьму, Тестеров Предохранителей, Прокладчиков Путей, Игроков с Железной дорогой, и Продвинутых Прерывателей Системы.
   Всякий раз, когда была возможность, Самсон и его товарищи проскальзывали в комнату ЭОПД с ее наборными полями, пытаясь придумать, как можно использовать эту машину для отслеживания коммутаторов под моделью железной дороги. Они также считали важным, понять для себя пределы того, что можно было бы сделать при помощи этого электромеханического считывающего устройства.
   Весной 1959 года, в МТИ студентам был предложен новый курс. Это был первый курс по программированию компьютера, который могли выбирать для себя новички. Преподавателем был человек, немного отрешенный от этого мира, с шевелюрой больше похожей на взрыв волос на голове, чем на прическу и такой же непослушной бородой.


Кто- то как раз набивал программу на ленту. Питер понаблюдал за этим некоторое время, а затем начал забрасывать беззащитную жертву градом вопросов. Вопросы касались этого таинственного «небольшого» компьютера в соседней комнате. После чего Питер подошел непосредственно к TX– 0 , и рассмотрел ее вблизи, отметив при этом, что она весьма отличалось от других машин: она была меньше размером, имела CRT-дисплей, и другие приятные штучки. Он сразу же решил вести себя так, как будто он имел полное право находиться здесь. Он быстро понял все то, что было написано в руководствах, и, в скором времени, поражал окружающих, периодически произнося умные речи на околокомпьютерную тематику. В конечном счете, ему разрешили вписывать свое имя в расписание машинного времени в течение ночи и выходных дней, а также писать свои собственные программы.
   МакКензи беспокоился только о том, чтобы его не обвинили в превращении лаборатории в «детский сад». Этот, еще маленький мальчик, в коротких штанишках, но в то же время достаточно длинный, чтобы доставать головой до консоли TX-0, просматривал код, который Официально Санкционированный Пользователь (весьма вероятно им был какой-нибудь надутый аспирант) набил на Flexowriter-е. При этом, мальчик ему говорил своим писклявым подростковым голосом нечто вроде: "Ваша проблема в том, что данное допущение в данном месте неверно… Вам здесь нужны другие команды". Как правило, надутый аспирант немедленно задавался вопросом: "Кто этот маленький червь?", после чего начинал злиться и повышать на него голос, приказывая выйти отсюда и поиграть в игрушки где-нибудь в другом месте. Но, обычно комментарии Питера оказывались правильными. Кроме того, Дейтч хвастливо заявлял, что он в состоянии написать гораздо лучшие программы, чем те которые он видел, и, что самое интересное — у него это получалось.
   Самсон, Коток, и другие хакеры приняли Питера Дейча в свои ряды. По его уровню понимания компьютера он был достоин равного отношения. Но Дейч не стал таким же фаворитом среди Официально Санкционированных Пользователей, особенно, когда он сидел позади них, готовый к немедленному действию, когда они делали ошибку, набивая программу на Flexowriter-е.


   Официально Санкционированные Пользователи появлялись у TX-0 с регулярностью прихода и ухода на работу. Программы, которые они запускали, представляли собой статистические исследования, поиски взаимных корреляций, моделирование процессов происходящих в ядре, то есть прикладные программы. Пользователи от них были в восторге, но в представлении хакеров это была пустая трата времени и ресурсов. В хакерских головах гнездилось непреодолимое желание сесть за консоль TX-0, такое же, какое испытывает пилот желающий сесть за штурвал самолета. Или, как выразился Питер Самсон, большой любитель классический музыки: «Вычисления на TX-0 были подобны игре на музыкальном инструменте: абсурдно дорогом музыкальном инструменте, на котором вы могли бы импровизировать, писать музыкальные пьесы, или подобно битникам на Гарвард-Сквер, что в миле отсюда, выть как привидение когда воображение начинало полностью отказывать.»
   Одной из вещей, которой они активно пользовались, была система программирования, которую создали Джек Деннис и профессор Том Стокман. Когда TX-0 привезли в МТИ, ее немного "раздели" по сравнению с тем оснащением, которое у нее было в стенах Lincoln Lab. Была существенно уменьшена память; до 4,096 "слов" из восемнадцати битов каждое . Кроме того, TX-0 не имел почти никакого программного обеспечения. Поэтому Джек Деннис, еще до того как он показал TX-0 ребятам из TMRC , написал "системные программы", то есть такое программное обеспечение, которое помогало пользователям работать с машиной.
   Первой вещью, над которой работал Деннис, был ассемблер. Это было специальное программное обеспечение, переводившее программу, написанную на языке ассемблера в двоичный код. Язык ассемблера представлял собой символические трехбуквенные сокращения, которые на самом деле были командами машины. Ассемблер транслировал их в машинный язык, который, состоял из двоичных чисел 0 и 1. TX-0 имел довольно ограниченнуюсистему команд, так как его дизайн позволял использовать только два бита из каждого восемнадцатибитного слова в качестве команды для компьютера, то есть могли использоваться только четыре инструкции (каждая из возможных комбинаций двух битов — 00, 01, 10, и 11 представляла собой команду).


Все что компьютер мог делать, могло быть сведено к выполнению одной из тех четырех инструкций: ему требовалась одна команда, чтобы складывать два числа, и последовательность из примерно двадцати команд, чтобы умножить два числа. Тщательный просмотр написанного длинного списка команд компьютера, записанных в двоичном виде, например, 10011001100001 могли легко превратить вас в заговаривавшегося душевнобольного уже по истечении нескольких минут. Но та же самая команда на языке ассемблера могла бы выглядеть как ADD Y. После загрузки ассемблера в компьютер, который написал Деннис, вы могли бы писать программы в более простой символической форме, и спокойно сидеть и ждать, потирая от удовольствия руки, в то время как компьютер выполнял для вас перевод в двоичный код. После этого вы скармливали компьютеру уже подготовленный "объектный" код. Ценность этой программы была неизмерима: она позволяла программистам писать на языке, который напоминалестественный язык, а не эти бесконечные, вызывающие головокружение, ряды единиц и нолей.
   Другая программа, над которой Деннис работал вместе со Стокманом, была новым вариантом отладчика или дебаггера . TX-0 передали с программой отладки под названием UT-3, который позволял общаться с компьютером во время его работы, печатая команды непосредственно на Flexowriter-е. Этот отладчик имел большой недостаток: он воспринимал подаваемые ему команды только в восьмиричном виде. "Восьмеричный" – значит, что в основе системы исчисления лежит число восемь (в противоположность двоичной системе, в которой основой системы является число два, а в арабской системе исчисления, которой мы пользуемся ежедневно, является основой число десять), и поэтому восьмеричная система является достаточно сложной для повседневного использования. Зная об этом, Деннис и Стокман решили написать нечто лучшее, чем UT-3, что позволило бы пользователям работать с символическим языком ассемблера, который был более легок в использовании. В конце концов, они решили назвать его FLIT.


Он позволял пользователям находить ошибки в программе во время работы, устранять их, а также контролировать работу программы. (Деннис пояснял позднее, что "FLIT " означает Flexowriter Interrogation Tape (Допросная лента для Флексоврайтера), но, похоже, что настоящим источником имени был аэрозоль от насекомых, имевший аналогичное название). Фактически FLIT был квантовым скачком вперед, так как он освободил программистов от рутинной работы, и они могли теперь писать на компьютере программы так же, как музыканты, пишут свои произведения на музыкальных инструментах. С использованием отладчика, который занимал третью часть из 4,096 слов памяти TX-0, у хакеров были развязаны руки для создания нового, более смелого и свободного стиля программирования.
   Ну и какие же программы делалихакеры? Ну, иногда, это вообще не имело никакого значения, что делали эти программы. Питер Самсон однажды хакерил всю ночь программу, которая мгновенно конвертировала арабские числа в римские цифры, и Джек Деннис, который восхитился искусством, с которым Самсон проделал этот «подвиг», сказал, "Мой Бог, почему кто-нибудь другой не захотел это сделать?" Но Деннис на самом деле знал почему. Вполне достаточным оправданием было чувство власти и достижение совершенства, которое Самсон получал, когда он заправлял ленту с программой в считыватель, смотрел на мерцающие огни машины и щелкал выключателями. После чего, он видел как арабские цифры, нарисованные на простой старой классной доске, превращались в римские цифры – тоже своего рода хак, который в свое время сделали римляне.
   Именно Джек Деннис высказал Самсону предположение о весьма больших возможностях TX-0 и о ее способности посылать звуковые сигналы через спикер. И хотя не имелось никаких специальных средств для управления высотой, амплитудой, или тоном звука, способ управления им все-таки был — спикер производил звуковой сигнал в зависимости от состояния четырнадцатого бита в восемнадцатибитном слове, которое TX-0 содержал в своем сумматоре в некоторую конкретную микросекунду.


Звук включался или выключался в зависимости от того, был ли бит #14 нулем или единицей. Поэтому Самсон приступил к написанию программ, которые меняли бы различными способами числа в сумматоре, что позволило бы разными способами производить звуки различной высоты.
   В то время, только несколько людей в стране экспериментировали с использованием компьютера для создания музыки, и методы, которые они использовали, требовали интенсивных вычислений прежде, чем машина была в состоянии проиграть хотя бы ноту. Самсон, который реагировал крайне нетерпеливо, в отношении тех, кто предупреждал его о том, что он предпринимает попытки сделать невозможное, хотел, чтобы компьютер играл музыку прямо сейчас. Он научился управлять этим одним битом в сумматоре настолько хорошо, что мог командовать им так же, как Чарли Паркер саксофоном. В более поздней версии этого компилятора музыки, Самсон сделал так, что, если вы делали ошибку при программировании музыки, Flexowriter, переключался на красную ленту, и печатал «Человеку свойственно ошибаться, а божеству свойственно прощать».
   Когда люди со стороны слышали мелодию Иоганна Себастьяна Баха исполняемую одноголосной, монофонической квадратной волной, без всякиз признаков гармоничного звука, как правило, это не производило на них впечатления. Подумаешь, большое дело! "Этот гигантский кусок железа стоит три миллиона долларов и почему, интересно, он не в состоянии сделать то же самое, что умеет делать пятидолларовое игрушечное пианино?" Непосвященным было бесполезно объяснять, что Самсон фактически обошел процесс, которым музыка создавалась в течение многих веков. Музыка всегда возникала непосредственно при создании колебаний, которые уже были звуком по своей природе. А то, что было в программе Самсона, фактически представляло собой перезагрузку чисел, битов информации, загруженных в компьютер и составлявших код, в котором и находилась собственно музыка. Вы могли провести массу времени, просматривая на код, и вряд ли бы угадали, где же здесь была музыка.


Код становился музыкой только тогда, когда в сумматоре, находящемся где-то среди металла, проводов и кремниевых транзисторов, из которых состоял TX-0, происходили миллионы ошеломляюще кратких обменов данными. Самсон попросил компьютер, который не имел никаких явных навыков в использовании голоса, спеть ему песню и TX-0 подчинился.
   Это была компьютерная программа, которая не только была музыкальным произведением в переносном смысле, она в буквальном смысле словабыла музыкой. Она выглядела как программа, которая выполняла сложные математические расчеты и статистический анализ. Цифры, которые Самсон запихивал в компьютер, были универсальным языком, на нем можно было написать все: от фуги Баха до системы противовоздушной обороны.
   Самсон не говорил об этом ничего людям, которые в этом не разбирались, и которые не были впечатлены тем, что он сделал. Сами хакеры тоже не обсуждали этого, и не ясно даже, анализировали ли они вообще это явление в таких космических масштабах. Но Питер Самсон сделал это, и его коллеги, оценили его деяние по заслугам — потому что было очевидно, что это очень красивый и аккуратный хак, а этого было достаточно для оправдания траты массы времени на него.
   * * *
   Для хакеров подобных Бобу Сандерсу, который был лысоватым, пухловатым и веселым приверженцем TX-0, президентом Группы СиП в TMRC и студентом, изучавшим системы, такое времяпрепровождение было совершенным укладом жизни. Сандерс вырос в предместьях Чикаго, и все время пока он себя помнил, ему невероятно нравилась работа с электричеством и телефонами. Перед поступлением в МТИ, Сандерс нашел работу на лето, о которой можно было только мечтать: это была работа в телефонной компании, где он принимал участие в монтаже оборудования центрального офиса. Он проводил восемь блаженных часов за пайкой железа и плоскогубцами в руке, скрывшись с головой в потрохах различных систем. Это была идиллия, нарушаемая лишь часами приема пищи, потраченными на глубокое изучение руководств по оборудованию телефонной компании.


Оборудование, подобное тому, которое он видел в телефонной компании, находилось и под моделью железной дороги в TMRC. И это заставило Сандерса стать активным членом Клуба Моделирования Железной Дороги.
   Сандерс был старшекурсником, и он, в своей институтской жизни, добрался до TX-0 позже, чем Коток и Самсон. Он использовал свое время для того, чтобы заложить основу для своей социальной жизни, которая включала в себя ухаживание и возможный брак с Марж Френч, которая занималась нехакерской работой на компьютере в одном научно-исследовательском проекте. Однако TX-0 стал центром его академической карьеры, и он разделил общую хакерскую судьбу, наблюдая за тем, как его оценки начинают страдать от пропущенных занятий. Это не сильно его беспокоило, потому что он знал, что его реальное образование происходит в комнате №240 в Здании №26, за консолью Tixo. Через много лет он назовет себя и остальных «элитой».В частности он вспоминал: «Другие люди занимались изучением других вещей и проводили массу своего времени в четырехэтажных научных корпусах, проводя плохо пахнущие химические опыты, или работали в физических лабораториях, обстреливая частицами мишени. Но вне зависимости, почему они это делали — они это делали. А мы просто не обращали никакого внимания на то, чем занимались эти люди, потому что мы не испытывали к этому ни малейшего интереса. Они обучались тому, чему они обучались, а мы обучались тому, чему мы обучались. И то, что многое из этого не присутствовало в официально одобренном учебном плане, вообще говоря, было не очень-то и существенно для нас».
   Хакеры приходили ночью. Это был единственный способ извлечь максимум преимущества из критических "внеплановых" интервалов машинного времени на TX-0. В течение дня, Сандерс обычно появлялся на одном или двух занятиях в Институте. Затем тратил некоторое время, выполняя "базовое обслуживание", то есть занимался вещами, подобными еде и посещению ванной комнаты. Затем в течение, некоторого времени, он встречался с Марж.


Но, в конечном счете, он постепенно отфильтровывался к Зданию №26. Он просматривал некоторые из своих программ, которые были созданы предыдущей ночью и напечатаны на бумаге шириной в девять с половиной дюймов, используемой во Flexowriter-е. Он делал пометки и вносил изменения в листинг до такого состояния, который он считал следующей стадией работы. Возможно, после этого он пошел бы в Клуб Моделирования Железной дороги, где он дал бы свою программу кому– нибудь еще, а сам взял бы чужую, и проверил бы ее одновременно на хорошие идеи и на потенциальные ошибки. Затем он возвращался в Здание №26 в Клудж-Комнату рядом с TX-0, искал свободный Flexowriter, чтобы внести изменения в свой код. И все это время он постоянно проверял, не отменил ли кто-то свой одночасовой сеанс на машине, так как его собственный сеанс был расписан где-то на два или три часа ночи. Своего времени он дожидался или в Клудж– Комнате, или, убивая время, играл бы с каким-нибудь мостом, вернувшись ненадолго в Клуб Железной дороги, пока не приходила его пора.
   Сидя за консолью, лицом к металлическим стойкам, в которых находились транзисторы, где каждый транзистор, представлял собою место для хранения одного бита памяти, Сандерс настраивал Flexowriter, который приветствовал его словом "WALRUS (МОРЖ)". Это было нечто, что Самсон схакерил в честь поэмы Льюиса Кэрролла, в которой была строка: "Время пришло, и Морж сказал ...". Сандерс испытывал радость, доставая из ящика стола бумажную ленту, которая содержала программу ассемблера и заправляя ее в считыватель перфоленты. Теперь, когда компьютер был готов оттранслировать его программу, он брал ленту из Flexowriter-а, над которой он только что закончил работу и загружал с нее код на компьютер. После чего он наблюдал за долгим перемигиванием огней на панели, по мере того как компьютер переключался с "источника" (символический язык ассемблера) на "объектный" (двоичный) код, а получившийся результат компьютер пробивал на другой бумажной ленте.


Так как на этой ленте был пробит объектный код, который TX-0 понимал, то Самсон загружал ее опять в компьютер, надеясь, что программа будет работать так, как надо.
   Весьма вероятно, что в этот момент за его спиной толпилось несколько товарищей– хакеров, которые смеялись, шутили и пили Кока-Колу, заедая это все какой-нибудь «мусорной едой», которую они достали из торгового автомата, стоявшего на нижнем этаже. Сандерс предпочитал лимонное желе нарезаное клиньями, которое остальные называли «лимонной замазкой». Но в четыре часа утра, на вкус хорошим являлось абсолютно все. Они все наблюдали, как выполняется программа, как мерцают огни, слушали, как пищит спикер, жужжащий высоким или низким тоном в зависимости от того, что было в Бите 14 сумматора, и первое что, он увидел на CRT-дисплее после того, как программа была оттранслирована и запущена — зависание программы. После этого он лез в ящик за лентой с отладчиком FLIT и загружал его в компьютер. Теперь компьютер превратился в отладочную машину, и он снова загружал в него свою программу. Сейчас можно было попробовать выяснить, что и где пошло не так, как надо, и, если он был удачлив, то он это выяснял, после чего немедленно вносил изменения, вводя команды, пощелкав некоторыми из выключателей на пульте в нужном порядке, или набивал на Flexowriter-е новый код. После того, как все это запускалось и работало правильно, результат всегда приносил невероятное удовлетворение — когда вся эта комната, полная транзисторов, проводов, металла и электричества, сливалась воедино, для того чтобы создать точный результат того, что он придумал. Завершив это, он переходил к следующему шагу. Когда его время заканчивалось, и его место занимал кто-нибудь другой, у которого также чесались руки в предвкушении работы, он был готов провести несколько следующих часов, пытаясь понять, в каком месте произвошла ошибка.
   Сам по себе пиковый час был чрезвычайно интенсивен, но в течение многих часов до того, и даже спустя несколько часов после этого, хакер достигал состояния истинной концентрации.


Когда вы программируете компьютер, то вы должны знать, как все эти тысячи битов информации изменяются при переходе от одной инструкции к другой, и быть в состоянии предсказывать и обнаруживать эффекты всего этого движения. Когда вся эта информация собирается и соединяется воедино в вашей голове, то это похоже на слияние вашего мозга с самим компьютером. Иногда требовались часы, чтобы дойти до точки, где в ваших мыслях начинала складываться полная картина. И когда вы доходили до этой точки, то было бы непростительной глупостью, потратить впустую то, что вы так старательно пытались поддерживать во время марафонских бросков, попеременно работая на компьютере или детально изучая код, который вы написали на одном из автономных Flexowriter-ов в Клудж Комнате. Вы бы наверняка постарались сохранить это состояние концентрации "перенеся" его на следующий день.
   Эта модель мировоззрения неминуемо распространилась и на те немногочисленные островки бытия, которые у хакеров находились за пределами компьютерных вычислений. Контингент "ножа и кисти" в TMRC был весьма недоволен проникновением тиксомании в клуб: они считали ее троянским конем и переносом сферы деятельности клуба с моделирования железной дороги на вычислительную технику. И если бы вы присутствовали на одном из собраний клуба, проводимых каждый вторник в 17.15, то вы могли бы видеть странную картину: хакеры использовали каждый возможный поворот процедуры ведения собрания, чтобы сделать его столь же замысловатым, как и программы, которые они хакерили на TX-0. Предложения вносились только для того, чтобы делать другие предложения, чтобы, в свою очередь, опять делать предложения, возражения произносились не к месту, как будто повестка собрания содержала слишком много компьютерных ошибок. Примечание в протоколе встречи от 24 ноября, 1959 года, гласило: " мы осуждаем некоторых наших членов, которые могли бы принести клубу больше пользы, если бы они больше занимались СиП и меньше читали Правила Распорядка Роберта (Robert's Rules Of Order). " Самсон доставал клуб больше всех, и однажды, один из рассердившихся членов TMRC сделал предложение "купить пробку для затыкания словесного поноса Самсона."


    Хак процедуры ведения собрания был отдельно взятым явлением, но логическая структура мышления, требуемая для программирования, распространялась и на другие события в этой жизни. Вы могли задать хакеру вопрос и почувствовать, как его умственный сумматор обрабатывает биты информации, пока он не выдавал точный ответ.
   Марж Сандерс каждую субботу ездила утром к магазину Safeway на своем Фольксвагене, и после своего возвращения спрашивала своего мужа "Не хотел бы он помочь ей занести ей то, что она купила в бакалее? " На что Боб Сандерс отвечал "Нет". Ошеломленная, Марж затащила продукты самостоятельно. После того как, то же самое произошло несколько раз, она взорвалась, и, разбрасывая проклятия в его адрес, потребовала от него ответа, почему он ответил "нет" на ее вопрос.
   «Ты задала глупый вопрос" сказал он, —" Конечно, я не хочупомогать тебе, заносить продукты. Но если бы ты просто попросила меня принести их, то это было бы совсем другое дело».
   Это было так, как будто Марж загрузила программу в TX-0, и программа, как всегда делают программы, когда синтаксис неверен, вылетела бы с ошибкой. И только после того, как она выполнила "отладку" своего вопроса, Боб Сандерс позволил ему успешно выполняться на своем собственном ментальном компьютере.


Содержание раздела