Хакеры, герои компьютерной революции
Шрифт:
Роль Котока в претворении в жизнь шахматной программы была показательна в том же плане, что и роль хакеров в области искусственного интеллекта. Обычно, какая-нибудь "Большая Голова", например Маккарти или его коллега Марвин Минский, начинала научный проект или интересовалась вслух реальностью реализации некоторой задачи на компьютере, а хакеры, если им это было интересно, начинали над этим работать.
Шахматную программу начинали писать на языке ФОРТРАН, который был одним из самых первых компьютерных языков. Компьютерные языки были гораздо более похожи на естественные языки, чем язык ассемблера, на них было гораздо легче писать, и с их помощью в нескольких строчках программы можно было сделать гораздо больше. Однако, каждый раз, когда компьютер получал список команд, написанных на языке ФОРТРАН, компьютер должен был сначала перевести эти инструкции в свой собственный бинарный код. Это делалось при помощи программы, называемой компилятором, которая делала максимум этой работы, равно как и занимала максимум ценного пространства памяти компьютера. В итоге, использование компьютерного языка было большим шагом в сторону от прямого контакта с компьютером, поэтому хакеры, как правило, предпочитали
Коток, вообще-то, признавал, что из-за огромного количества инструкций, которое было необходимо реализовать в программе для игры в шахматы, часть кода следовало писать на ФОРТРАНЕ, а часть - на ассемблере. Они хакерили программу по частям, при помощи "генераторов перемещений", которые были основной структурой данных, а также применяя все виды инновационных алгоритмов для реализации стратегии. После ввода в машину всех правил для перемещения каждой из фигур, они добавили в нее несколько параметров, с помощью которых оценивались позиции фигур, рассматривались различные варианты ходов, и, в конечном счете, выполнялись перемещения фигур, которые переводили программу в еще более сложное состояние. Коток занимался ею в течение нескольких лет, программа росла в размерах, по мере того как МТИ модернизировал компьютеры IBM. И, наконец, в одну памятную ночь, несколько хакеров собрались вместе, для того чтобы посмотреть, как программа выполняет свои первые ходы в реальной игре. Программа достаточно уверенно разыграла дебют, но после восьми или около того ходов, на "доске" сложилось тяжелое для компьютера положение - над ним нависла угроза мата. Всем было любопытно, как машина на это отреагирует. Спустя некоторое время (все знали, что во время этих пауз машина "думает", если считать за "мышление"
рассмотрение компьютером различных вариантов ходов, их оценку, отбрасывание большинства из них, и использование предопределенных параметров для того, чтобы выполнить окончательный ход). В конечном итоге, компьютер передвинул свою пешку на две клетки вперед, перепрыгнув через другую фигуру на доске. Ошибка! Но достаточно хитрая - компьютер вывел фигуру за пределы доски. Может быть, программа пыталась разработать новый шахматный алгоритм, с помощью которого она хотела одержать верх?
В других университетах, профессоры делали публичные заявления, что компьютеры никогда не сумеют победить человека при игре в шахматы.
Но хакеры разбирались в этом лучше. Они были теми, кто вел компьютеры к более высоким вершинам, чем этого ожидали. И хакеры, благодаря своей производительной и значимой связи с компьютером были в первых рядах тех, кто пользовался благами, даваемыми компьютером.
Но это не ограничивалось теми, кто имел доступ к источнику этих благ. Каждый мог получить что-нибудь полезное из использования думающих машин в автоматизированном мире. И разве не получил бы каждый из обитателей этого мира, еще больше, если бы он подходил к миру с той же самой энергией при получении знаний, с тем же скептицизмом по отношению к бюрократии, с той же открытостью воображения и извлечением пользы из успеха, разделенного с окружающими, так же подстегивая самого себя при внедрении улучшений и желая поступать также как все, кто следовал принципам Хакерской Этики? Разве не выиграл бы он, воспринимая остальных людей, тем же самым непредвзятым способом, которым компьютеры воспринимали любого, кто набивал код на Flexowriter-e? Разве мы бы не выиграли, научившись у компьютера его совершенной работе и перенеся эти совершенные методы в человеческую жизнь? И если бы каждый, кто работает с компьютерами руководствовался тем же непорочным, продуктивным и творческим импульсом, которым руководствовались хакеры, то Хакерская Этика могла бы распространиться в обществе как благостная волна, и тогда компьютер действительно изменил бы мир к лучшему.
В монастырских стенах Массачусетского Технологического Института, люди имели достаточно свободы, чтобы думать и жить этой хакерской мечтой. Никто не предполагал, что эта мечта может выйти за пределы Института. Вместо этого, хакеры приступили к строительству, прямо здесь в МТИ, хакерского Ксанаду, которого больше не было нигде на свете. ((Xanadu) экзотическое, необычное место, название местности из поэмы С.Т. Колериджа "Кублахан" пр. перев.).
3. "Космические войны".
Летом 1961 года, Алан Коток и другие хакеры из TMRC узнали, что свежеиспеченная компьютерная компания скоро привезет в МТИ абсолютно новый компьютер, который представляет собой следующий шаг в развитии вычислительной техники. Это был компьютер, который сделал несколько шагов вперед в плане развития интерактивных способностей TX-0. Это была машина, которая была гораздо лучше, чем TX-0.
PDP-1. Этот компьютер навсегда изменит мир вычислений. Он сделает все еще неясную хакерскую мечту немногим ближе к реальности.
Алан Коток очень хорошо зарекомендовал себя на TX-0, поэтому его, вместе с Сандерсом, Вагнером, Самсоном и несколькими другими ребятами, Джек Деннис взял на работу в состав группы системного программирования TX-0. Работа оплачивалась исходя из необычайно щедрых $1.60 в час. Для некоторых из хакеров, работа была еще одной отмазкой от посещения занятий, поэтому такие люди как Самсон, рисковали никогда не окончить институт, но они были слишком заняты процессом хакерства, чтобы думать и жалеть об этом. Тем не менее, Коток был не только в состоянии учиться, но и зарекомендовал себя "каноническим" хакером. В пределах TX-0 и TMRC он приобрел легендарный статус. Один из хакеров, который тогда еще только поступил в МТИ, вспоминал, как Коток показывал новичкам, как работает TX-0: "У меня создалось впечатление, что у него были проблемы с щитовидкой или что-то этом роде", - говорил Билл Госпер, который также станет со временем каноническим хакером, - "Он говорил очень медленно, был весьма круглолиц и его глаза были постоянно полузакрыты. Но это было полностью неверным представлением. [В отношении TX-0], Коток пользовался бесконечным моральным авторитетом. Он написал программу для игры в шахматы. Он понимал, как работает железо". Последнее
замечание представляло собой весомый комплимент. "Понимание работы железа" было сродни постижению Дао окружающей природы.Тем летом, когда начали появляться слухи о PDP-1, Коток работал на Western Electric. Эта была работа, о которой можно было только мечтать, так как из всех возможных систем телефонная система содержала в себе большинство свойств. Клуб Моделирования Железной Дороги часто предпринимал походы в районные офисы телефонной компании. Большинство из этих вояжей было сродни посещению музея людьми, которые интересовались живописью. Коток сделал для себя небольшое открытие: оказывается, несмотря на весь рост компании за последние десятилетия, только некоторые из ее инженеров хорошо понимали все связи внутри системы. Тем не менее, инженеры были в состоянии рассказать подробности о некоторых специфических компонентах системы, таких, например, как координатные коммутаторы или шаговые искатели. Коток и остальные бегали по пятам за этими хранителями информации, и инженеры, довольные оказанным им вниманием, охотно беседовали с ними, даже не догадываясь о том, как эти супервежливые ребята из колледжа на самом деле будут использовать полученные знания.
Участие в этих экскурсиях Коток считал для себя обязательным, потому что во время их проведения он имел возможность заглянуть в некоторые технические руководства, которые попадались ему в руки, и проверить, куда бы он мог добраться, набирая различные номера на сложной и малопонятной телефонной системе МТИ. Это было исследование, сродни познанию возможностей TX-0. Во время прошлой зимы 1960-61 года, хакеры TMRC занимались тем, что они называли "построением плана телефонной сети", записывая все места, до которых они могли дозвониться из телефонной системы МТИ. Хотя они и не подсоединялись к телефонным сетям общего пользования, телефонная система института позволяла им подключаться к Lincoln Lab, а оттуда к ее военным подрядчикам по всей стране. Дело было только за записью и проверкой.
Сначала пробовался один код выхода на линию, после чего, добавляя к нему различные цифры, они слушали, кто отвечал на другом конце провода. Людей, поднимавших трубку на том конце, спрашивали о том, кто они, и куда они попали, а затем добавляли цифры к этому номеру для того, чтобы проскочить еще дальше. Иногда, если у ничего не подозревающей телефонной компании было непредусмотренное подключение, то вы могли бы попасть за пределы университетского городка - в пригород. Коток, позднее, говорил: "Если при проектировании телефонной системы была допущена ошибка, а в особенности такая, которая позволяла проходить вызовам туда, куда они не должны были попадать, я не чувствовал за собой никакой вины, это была их проблема - не моя".
Основным побудительным мотивом было исследование, а не мошенничество, которое рассматривалось как крайне дурная форма извлечения выгоды из этих странных соединений. Иногда люди со стороны не могли этого понять. Например, товарищи Самсона по комнате в общежитии Бартон Холл, которые не были хакерами, считали нормальным извлекать выгоду из системных ошибок, не руководствуясь святым оправданием исследования системы. После того, как они в течение многих дней терроризировали Самсона просьбами, он, в конце концов, сдался и всучил им двадцатизначный номер, который по его словам, позволял добраться до весьма любопытного места. "Вы можете набрать этот номер с телефона в холле", - сказал он им, - "но я не хочу присутствовать рядом". Они начали боязливо набирать номер, а Самсон, тем временем спустился к телефону на этаж ниже, который зазвонил сразу же, как только он к нему подошел. "Это Пентагон", - сказал он в трубку как можно более официальным голосом. " Назовите, пожалуйста, ваш секретный код доступа". Из телефона сверху донеслось прерывистое дыхание человека, объятого ужасом, после чего раздался щелчок рычага, на который положили трубку.
Запись карты сети была тривиальным занятием, столь свойственным хакерской натуре, чье желание познать работу системы перевешивало страх попасться.
Хотя эзотерика телефонной компании и привлекала Котока, перспектива PDP-1 превосходила ее по своей важности. Возможно, потому что он чувствовал, что ничто, даже телефонный хакинг, не может с ней сравниться. Люди, которые спроектировали и продавали этот новый компьютер были совсем не похожи на пиджачно-галстучное сборище обычной компьютерной компании. Эта компания была образована совсем недавно и называлась Digital Equipment Corporation (DEC). Некоторые из пользователей TX-0 знали, что самыми первыми продуктами DEC были интерфейсы для TX-0. Было удивительно, но некоторые из основателей этой компании имели свой взгляд на вычислительную технику, отличавшийся от традиционного взгляда, которого придерживалась IBM, со своими машинами, работавшими в режиме пакетной обработки. Было удивительно, но инженеры из DEC придерживались той же свободной, интерактивной, импровизационной и всепоглощающей манеры работы, которую практиковало сообщество TX-0. В DEC создали компьютер, который очень много реализовывал из данного поведения. PDP-1, чье названием расшифровывалось как Programmed Data Processor ("Процессор Данных, Программируемый"), что выглядело куда как менее устрашающе, чем "компьютер", от которого веяло неуклюжими гигантами, был известен как первый миникомпьютер, который разрабатывался для небольших объемов вычислений - для научных исследований, математических расчетов и для? хакинга. Он был настолько компактен, что полностью смонтированная система занимала места не больше чем три холодильника. Ему не было нужно интенсивное кондиционирование, и процедура его запуска не требовала целой группы обслуживающего персонала, которому надо было последовательно подавать в правильном порядке питание на отдельные блоки или запускать тактовый генератор, и все это помимо прочих задач, также требовавших повышенного внимания. Стоимость машины составляла $120,000, это было достаточно дешево, так что большая часть народу, жаловавшегося на высокую стоимость машинного времени, могла успокоиться. Тем не менее, компьютер, который был вторым по счету, не стоил МТИ ни цента (первую машину приобрела научная фирма Болта Беранека и Ньюмана (BBN), находившаяся по соседству). Он был предоставлен фирмой DEC для лаборатории RLE. Теперь у хакеров появилось гораздо больше времени для своих занятий, чем было на TX-0.