Маргарет Гамильтон: девушка и «Аполлон»

Работающая мать в середине 1960-х была необычным явлением. Но программистка космических кораблей – вообще уникальным! Пока ее дочь спала по вечерам прямо на полу в офисе, 24-летняя Маргарет Гамильтон программировала главный бортовой компьютер «Аполлона» для американской лунной программы.

Не давайте страху завладеть вами, и не бойтесь говорить «Я не знаю» или «Я не понимаю» – глупых вопросов не бывает. И не верьте на 100% так называемым экспертам!

(совет М. Гамильтон женщинам, желающим построить карьеру в программировании; из интервью)

Уже в 80 лет Гамильтон опубликовала более 130 научных работ и основала собственную компанию Hamilton Technologies, а 23 ноября 2016 года президент США Барак Обама вручил ей Президентскую медаль Свободы — высшую гражданскую награду страны. Но тогда, в 60-х, Маргарет только закончила Массачуссетский технологический институт (MIT) и пришла на работу ведущим инженером просто на время, пока муж три года поучится в Гарвардской школе права. После этого должна была настать ее очередь — она хотела продолжить свою учебу в области математики.

До Misrosoft было еще 10 лет, и 50 – до того, как основатель Netscape Communications Марк Андриссен заявил, что «программное обеспечение покоряет весь мир». Выражения «программное обеспечение» даже не было в техзадании Маргарет Гамильтон, подчеркивает в своей книге «Цифровой Аполлон» профессор аэронавтики Дэвид Минделл – на него, соответственно, даже не выделялся бюджет. Маргарет Гамильтон и не подозревала, что ей суждено изобрести современную концепцию программного обеспечения!

М. Гамильтон с распечаткой написанного ею кода для бортового компьютера «Аполлона», 1969 год

Ежедневно Гамильтон пробивала отверстия в тысячах перфокарт, которые затем сутками обрабатывались в гигантской ЭВМ Honeywell — эта машина моделировала прилунение посадочного модуля «Аполлона»: сначала все нужно было отработать на Земле. Готовый код каждый день отправлялся в лабораторию компании Raytheon, где группа женщин-сотрудниц, которых между собой называли «старушками», вручную обматывали магнитные катушки медной проволокой (проволока, пропущенная через кольцо, — 1, проволока, обмотанная вокруг кольца, — 0). Никаких жестких дисков тогда и в помине не было, вся память компьютера была буквальным образом «связана» вручную. Но этот способ записи информации имел и свои преимущества — он практически не был подвержен случайному удалению.

Так выглядела память компьютера для полета на Луну

Система хранила более 12 000 «слов» в постоянной памяти — медных проводах, сотканных работницами «Рэйтеона» — и 1 024 «слов» во временной, очищаемой памяти. «Это был первый случай применения компьютера в космическом корабле, и от него зависел успех миссии. Мы доказали, что это можно сделать. Мы сделали это на том по современным меркам крохотном объеме памяти и медленной скорости вычислений», — вспоминает Дон Айлз, работавший над лунным модулем. В Инструментальной лаборатории MIT создавались самые принципы компьютерного программирования при написании кода первого в мире портативного компьютера. Точнее, их было два, 32-килограммовых, один на посадочном лунном модуле «Орел» и второй на командном модуле «Колумбия», предназначенном чтобы доставить астронавтов с Земли на Луну и обратно. Созданные инженерами МТИ Хэлом Лэнингом и Диком Баттоном, это были одни из первых компьютеров на интегральных микросхемах вместо транзисторов. И первая система бортовой навигации с возможностью дистанционного управления — предшественник компьютеризованной системы навигации современных пассажирских самолетов. По словам Маргарет, «когда мы впервые этим занялись, никто в этом не разбирался. Это был Дикий Запад, без известных направлений. Нас никто не учил».

Маргарет Гамильтон внутри макета командного модуля Apollo

Однажды маленькая дочь Маргарет, как обычно играя по вечерам в лаборатории, стала нажимать на кнопки симуляции, и запустила программу, которая должна была выполняться перед запуском – но при этом симуляция уже «летела» на Луну. У компьютера было так мало памяти, что он стёр все данные по навигации, необходимые для полёта. «Я подумала: боже мой, это ведь может случайно произойти и во время реальной миссии. Я предложила изменить программу, чтобы предотвратить возможность запуска предстартового сегмента во время полёта. Однако начальство из MIT и НАСА решило, что астронавты слишком хорошо натренированы, чтобы так ошибиться. И в процессе полёта уже в следующей миссии – «Аполлон-8» – один из астронавтов на борту случайно сделал именно то, что сделала Лорен. Ошибка Лорен! Я подняла бучу и настояла, чтобы миссию перенастроили. После этого они уже, конечно, позволили внести правки в программу», — вспоминает Маргарет.

Маргарет Гамильтон в музее Массачусетского технологического института

Читайте также нашу статью о первой в мире женщине — профессоре математики Софье Ковалевской


Больше на Granite of science

Subscribe to get the latest posts sent to your email.

Добавить комментарий

Больше на Granite of science

Оформите подписку, чтобы продолжить чтение и получить доступ к полному архиву.

Читать дальше