Маккензи боялся обвинений, что он руководит каким-то детским лагерем, когда малыш в коротких штанишках, чья голова едва виднелась из-за консоли TX‐0, наблюдал, как какой-нибудь аспирант с официальным допуском к компьютеру вводит свой код на флексографе, и выдавал ему ломающимся подростковым голосом что-то вроде: «У вас здесь ошибка… Вы должны ввести другую команду». Естественно, самоуверенный аспирант будет сходить с ума, удивляясь, как какой-то маленький червяк может указывать ему, и кричать, чтобы тот шел играть в другое место. Однако замечания Питера Дойча неизменно оказывались верными. Дойч нагло заявлял, что собирается писать программы лучше, чем кто-либо из тех, кто работает в лаборатории.

Самсон, Коток и другие хакеры приняли Питера Дойча в свои ряды. Благодаря своим познаниям в области компьютеров он оказался достоин равного обращения. Но официально допущенные к TX‐0 не испытывали особого почтения к нему, особенно в минуты, когда он маячил за их спинами, готовый заметить любую ошибку на флексографе и сразу же оповестить об этом.

Эти официально допущенные пользователи появлялись в комнате с TX‐0 с регулярностью пассажиров. Запускаемые ими программы были направлены на статистический анализ, перекрестные связи, моделирование внутренней части ядра клетки. Приложения… Полезно для пользователей, а для хакеров — пустая трата времени. Для них это все равно что сидеть за дроссельной заслонкой самолета. Как сказал Питер Самсон, знатный ценитель классической музыки, производить вычисления с помощью TX‐0 напоминало игру на абсурдно дорогом музыкальном инструменте, импровизировать, сочинять, подобно битникам на Гарвард-сквер в миле отсюда, и петь с полной творческой отдачей.

Такие возможности им стали доступны благодаря системе программирования, разработанной Джеком Деннисом и другим профессором, Томом Стокманом. Когда компьютер TX‐0 появился в МТИ, его характеристики урезали по сравнению с периодом работы в лаборатории Линкольна: память сильно уменьшили до 4096 «слов» по восемнадцать бит в каждом. «Бит» — единица измерения в двоичной системе, либо 1, либо 0. Эти двоичные числа — единственное, что понимают компьютеры. Ряд двоичных чисел называется «словом». Кроме того, к компьютеру TX‐0 практически не прилагалось программное обеспечение. Поэтому Джек Деннис, еще до того, как познакомил членов TMRC с TX‐0, писал «системные программы», помогающие пользователям работать на компьютере.

Первое, над чем работал Деннис, стал ассемблер. Он представлял собой транслятор, переводивший язык ассемблера с трехбуквенными символическими сокращениями, обозначающими команды, на компьютерный язык на основе двоичных чисел 0 и 1. В TX‐0 использовался сильно урезанный язык ассемблера, позволяющий использовать для команд только 2 бита каждого 18‐битного слова. Поэтому были доступны только четыре команды (каждая возможная 2‐битная вариация — 00, 01, 10 и 11 — представляла собой команду). Все, что делал компьютер, сводилось к выполнению одной из четырех команд: для сложения двух чисел требовалась одна команда, а для умножения двух чисел — серия из примерно двадцати команд. Взглянув на длинный список компьютерных команд, записанных в виде двоичных чисел, например, 10011001100001, пользователь терял рассудок. Но та же команда на ассемблере может выглядеть так: ADD Y. После загрузки в компьютер ассемблера Денниса стало возможно писать программы в более простой символической форме и ждать, пока компьютер сам выполнит перевод в двоичный код. А дальше нужно только загрузить полученный код обратно в компьютер. Сложно недооценить это достижение Денниса. Его ассемблер позволял программистам писать код, а не головокружительную серию нулей и единиц.

Другая программа, над которой Деннис работал совместно со Стокманом, — отладчик. TX‐0 поставлялся с отладочной программой UT‐3, взаимодействующей с компьютером во время его работы путем ввода команды непосредственно с флексографа. Но и здесь были большие проблемы. Так, он принимал код только в восьмеричной числовой системе. «Восьмеричная» — система исчисления с основанием 8 (в отличие от двоичной с основанием 2 и арабской с основанием 10). Это сложная в использовании система. Поэтому Деннис и Стокман решили написать нечто лучшее, чем UT‐3, что позволило бы пользователям использовать символический, более простой в работе язык ассемблера. Программа получила название FLIT. Она позволила пользователям находить программные ошибки во время сеанса работы, исправлять их и поддерживать работу программы. Деннис рассказывал, что название FLIT произошло от названия ленты для флексографа. Однако на самом деле источником вдохновения послужил спрей от насекомых одноименного бренда. FLIT, квантовый скачок вперед, позволил программистам создавать действительно оригинальные программы на компьютере подобно тому, как музыканты пишут свои произведения с помощью музыкальных инструментов. С помощью отладчика, занимавшего треть из 4096 слов всей памяти TX‐0, хакеры могли свободно создавать новый, более смелый стиль программирования.

