https://frosthead.com

Маргарет Гамильтон возглавила команду разработчиков НАСА, которые высадили астронавтов на Луну

20 июля 1969 года, когда лунный модуль Eagle приближался к поверхности Луны, его компьютеры начали мигать предупреждающими сообщениями. На какое-то время Mission Control приняла решение «идти / не идти», но с большой уверенностью в программном обеспечении, разработанном специалистом по компьютерам Маргарет Хэмилтон и ее командой, они приказали астронавтам действовать. Программное обеспечение, которое позволяло компьютеру распознавать сообщения об ошибках и игнорировать задачи с низким приоритетом, продолжало направлять астронавтов Нила Армстронга и Базза Олдрина через пыльную корку Луны, усеянную кратерами, к их приземлению.

«Быстро стало ясно, - сказала она позже, - что программное обеспечение не только информирует всех о наличии проблемы, связанной с аппаратным обеспечением, но и о том, что программное обеспечение компенсирует ее». Расследование в конечном итоге покажет, что астронавты » виноват контрольный список, сообщающий им о неправильной установке аппаратного переключателя радара. «К счастью, сотрудники Mission Control доверяют нашему программному обеспечению», - сказал Гамильтон. Нейл Армстронг сообщил, что, когда топлива хватит еще на 30 секунд полета, « орел приземлился».

Это достижение стало грандиозной задачей в то время, когда компьютерные технологии находились в зачаточном состоянии: астронавты имели доступ только к 72 килобайтам компьютерной памяти (сегодня сотовый телефон емкостью 64 гигабайта имеет почти в миллион раз больше места для хранения). Программисты должны были использовать бумажные перфокарты для подачи информации на компьютеры размером с комнату без экранного интерфейса.

Когда приземление произошло, Гамильтон, которому тогда было 32 года, был подключен к Управлению полетами из Массачусетского технологического института. «Я не концентрировался на миссии как таковой», - признался Гамильтон. «Я сконцентрировался на программном обеспечении». После того, как все заработало должным образом, вес момента ударил ее. "О Господи. Посмотри, что случилось. Мы сделали это. Это сработало. Это было захватывающе."

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

Apollo Flight Guidance Коллекция компьютерного программного обеспечения Смитсоновский национальный музей авиации и космонавтики хранит в своих коллекциях коллекцию компьютерного программного обеспечения Apollo Flight Guidance (см. Стр. 45506-A), созданную Гамильтоном и ее командой. (Национальный музей авиации и космонавтики)

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

В музее хранится коллекция компьютерного программного обеспечения Apollo Flight Guidance, созданная Гамильтоном. Архивный материал включает в себя распечатанные листы, известные как «списки», в которых приведены результаты расчетов по уравнению управления. Когда выходные данные компьютера не выявили проблем, инженеры-программисты «смотрели» на списки, проверяя, что никакие проблемы не требуют внимания.

Когда все выглядело хорошо, код был отправлен на фабрику Raytheon, где в основном женщины, многие из которых были бывшими сотрудниками текстильных фабрик Новой Англии, сплели медные провода и магнитные сердечники в длинную «веревку» провода. С кодированием, записанным в единицах и нулях, провод прошел через крошечный магнитный сердечник, когда он представлял единицу, и вокруг сердечника, когда он представлял ноль. Этот гениальный процесс создал веревку, которая несла инструкции программного обеспечения. Гэмилтон сказал Керуцци, что женщины, которые выполняли эту работу, были известны как LOL, а не потому, что они были забавными; это было сокращение от «маленьких старых леди». Гамильтон назывался «мать-веревка».

Хэмилтон, говорит куратор Teasel Muir-Harmony, «также был действительно экспансивным, поскольку программист (выше, работая над Apollo) придумывал решения проблем, очень инновационный, совершенно нестандартный подход. Гамильтон, говорит куратор Teasel Muir-Harmony, «также был действительно экспансивным, поскольку программист (выше, работая над Apollo) придумывал решения проблем, очень инновационный, совершенно нестандартный». (Wikimedia Commons)

Веревка компенсировала ограниченную память компьютеров Apollo. Этот процесс создал «очень надежную систему», по словам Тизеля Мьюир-Гармони, куратора музея авиации и космонавтики и автора новой книги « Аполлон на Луне: история из 50 объектов» . « Это была одна из причин, по которой компьютер управления Apollo работал безупречно на протяжении каждой миссии».

Будучи любителем математики с раннего возраста, Гамильтон изменила эту близость, став специалистом по написанию программного обеспечения и разработке после ее ухода из колледжа. Когда ее муж учился на юридическом факультете в Гарварде в 1959 году, она устроилась на работу в Массачусетском технологическом институте, где научилась писать программы, которые предсказывали бы погоду. Год спустя она начала программировать системы для обнаружения самолетов противника в программе «Полуавтоматическая наземная среда» (SAGE).

В середине 1960-х годов Гамильтон услышал, что MIT «объявил, что они ищут людей, которые будут заниматься программированием, чтобы отправить человека на Луну, и я просто подумал:« Ух, я должен туда пойти ».» Она планировал начать аспирантуру в Университете Брандейса для получения степени по абстрактной математике, но космическая программа США покорила ее сердце. Благодаря успеху ее работы в SAGE она стала первым программистом, нанятым для проекта Apollo в MIT. В 1965 году она стала руководителем своей собственной команды в Лаборатории приборостроения MIT (позже известной как Draper Laboratory), которая занималась написанием и тестированием программного обеспечения для двух 70-фунтовых компьютеров Apollo 11 - одного на командном модуле, Колумбия, и одного. на борту лунного модуля, орел .

