Хакеры, герои компьютерной революции
Шрифт:
Вильямс сказал: "Вот что я тебе скажу. Как насчет того, что я установлю тебе гонорар в тридцать процентов с продаж, и тебе не надо будет работать на компанию здесь?". Ты будешь работать у себя дома, я буду платить тебе семьсот долларов в месяц, до тех пор, пока ты не закончишь свою первую игру за два или три месяца. Если ты не закончишь игру к этому времени, то будем считать, что сделка не состоялась".
Джон подумал, что данное предложение слишком заманчиво, чтобы его можно было упускать. После того как он приехал домой, его отец сказал ему, что у его сына был хороший шанс. Почему бы не удовлетвориться большим по размеру жалованьем и меньшим процентом с продаж? Какие гарантии были у Джона? Джон, который был несколько испуган шумным и задиристым Кеном, не хотел рисковать возможностью пожить в атмосфере, сложившейся около хакерства компьютерных игр. Он и в самом деле хотел уехать из Сан-Диего,
Это было самое соблазнительное решение, которое он принимал в своей жизни.
* * *
Для своих программистов Кен Вильямс приобрел в Окхарсте несколько домов. Джон Харрис переехал в один из домов, под называнием Гексагон Хауз, названный так по форме верхнего этажа, который был единственной частью дома видимой с дороги: он выдавался над оставшейся частью дома как большой массивный бельведер. Если стоять у входной двери, то можно было увидеть кухню и гостиную, спальные комнаты находились внизу. Вместе с Джоном жил двадцатилетний брат Кена, которого звали Джон Вильямс, который возглавлял в On-Line подразделение маркетинга и рекламы. Хотя Харрис понравился Джону Вильямсу, тем не менее, тот считал его фраером.
Идея первого проекта, о котором упоминал Кену Джон Харрис, появилась под влиянием аркадной игры "Pac-Man". В 1981 году, это была самая крутая игра, которая в дальнейшем станет самой популярной аркадной игрой для монетных игровых автоматов. Джон Харрис не видел ничего плохого в том, чтобы прогуляться к автомату, изучить игру вдоль и поперек, а также написать за месяц свою собственную версию для Atari 800. Для хакера, перенести полезную или прикольную программу с одной машины на другую было добродетельным деянием. Сама мысль о том, что кто-то может владеть "Пак-Маном", прекрасной маленькой игрой, в которой приведения гонялись за маленьким Пак-Маном, глотавшим желтые точки, даже не приходила в голову Джону Харрису. Для него существенным было лишь то, что Pac-man был естественным воплощением всех возможностей Atari. Поэтому, несмотря на то, что он сам лично предпочитал игры с космическими сценариями и большим количеством стрельбы, Джон сказал Кену, что для Atari 800 он напишет Pac-Man.
Кен уже продавал нечто подобное для Apple под названием "Gobbler".
Программа была написана профессиональным программистом, которого звали Олаф Лубек и который, в свое время занимался программированием для науки. Эту игру он по своей воле прислал Кену, прочитав его объявление "Требуются авторы". Программа продавалась в количестве около восьми сотен в месяц и Кен попросил Лубека перенести ее на домашний компьютер Atari.
Эппловский вариант игры привел Харриса в ужас. "Она не выглядела привлекательной, в ней абсолютно не было анимации", - говорил он потом, "а обнаружение столкновений вообще не выдерживало никакой критики". Харрис ни за что не простил бы Олафу, если бы тот совершил ошибку, начав втупую, бит за битом переносить игру (благо на Apple и Atari были одинаковые процессоры 6502). Это значило, что не было бы использовано ничего из того, что Джон считал отличительными особенностями Atari, которые были реализованы на специализированных чипах. Эта мысль была для него невыносимой.
Джон настоял на том, что он сумеет создать куда как лучшую игру в течение месяца, и Кен Вильямс снял Лубека с проекта. Джон Харрис на определенный период времени погряз в интенсивном хакерстве, часто отрываясь от компьютера только под утро. Стиль программирования Джона был свободно текущим. Он импровизировал на ходу. "Что приходило мне в голову, то я и делал? то что получалось было очень нестандартно", - говорил он потом. Иногда Джон этим был обеспокоен, особенно когда какой-нибудь более традиционный программист, в чьей голове было засилье блок-схем и идей о стандартной структуре и ясной документации, занимался проверкой его кода. Когда Джон увольнялся из Gamma Scientific, чтобы переехать в Коарзголд, он беспокоился что на его место придет кто-нибудь подобный, кто выкинет весь его замечательный код, заменив его на нечто более структурированное, точное? и худшее. Так получилось, что Gamma рассматривала кандидатуры шести программистов, у пяти из которых, по словам Джона, "дипломы и степени торчали из ушей". Шестым был хакер без диплома.
Джон всячески упрашивал своего босса нанять хакера.
"Но он хочет столько же, сколько и те, у которых есть дипломы", сказал босс Джону.
"Он стоит дороже", - сказал Джон. Босс его послушался. А когда Джон привел нового работника и объяснил ему как работает его система, новый хакер очень возбудился, начав просматривать код, который
Работая над большими частями игры и постоянно держа в уме то, что он хотел получить в итоге, Джон за месяц сумел создать на Atari игру, подобную Pac-Man. Для его написания он использовал часть процедур, которые разрабатывал раньше. Это был достаточно хороший пример творческого применения копирования: реинкарнация старых процедур, с помощью которых программист разрабатывал средства, которые делали побочные функции основными. И вот однажды процедуры Джона были модифицированы и использованы более эффективным образом. Это был нормальный и естественный результат применения хакерских принципов.
Существенный единственный недостаток был в том, что каждому из третьего поколения хакеров надо было писать свои собственные библиотеки функций и свой инструментарий, дополняя их случайными дополнениями от своих друзей и пользовательских групп.
Получившийся Pac-Man был очень похож на аркадную версию. Возможно, это была лучшая из ассемблерных программ, написанных для домашнего компьютера Atari. Но когда Харрис принес показать свою работу Кену Вильямсу, на горизонте замаячила проблема. Спустя некоторое время, некоторые компании стали настаивать на том, что права копирования, которыми они владели на игры для игровых автоматов, делают любые переносы этих игр на домашние компьютеры незаконными. Одним из самых больших правообладателей была Atari, и всем небольшим издателям компьютерных игр типа Broderbund, Sirius и On-Line было разослано письмо следующего содержания:
ATARI SOFTWARE ПИРАТСТВО.
ИГРА ЗАКОНЧЕНА Atari является лидером в разработке игр, таких как Asteroids≥ и MISSILE COMMAND≥... Мы по достоинству оцениваем реакцию, которую мы получаем от любителей игр со всего мира, сделавшую наши игры столь популярными. Но к несчастью, появились компании и частные лица, которые занимаются копированием игр ATARI, пытаясь при этом получить незаслуженные доходы из игр, которые они не разрабатывали. ATARI должна защищать свои инвестиции, так чтобы мы имели возможность и дальше заниматься вложениями средств в разработку новых и лучших игр. В соответствии с этим, ATARI делает предупреждение как пиратам, умышленно копирующим программное обеспечение, так и частным лицам, которые просто не беспокоятся соблюдением законов о праве копирования, в соответствии с которыми ATARI зарегистрировала в Библиотеке Конгресса аудиовизуальные разработки, связанные со своими играми и считает их своей исключительной собственностью. ATARI будет защищать свои права решительно применяя права копирования и предпринимая соответствующие действия против неавторизованных субъектов, которые воспроизводят или адаптируют существенные копии игр ATARI в независимости от оконечного компьютера или устройства, которые они при этом используют?
Кен Вильямс знал, что Atari потратило миллионы долларов для резервирования прав на Pac-Man. Посмотрев на красочную, шуструю и немельтешащую копию аркадной игры, написанную Харрисом, он понял, что это была точная копия того, чего нельзя было продавать. "Она слишком сильно походит на Pac-Man", - сказал он, - "Ты зря потратил время, Харрис". Он предложил Джону видоизменить игру. Харрис забрал игру домой и перепрограммировал графику. Новая версия была практически такой же: отличие было в том, что привидения - придурковатые маленькие создания, которые гонялись за Пак-Маном, теперь носили защитные очки и имели тонкие усы. Призраки стали инкогнито! Отличный иронический комментарий к полному идиотизму сложившейся ситуации.
Это было не совсем то, что Вильямс имел в виду. В течение следующих двух недель, Джон и Кен занимались интенсивными консультациями с юристами. Они хотели понять, как им можно было сохранить суть Pac-Man, и вместе с тем оставить Atari "в ее бухте"? Юристы сказали, что единственное, на что распространяются права Atari - это изображения характеров в этой игре.
Был разработан новый сценарий, с отличающимся сюжетом про профилактическое лечение зубов. Брат Кена - Джон Вильямс, предложил, чтобы призраков заменили на "веселые лица". Они вертелись и сновали по всему лабиринту. Джон Харрис заменил желтого Пак-Мана на щелкающие вставные челюсти. Вместо точек на экране размещались "спасители жизни" - мятные таблетки, и запрограммировал процедуру, что если игрок съедал все точки, то появлялась зубная щетка, которая чистила зубы. Запрограммировать все это было несложно - Джон Харрис просто нарисовал новые образы в таблице изображений и вставил их в уже работающую программу. Это было одно из замечательных свойств компьютера, заключающееся в том, что вы могли изменить мир по своему желанию.