Какие же программы писали хакеры? Ну, иногда эти программы делали нечто бессмысленное. Например, Питер Самсон сочинил программу, мгновенно превращавшую арабские цифры в римские. А Джек Деннис, хотя и восхитился его мастерством, все же заметил: «Боже мой, кому это пригодится?» Но Деннис понимал, что Самсон это делал ради ощущения собственной силы и восторга пользователя, когда тот вставлял бумажную ленту, следил за лампочками и переключателями и видел, как арабские цифры превращаются в римские.

И именно Джек Деннис подсказал Самсону, что с помощью TX‐0 можно воспроизводить звуки. Тогда не было встроенных регуляторов высоты, амплитуды звука, однако существовал способ управлять динамиком — на звучание влиял 14‐й бит в 18‐битных словах в памяти TX‐0, загруженный в конкретную микросекунду. Звук включался или выключался в зависимости от того, был 14‐й бит 1 или 0. Так Самсон стал писать программы, меняющие комбинации двоичных символов для получения различных результатов.

В то время лишь немногие в стране экспериментировали, используя компьютер для прослушивания музыки. Используемые методы требовали огромных объемов вычислений, прежде чем машина могла сыграть единственную ноту. Самсон отметал сомнения тех, кто в него не верил и говорил о невозможности достижения результата. Он хотел, чтобы компьютер сразу играл музыку. Поэтому он учился управлять одним битом в памяти компьютера так же искусно, как Чарли Паркер играл на саксофоне. В более поздней версии музыкальной программы Самсон настроил ее таким образом, что при появлении ошибки в коде флексограф переключался и выводил на дисплее: «Ошибаться свойственно людям, прощать — богам».

Посторонних не трогала монотонная мелодия Иоганна Себастьяна Баха, монофоническая волна, лишенная гармонии. Подумаешь! Три миллиона долларов стоит эта гигантская машина. Так почему бы ей не сделать по меньшей мере столько же, сколько может сделать пятидолларовое игрушечное пианино? Бесполезно объяснять, что Питер Самсон фактически воссоздал процесс создания музыки на протяжении многих эпох. Музыка всегда создавалась путем комбинации звуковых вибраций. В программе Самсона оказалось, что музыка заключена в наборе цифр, битов информации, введенных в компьютер. Можно часами смотреть на код и не понимать, где здесь музыка. Она появляется только тогда, когда миллионы поразительно коротких обменов данными происходили в памяти компьютера, расположенной на одном из стеллажей TX‐0. Самсон попросил компьютер, не имевший понятия, что такое голос, спеть, и тот подчинился.

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

Самсон ничего не стал объяснять людям, не оценившим его достижения. Да и среди хакеров это не обсуждалось. Вряд ли они столь детально анализировали свои успехи. Питер Самсон просто сделал это, а хакеры просто оценили его удачный хак, и этого было достаточно.

*****

Для хакеров вроде Боба Сондерса — лысеющего, пухлого и веселого студента, допущенного к TX‐0, возглавлявшего «энергетический комитет» TMRC, исследователя, — это был идеальный образ жизни. Сондерс вырос в пригороде Чикаго; сколько он себя помнил, работа электрических и телефонных сетей завораживала его. Прежде чем поступить в МТИ, Сондерс отработал лето на работе своей мечты — в телефонной компании, устанавливающей офисное оборудование. Он проводил восемь божественных часов с паяльником и плоскогубцами в руках, работая в недрах коммутационных систем. Идиллию нарушали только обеденные перерывы, во время которых Сондерс досконально изучал технические талмуды. Именно оборудование под макетом железной дороги убедило его принять активное участие в работе TMRC.

Сондерс был уже старшекурсником, когда освоил TX‐0. Его карьера хакера началась позже, чем у Котока и Самсона. Он использовал перерывы в работе для налаживания жизни в социуме, ухаживая за будущей женой Мардж Френч. Мардж не хакерила, а решала задачи разных компьютерных проектов. Тем не менее TX‐0 был центром его существования в университете, а его успеваемость так же страдала от постоянных пропусков занятий, как и у остальных хакеров. Ему было все равно. Он знал, что по-настоящему он учится в комнате 240 корпуса № 26, за панелью управления TX‐0. Годы спустя он описывал себя с товарищами как «элитную группу». «Другие студенты шли на учебу, часами тоскуя в вонючих аудиториях или в лаборатории, соединяя различные частицы или что они там делали. А мы просто не обращали на них внимания. Нас это не интересовало. Они изучали свое, а мы свое. И тот факт, что львиная доля нашей учебы не касалась официального учебного плана, по большому счету ничего не значил».