В 2016 году президент Барак Обама наградил Гамильтона медалью свободы, отметив, что «ее пример говорит об американском духе открытий». В 2016 году президент Барак Обама наградил Гамильтона медалью свободы, отметив, что «ее пример говорит об американском духе открытий». (Официальное фото Белого дома от Лоуренса Джексона)

«То, о чем я думаю, когда думаю о Маргарет Хэмилтон, - это ее цитата о том, что« не было другого выбора, кроме как быть пионерами », потому что я думаю, что это действительно отражает то, кем она была и ее значение в этой программе», - говорит Мьюир-Гармони. «Она была пионером в разработке программного обеспечения и., , , как пионерка на рабочем месте, вносящая свой вклад в программы такого типа, взяв на себя такую ​​роль ».

Тогда, как и сейчас, большинство разработчиков программного обеспечения были мужчинами, но она никогда не позволяла этому стоять на своем пути. «У нее такой менталитет, что должны быть равные права и равный доступ. И это было не о мужчинах и женщинах. Это было связано с тем, что люди могли выполнять те виды работ, которые они хотят выполнять, и решать задачи, которые они хотят взять на себя », - говорит Мьюир-Гармони. «Она также была действительно обширной как программист, придумывая решения проблем, очень инновационные, совершенно нестандартные мышления. Это, я думаю, отражено в ее выборе профессии и работе, которую она сделала в лаборатории ».

Стремясь сделать программное обеспечение более надежным, Гамильтон стремился разработать программное обеспечение Apollo, способное справляться с неизвестными проблемами и достаточно гибкое, чтобы прервать одну задачу, чтобы выполнить более важную. В поисках новых способов отладки системы она поняла, что звук может служить детектором ошибок. Она отметила, что ее программа в SAGE звучала как морское побережье, когда она работала. Однажды ее разбудил коллега, который сказал, что ее программа «больше не звучит как морской берег!». Она бросилась на работу, стремясь найти проблему и начать применять эту новую форму отладки к своей работе.

В 2017 году Лего представил фигурку Маргарет Гамильтон, часть коллекции «Женщины НАСА» (вверху в Музее авиации и космонавтики). В 2017 году Лего представил фигурку Маргарет Гамильтон, часть коллекции «Женщины НАСА» (вверху в Музее авиации и космонавтики). (Национальный музей авиации и космонавтики)

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

Во время полета « Аполлона-8 » на орбиту Луны астронавт Джим Ловелл допустил ту же ошибку, что и ее младшая дочь, и, к счастью, команда Гамильтона смогла решить проблему за несколько часов. Но для всех будущих полетов Аполлона, защита была встроена в программное обеспечение, чтобы убедиться, что это никогда не повторилось. Со временем Гамильтон начал рассматривать всю миссию как систему: «часть реализована в виде программного обеспечения, часть - в программном обеспечении, часть - в аппаратном обеспечении».

16 июля 1969 года американцы заполнили автомагистрали, улицы и дома, чтобы засвидетельствовать запуск ракеты из Космического центра Кеннеди: легендарного «Аполлона-11», связанного с Луной.

Работа Гамильтона направила оставшиеся миссии Аполлона, которые приземлились на Луну, а также принесла пользу Skylab, первой космической станции США, в 1970-х годах. В 1972 году она покинула Массачусетский технологический институт и основала свою собственную компанию, Higher Order Software. Четырнадцать лет спустя она основала другую компанию, Hamilton Technologies, Inc. В своей новой фирме она создала Universal Systems Language, еще один шаг к тому, чтобы сделать процесс проектирования систем более надежным.

НАСА наградила Гамильтона премией НАСА «За исключительное пространство» в 2003 году, отмечая ее вклад в разработку программного обеспечения и предоставляя ей самый большой финансовый приз, который агентство когда-либо присуждала одному человеку до того времени - 37 200 долларов. В 2016 году президент Барак Обама наградил ее медалью свободы, отметив, что «ее пример говорит об американском духе открытий, который существует в каждой маленькой девочке и маленьком мальчике, которые знают, что каким-то образом заглянуть за пределы небес - значит заглянуть глубоко внутрь себя. »

Работа Гамильтона, возможно, не широко известна тем, кто находится за пределами научного сообщества, хотя ее достижения были увековечены с появлением в 2017 году фигурки Лего Маргарет Гамильтон, являющейся частью коллекции «Женщины НАСА». Он изображает Гамильтона как маленького, длинноволосого героя в очках, чей код Аполлона сложен выше, чем она была. В Национальном музее авиации и космонавтики хранятся прототипы этих фигурок. Инженеры-программисты обычно не рассматриваются как смелые фигуры, но Гамильтону не чужды храбрость, необходимая для героизма. Она помнит, что «бесстрашна, даже когда эксперты говорят:« Нет, это не имеет смысла », они не верили, никто не верил. Это было то, о чем мы мечтали, но это стало реальностью ».

Маргарет Гамильтон возглавила команду разработчиков НАСА, которые высадили астронавтов на Луну