Книга Миллиардер из Кремниевой долины, страница 21. Автор книги Пол Аллен

Разделитель для чтения книг в онлайн библиотеке

Онлайн книга «Миллиардер из Кремниевой долины»

Cтраница 21

– Я могу за девять.

Другой откликался:

– А у меня – пять!

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

(Теперь мы живем в ином мире, где шестнадцать гигабайт памяти – в четыре миллиона раз больше, чем было у нас на «Альтаире» для Бейсика, – упакованы в iPhone. Изящный, короткий код можно считать утерянным искусством. Люди еще пытаются делать программы эффективными, но никто уже не экономит байты – и даже мегабайты.)

Несколько лет назад, когда мы с Монте вспоминали те дни, он сравнил программирование с писательским ремеслом – мне это показалось хорошей аналогией нашего подхода к Бейсику для «Альтаира». Сначала мы определили сюжет – концептуальный этап программирования. Затем мы взяли большую проблему и разделили ее на составные части – «главы», сотни подпрограмм и связанные с ними структуры данных, а потом снова соединили их вместе. Если строчка не работала, мы переписывали черновик. Главная проблема – удерживать целую картину, пока сражаешься с деталями маленькой подпрограммы, и постоянно сопоставлять одно с другим. Это была, пожалуй, самая сложная и захватывающая задача из всех, с какими я сталкивался.

По мере продвижения вперед наша уверенность росла. Однажды мы позвонили в MITS узнать программы установления связи для телетайпа, чтобы написать коды ввода-вывода для «Альтаира». Мы поняли, что мы на верном пути, когда Билл Йейтс, партнер Эда Робертса и ведущий инженер, сказал, что до нас никто не задавал им этот вопрос. Тут мы поняли, что работа наша.

Как-то ночью мы возвращались к Айкену после вылазки в кафе; нас остановила университетская полиция и попросила предъявить документы. Мы-то считали, что никому не вредим, занимая машинное время, тем более что PDP-10 использовались мало. Но мы не знали, что Гарвард оплачивает компьютеры на пару с Министерством обороны, пропорционально использованному времени. Работая с симулятором, который пожирал много процессорного времени, я входил с паролем Билла. Когда пришли январские счета, доля Гарварда оказалась подозрительно велика; и очевидный подозреваемый нашелся быстро: Уильям Генри Гейтс III (летом Билл предстал перед административной комиссией, но отделался порицанием).

К концу февраля – через восемь недель после нашего первого контакта с MITS – интерпретатор был готов. Две тысячи строк кода, втиснутых примерно в 3200 байт. Это был крепкий маленький Бейсик – разумеется, ободранный, но мощный для своего размера. Никто не смог бы впихнуть больше функциональности и скорости в такой крохотный участок памяти. Недавно Билл сказал мне:

– Это лучшее, что мы сделали.

И это была действительно совместная работа. Я бы оценил вклад каждого так: 45 % – Билл, 30 % – Монте и 25 % – я, не считая средств разработки [4].

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

И это было только начало.


Я был готов отправляться в Альбукерке, а Билл начал переживать. Что если я где-нибудь ошибся, переводя команды 8080-го в макроассемблер? Наш Бейсик успешно прошел проверку на моем симуляторе PDP-10, но у нас не было доказательств, что сам симулятор безупречен. Один-единственный неправильный символ может остановить программу на реальном чипе. В ночь накануне моего отъезда, когда я отправился спать, Билл сидел с инструкцией к 8080-му и переперепроверял мои макросы. Когда наутро я, по дороге в аэропорт Логана, забирал у Билла свежую перфоленту, он смотрел на меня мутными глазами. Коды правильные, сказал мне Билл. Насколько он мог судить, в моей работе не было ошибок.

Полет прошел спокойно, и только когда самолет начал снижение, я осознал, что кое-что забыл: начальный загрузчик, небольшую последовательность команд, которая сообщит «Альтаиру», как прочитать интерпретатор Бейсика и сохранить его в памяти. Загрузчик был необходим микропроцессору в эпоху до постоянных запоминающих устройств. Без него желтая лента в моем портфеле ничего не стоила. Я чувствовал себя идиотом, который не подумал ни о чем таком у Айкена, где можно было без суеты написать загрузчик и отладить его на PDP-10.

А сейчас время поджимало. За несколько минут до посадки я схватил блокнот и начал строчить код загрузчика на машинном языке – никаких ярлыков, никаких символов, только последовательность трехзначных чисел в восьмеричной системе (с основанием 8), язык общения для чипов Intel. Каждое число представляло один байт, команду для 8080-го, и большую их часть я помнил наизусть. «Ассемблер вручную» – известный своей сложностью процесс, даже при незначительных объемах. Я уложил программу в 21 байт – не самый изящный вариант, но в запарке мне было не до элегантности.

Я вышел из терминала весь потный и в своем лучшем костюме – коричневый пиджак из искусственной замши и галстук. Предполагалось, что Эд Робертс встретит меня, и я минут десять стоял, выглядывая кого-нибудь в деловом костюме. Неподалеку, на подъездной дороге притормозил пикап, и из него вылез большой, дородный человек с двойным подбородком, в шесть футов четыре дюйма ростом и, наверное, в 280 фунтов весом. Он носил джинсы, рубашку с короткими рукавами и узенький галстук – я впервые видел такой не на Западе. Человек подошел ко мне и спросил с гулким южным акцентом:

– Вы Пол Аллен?

Его волнистые черные волосы редели у лба.

– Да, – ответил я. – А вы Эд?

– Поехали, – сказал он. – Садитесь в машину.

Пока мы тряслись по пропеченным солнцем улицам города, я пытался угадать, как все повернется. Я ожидал увидеть облеченного властью руководителя из какой-нибудь передовой фирмы, вроде тех, что сосредоточены на шоссе 128, «высокотехнологичном поясе» Бостона. Реальность оказалась иной.

(В один из следующих прилетов я спустился на бетон, и мне в голову угодил куст «перекати-поля». Альбукерке – не Массачусетс.)

Эд сказал:

– Поедем в MITS, посмотрите на «Альтаир».

Мы въехали в торговую зону и остановились у одноэтажного торгового ряда. Кол-Линн Билдинг со своим кирпичным фасадом и большими зеркальными окнами, наверное, выглядел современно в 1955 году. За углом была витрина салона красоты. Я прошел за Эдом в стеклянную дверь и оказался в светлом помещении, где находились инженерный и производственный отделы MITS. Когда я прошел мимо сборочной линии, где полтора десятка рабочих с утомленным видом укладывали в коробки конденсаторы и печатные платы, мне стало понятно, почему Эд так хочет получить Бейсик. Программное обеспечение его не очень интересовало, но он понимал, что продажи «Альтаира» не будут расти, пока машина не научится делать что-нибудь полезное.

Вход
Поиск по сайту
Ищем:
Календарь
Навигация