Взлет и падение Sierra On-Line. Сказка с несчастливым концом (страница 5)
Я сдал тест – разумеется, на отлично. Я мог бы специально дать неправильные ответы, но честнее было ответить на вопросы как можно лучше.
Я оправдывался перед собой примерно так:
• Я ничего не записывал
• Я честно ответил на вопросы
• Если бы из администрации округа позвонили и предложили мне отличную работу с большой зарплатой, я бы согласился
• Я же не собирался давать Роберте сами ответы, я только говорил ей, что изучать
• Роберту должны были проверять на знания, и она получила эти знания до того, как пришел ее черед проходить тестирование
Сжульничал ли я? Можно и так сказать, но это уж вы решайте сами. Тест я сдал, а потом потратил много часов, натаскивая Роберту по темам, которые должны были попасться в тесте. В основном вопросы касались двоичной арифметики, шестнадцатеричной системы счисления и основ компьютерной терминологии. Роберта быстро все схватывала и легко обучалась. В том месяце тестирование на «отлично» сдали два человека с фамилией Уильямс.
Я получил несколько предложений о работе от администрации округа, но так и не соблазнился. Роберта тоже получила несколько предложений и начала свою новую жизнь в качестве оператора ЭВМ – теперь уже она таскала магнитные ленты на благо округа Лос-Анджелес.
Проработала она там недолго. Полгода, что ли? Это было так давно, что никто из нас не помнит. Конечно, почти сразу же после того, как жена вышла на работу, я захотел, чтобы она продвигалась вверх по карьерной лестнице. Роберта и к работе-то отнеслась без энтузиазма, а к идее о том, что ей нужно искать работу программистом – и подавно.
Роберта думала, что я сошел с ума, когда настаивал именно на таком трудоустройстве. Я уговорил ее пройти в колледже курсы программирования на языке COBOL[9], на котором в то время программировал я сам. Параллельно с обучением на курсах я дополнительно поднатаскал ее на домашних занятиях и убедил разослать резюме. Все это время Роберта не переставала на меня ворчать.
Найти ей работу оказалось проще простого. В середине семидесятых годов на улицах Лос-Анджелеса проще было встретить слона, чем отыскать женщину-программиста. Так и представляю себе лица менеджеров, когда им на стол легло резюме молодого начинающего программиста по имени «Роберта». Разве такое бывает? Роберту немедленно приняли на работу программистом на языке COBOL в компанию Lawry’s Foods из Лос-Анджелеса.
Официально должность Роберты называлась «программист-стажер на COBOL». Работала она хорошо, но ей не хватало мотивации, чтобы по-настоящему вникнуть в суть дела. Кроме того, ей поручили проект по обустройству корпоративной бухгалтерии, но в бухгалтерском учете Роберта не разбиралась никак.
Но ни одна из этих проблем не ставила работу под угрозу. Кто мог бы уволить женщину-программиста в середине 1970-х? Это было просто невозможно. И, по правде говоря, Роберта очень хорошо справлялась. Если в течение рабочего дня у нее что-то и не получалось, то дома я помогал ей разобраться и исправить код. Все задачи у нее были сделаны и сделаны правильно. Думаю, в Lawry’s замечали, что Роберта работает как-то необычно, но в конечном счете всех все устраивало.
Роберта проработала в Lawry’s не слишком долго: ей не нравилось программирование, нашему сыну нужно было уделять больше внимания, а я редко бывал дома.
Лос-анджелесские пробки: час на дорогу туда, час обратно
Мы с Робертой постоянно обсуждали, что хотим уехать из Лос-Анджелеса. Причин было много, но в основном все сводилось к тому, что мы говорили: «Разве не здорово было бы жить где-нибудь в лесу?» Наш второй сын Крис родился в мае 1979 года, а нашему старшему, Диджею, скоро должно было исполниться шесть лет. Хотели ли мы, чтобы он, когда подрастет, ходил в школу в Лос-Анджелесе, где его наверняка подстерегают наркотики и насилие? К тому же меня выматывала дорога на работу и обратно – приходилось по несколько часов в день стоять в лос-анджелесских пробках.
К сожалению, для разработчиков программного обеспечения в маленьких городках с работой было туго. Если я хотел работать программистом, жить надо было там, где я мог найти работу.
Решение нашлось, когда мне предложили работу в авиастроительной компании Boeing в Сиэтле. Сегодня Сиэтл – это центр IT-индустрии, там расположены штаб-квартиры Microsoft, Expedia, Amazon, Zillow и многих других компаний. Однако в те времена всех этих фирм не было еще и в планах: единственным работодателем в городе, который хоть чего-то стоил, была Boeing. Сиэтл в те времена был городом немаленьким, но и не особенно большим.
Чтобы принять предложение о работе в Сиэтле, нам нужно было продать дом в Бербанке, штат Калифорния. Мы выставили наш дом на продажу, и его вроде бы купили, но по условиям сделки сумму на 90 дней нужно было положить на специальный счет в банке. Компания Boeing согласилась меня подождать, но спустя буквально несколько дней, когда мы уже собирались переезжать, продажа сорвалась[10]. Мы собрали вещи и мысленно уже были в Сиэтле – страшное разочарование. Мы хотели уехать из Лос-Анджелеса, и Сиэтл был нашей единственной надеждой. Boeing отозвала свое предложение о работе.
Моя последняя работа «на дядю» на полный рабочий день была в компании под названием Informatics. Это была работа мечты, на которой я получал невероятный опыт – там мне довелось поработать с новейшими технологиями на новейших системах. Сейчас это трудно представить, но в то время IBM доминировала на рынке. Все знали поговорку: «Никого никогда не увольняют за покупку IBM». Компьютеры IBM были самыми дорогими, но лучшими – самыми мощными, самыми быстрыми, за ними стояли лучшие продажники, они занимали доминирующее положение на рынке. Я поставил себе задачу номер один: изучить все, что связано с IBM.
Informatics создала компьютерный язык – он же еще и система баз данных – под названием Mark IV. На компьютерах IBM он был крайне популярен. Мне самому всегда хотелось работать над созданием языка программирования или системы баз данных: для программиста лучше работы не придумать. К тому же меня окружали талантливейшие люди, ведь Informatics не жалела денег на зарплаты и грамотно подбирала себе кадры. Каждый день я учился чему-то новому.
Однако все это было не так важно, как наше желание переехать из Лос-Анджелеса. И, к сожалению, у меня не было других возможностей это сделать, кроме как начать работать на себя. Мне нужно было открыть какую-то компанию, которой можно было бы управлять из дома, живя в лесу.
Я и Боб Лефф – тоже инженер-компьютерщик в Informatics – каждый день обедали вместе и обсуждали идеи компаний, которые мы могли бы открыть.
Я размышлял над этой затеей – какой бы бизнес мне открыть – и отметил, что как раз тогда корпорация Tandy (она же Radio Shack) выпустила свой персональный компьютер[11], и примерно в то же время Стив Джобс и Стив Возняк представили Apple II.
Еще я увидел, что какая-то крошечная компания Microsoft выпустила для компьютера TRS-80 язык программирования под названием BASIC. Я подумал, что сейчас для этих «персональных компьютеров» может возникнуть целый рынок других языков программирования, и мы с Бобом начали рассуждать, как можно портировать Fortran (тоже язык программирования) на TRS-80.
Как раз когда я планировал следующий шаг, Роберта подарила мне на Рождество компьютер Apple II. Apple II был намного мощнее TRS-80 и мог даже загружать программы со стандартных аудиокассет![12]
Я сразу понял, что будущее именно за Apple II. У этого компьютера был невероятно большой объем памяти (16k) и мощный процессор (6502).
Мы с Бобом Леффом начали работать над реализацией Fortran на компьютере Apple II. Microsoft предлагала для Apple II свой BASIC, и я был уверен, что сможем их обойти – все-таки Fortran как язык программирования был намного мощнее.
TRS-80 Model 1
Apple II
Пример программы на Fortran
Во времена, когда я только начал заниматься компилятором Fortran, я все еще работал в компании Informatics и еще подрабатывал у нескольких других работодателей.
Одна из этих подработок требовала, чтобы я брал домой телетайп, позволяющий мне писать код для какого-то невидимого удаленного компьютера. Этот телетайп мне, возможно, предоставила Лос-Анджелесская детская больница, но теперь я такие мелочи уже не вспомню.
Для меня это была далеко не первая встреча с устройствами, подключенными к удаленным мейнфреймам (большим компьютерам). На самом деле, мои подработки, благодаря которым я писал код для разных лос-анджелесских организаций, были оформлены как консалтинговая практика под названием On-Line Systems. Я поднаторел в работе с компьютерами, к которым люди обращались через удаленные терминалы. В частности, я специализировался на технологиях IMS и CICS, а также на системе баз данных IMS-DB.
В те дни еще не было такого понятия, как «Интернет». На самом деле, тогда не было еще ничего даже отдаленно похожего на Интернет. Существовали удаленные терминалы, их подключали к компьютерам-мейнфреймам – но это подключение было непосредственно к мейнфрейму и ни к чему другому. Не все терминалы были такими же громоздкими, как телетайп, который я принес домой. Большинство терминалов, с которыми я тогда работал, были уже с ЭЛТ-дисплеями (на основе электронно-лучевой трубки) и использовали для отображения страниц данных систему, не сильно отличающуюся от современной, которая используется сейчас в Интернете для отображения веб-страниц (HTML).
Телетайп, акустический модем и считыватель бумажных лент
С телетайпом обращаться приходилось так: программу надо было загрузить с бумажной ленты, а затем с помощью акустического модема подключиться к удаленному компьютеру. Модемом было маленькое устройство, которое передавало данные в виде звука – немного похоже на азбуку Морзе, когда случайные, на первый взгляд, гудки и писк представляли данные. И их передавали в виде звука по телефонной линии.
Этот модем передавал данные со скоростью «110 бод», что на техническом языке означало «одуреть как медленно». «Насколько медленно?» – спросите вы. Ну… почти все фотографии, которые я делаю на свой iPhone, размером около 2 мегабайт. Чтобы передать 2 мегабайта данных на скорости 110 бод, потребовалось бы не менее сорока пяти часов, если бы соединение вообще не оборвалось раньше. Достаточно сказать, что никто не отправлял фотографии через акустический модем.
Вполне возможно, что я принес домой телетайп, просто чтобы поиграться с ним. По крайней мере, это единственное назначение телетайпа, которое я могу вспомнить. Я как-то смог дозвониться по телетайпу в Массачусетский технологический институт и поиграть в игры.
У них там было не так много игр, и я не смог найти ту самую оригинальную игру Star Trek, с которой начался мой интерес к компьютерам.
Зато я нашел игру под названием Colossal Cave Adventure.
Я заинтересовался, что это такое, запустил программу, и, к моему удивлению, меня встретили такие слова…
> ВЫ СТОИТЕ У КОНЦА ДОРОГИ ПЕРЕД НЕБОЛЬШИМ КИРПИЧНЫМ ЗДАНИЕМ.
ВОКРУГ ВАС ЛЕС. НЕБОЛЬШОЙ РУЧЕЙ ВЫТЕКАЕТ ИЗ-ПОД ЗДАНИЯ И ТЕЧЕТ ПО ОВРАГУ.
]
А? И что теперь? Что я должен был делать? Никаких инструкций вроде бы больше и не было.
Все, что я мог придумать, – набрать HELP (ПОМОЩЬ).
> Чтобы играть в игру, вводите в командную строку ниже короткие запросы. Если ввести слово LOOK (ПОСМОТРИ), игра расскажет, что вас окружает. Введите INVENTORY (ВЕЩИ), чтобы посмотреть список вещей, которые вы несете с собой. Команды GET (ВОЗЬМИ), DROP (БРОСЬ) и THROW (КИНЬ) помогают взаимодействовать с объектами. В этой игре стоит пробовать разные команды и смотреть, что произойдет.
]