«Когда я только начинала работать в этой сфере, все это было для нас как Дикий Запад — мы были первооткрывателями неизведанных земель. Никто нас ничему не учил» Маргарет Гамильтон.



Это Маргарет. Она пишет код хорошо. Делайте как Маргарет.

А еще:
  • программист-самоучка;
  • написала код для навигационного компьютера программы «Аполлон»;
  • когда американцы ступили на поверхность Луны ей был 31 год;
  • Маргарет НЕ автор термина «software engineering»;
  • часто брала на работу 4х-летнюю дочку;
  • дочка помогла найти баг в программе.

Под руководством Маргарет Гамильтон писались программы для бортового компьютера КА Аполлон. В один из самых ответственных моментов миссии Аполлон 11 именно работа Маргарет и ее команды предотвратила возможный срыв высадки на Луну. За три минуты до прилунения сработало несколько аварийных сигнальных устройств. Компьютер был перегруженн входящими данными – в стыковочной радарной системе произошло непроизвольное обновление счетчика, что привело к запросу на выполнение компьютером большего числа операций, чем он был способен обработать. Благодаря устойчивой архитектуре компьютер продолжил свою работу: в разработке бортового ПО использовался подход асинхронного исполнения (asynchronous executive). Процессы с высоким приоритетом (критичные для прилунения) могли прервать низкоприоритетные процессы.

«После расстыковки командно-служебного и лунного модулей выключатель радара стыковки был поставлен в неправильное положение из-за ошибки в инструкции для астронавтов, радар посылал ошибочные сигналы бортовому компьютеру. Обработка ложных сигналов занимала 15% машинного времени. Бортовой компьютер (точнее, вшитое в него ПО) оказался достаточно разумным для того, чтобы распознать, что на выполнение запрашивается больше операций, чем должно. Далее он выслал оповещение, означавшее для астронавта следующее: «Я перегружен бОльшим количеством задач единовременно, чем предусмотрено, и я продолжу выполнять только наиболее важные, то есть те, что необходимы для прилунения...» По сути, компьютер был запрограммирован на большее, чем просто распознавание ошибочных состояний. В ПО был предусмотрен полный набор программ по восстановлению. В данном конкретном случае реакцией ПО было приостановить работу низкоприоритетных задач и перезапустить (re-establish) наиболее важные. Если бы компьютер не распознал эту проблему и не принял восстановительные меры, я не уверена, что Аполлон 11 совершил бы успешную посадку на Луну.» Маргарет Гамильтон

«Девушка молоток!
Но я бы не хотел себе такую жену, ибо смотрелся бы на ее фоне жалко, хоть и программист… LOL»

Коммент с GeekTimes


Железо


image
Лунный модуль

image
Схема навигационной системы

image
Ну, вы сами знаете, что это

image
Фазы прилунения

image
Interfaces Among PGNS, ATCA and the Rendezvous Radar

Еще немного интересного есть вот здесь:
[TALES FROM THE LUNAR MODULE GUIDANCE COMPUTER]

Бортовой управляющий компьютер КА Аполлон


image
Бортовой управляющий компьютер КА Аполлон (Apollo Guidance Computer, AGC) проводил вычисления и контролировал движение, навигацию, и управлял командным и лунным модулями в ходе полётов по программе Аполлон.

AGC был разработан для программы Аполлон в начале 1960-х годов в лаборатории приборов Массачусетского технологического института. Отличительной особенностью конструкции компьютера являлось применение микросхем, что было сделано впервые.

Также при полёте к Луне использовались два дополнительных компьютера:

  • Цифровой компьютер ракеты-носителя (Launch Vehicle Digital Computer, LVDC), расположенный в приборном отсеке ракеты-носителя Сатурн-5 и
  • Аварийная система наведения (Abort Guidance System, AGS), расположенная на борту лунного модуля на случай отказа PGNCS. AGS могла быть использована для взлёта с поверхности Луны и стыковки с командным модулем, но не для посадки.


Прошивка


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

Таким образом, программы физически создавались вручную, на фабриках, где работали в основном женщины. Среди инженеров память на магнитных сердечниках даже получила прозвище LOL-память, где LOL расшифровывалось как little old lady, «маленькая старая леди».

Маргарет рассказывает о своей работе:


image
Core rope memory

Как происходит «прошивка» в прямом смысле слова. Смотрим на 21-й минуте



AGC dual 3-input NOR gate


Память

image

image
Интерфейс бортового управляющего компьютера КА Аполлон, установленный в командном модуле. Над интерфейсом виден индикатор FDAI.

image
Шпаргалка с кодами

Source code



image


www.ibiblio.org/apollo/listings/Comanche055/REENTRY_CONTROL.agc.html

Эмулятор


Аполлон-11


image



Описание посадки Аполлона-11
20 июля Нил Армстронг и Эдвин Олдрин перешли в лунный модуль, активировали и проверили все его системы, привели сложенные опоры посадочной ступени в рабочее положение. Майкл Коллинз в бортовой телескоп командного модуля на 12-м витке провёл наблюдение ориентиров на подлёте к основному району прилунения для уточнения данных в системе навигации и времени начала управляемого снижения лунного модуля. После этого «Аполлон-11» получил «добро» на расстыковку командно-служебного и лунного модулей. В начале 13-го витка, когда «Аполлон-11» находился над обратной стороной Луны, «Колумбия» и «Орёл» расстыковались. Армстронг с помощью двигателей системы ориентации совершил полный поворот лунного модуля вокруг вертикальной оси, Коллинз визуально осмотрел его и сообщил, что опоры посадочной ступени раскрылись нормально. Когда связь с Землёй восстановилась, Армстронг доложил в ЦУП в Хьюстоне о расстыковке. Отвечая на вопрос об ощущениях, он сказал: «У „Орла“ есть крылья». Коллинз заметил, что «Орёл» отлично выглядит, только летит вверх ногами. На что Армстронг ответил: «Кто-то из нас летит вверх ногами». Коллинз отвёл «Колумбию» на расстояние около 1300 м. В конце 13-го витка, над обратной стороной Луны, на 29,8 секунды был включён двигатель посадочной ступени лунного модуля, «Орёл» перешёл на орбиту снижения с апоселением 105,9 км и периселением 15,7 км. Он летел опорами посадочной ступени вперёд и иллюминаторами вниз, чтобы астронавты могли отслеживать ориентиры на поверхности. Армстронг заметил, что один из ориентиров, кратер Маскелайн W, они пролетели примерно на 3 секунды раньше, чем предполагалось. Это означало, что они сядут дальше расчётной точки. В 102 часа 33 минуты 05 секунд полётного времени вблизи периселения орбиты снижения (примерно в 400 км к востоку от запланированного района посадки) был включён двигатель посадочной ступени лунного модуля, начался этап торможения. Примерно через 4 минуты после этого «Орёл» был повёрнут по крену на 180°, иллюминаторами вверх, Армстронг и Олдрин почти прямо перед собой увидели Землю. Такой поворот был необходим по двум причинам: чтобы посадочный радар смог захватить поверхность и чтобы на завершающем этапе посадки, когда корабль развернётся в вертикальное положение, астронавты могли видеть район, куда садятся. Почти сразу после этого сработала аварийная сигнализация бортового компьютера, о чём Армстронг доложил в ЦУП. Лунный модуль в этот момент находился на высоте 10 200 м. Из Хьюстона ответили, что всё выглядит нормально. Такая нештатная ситуация астронавтами на Земле не отрабатывалась. Как пояснил Армстронг на послеполётной пресс-конференции, во время тренировок имитировалось множество неполадок, и экипаж всегда был «заряжен» на аварийное прерывание миссии, но в реальном полёте астронавты были «заряжены» на посадку. Сигнал тревоги был вызван перегруженностью бортового компьютера, в который помимо навигационных данных поступала ненужная в тот момент информация от радара встречи с командно-служебным модулем (переключатель радара был поставлен Армстронгом в такое положение примерно за 3 минуты до первого тревожного сигнала). Всего за время посадки сигнализация срабатывала 5 раз, что сильно отвлекало внимание астронавтов. Определяющим в принятии решения ЦУПа о продолжении посадки стало слово специалиста по навигационным системам лунного модуля Стива Бэйлза (англ.)русск., который посчитал, что перегруженность компьютера не поставит посадку под угрозу (позднее он вместе с астронавтами получит Президентскую медаль Свободы).

Через восемь с половиной минут после начала торможения, на высоте чуть менее 2 км, начался этап приближения к точке посадки, бортовой компьютер перешёл к выполнению программы, в соответствии с которой управление двигателем посадочной ступени и двигателями системы ориентации осуществляется автоматически, а астронавты могут вручную лишь корректировать ориентацию. «Орёл» начал медленно поворачиваться в вертикальное положение. На высоте 1,5 км при скорости снижения 30,5 м/с Армстронг на некоторое время отключил автоматический режим, чтобы сделать пробную корректировку ориентации, всё работало нормально. Армстронгу следовало сделать этот тест чуть раньше, чтобы в те мгновения заниматься уже исключительно визуальным поиском подходящей площадки для посадки. Специалисты считают это запаздывание следствием аварийных сигналов компьютера, которые отвлекали внимание командира. Переворот лунного модуля в вертикальное положение давал командиру не только обзор района посадки, но и возможность менять точку прилунения. На внутреннее и внешнее стёкла командирского иллюминатора были нанесены шкалы. Пилот лунного модуля диктовал командиру угловые значения, которые показывал дисплей компьютера, и командир смотрел в иллюминатор так, чтобы обе шкалы совместились. Тогда он видел место, в которое автопилот ведёт корабль. Это место можно было изменить движением рукоятки контроллера. Движение контроллера на один шаг вперёд передвигало место посадки на 1/2° дальше по курсу, одно движение в сторону — на 2° влево или вправо, соответственно.

На высоте около 460 м Армстронг увидел, что автопилот ведёт корабль в точку на ближнем краю большого кратера, окружённого полем валунов до 2—3 метров в поперечнике (позднее было установлено, что это кратер Уэст, англ. West Crater, диаметром 165 м). На послеполётном опросе он рассказывал, что поначалу посчитал это место хорошим, поскольку с научной точки зрения посадка рядом с большим кратером была бы весьма ценной. Однако Армстронг быстро понял, что посадить «Орёл» в достаточно безопасном месте, не долетая кратера, не удастся. Он решил его перелететь. На высоте примерно 140 метров командир перевёл компьютер в полуавтоматический режим, в котором двигатель посадочной ступени управляется автоматически и поддерживает постоянную вертикальную скорость 1 м/с, а двигатели системы ориентации управляются полностью вручную. Армстронг уменьшил наклон лунного модуля назад с 18° до 5° от вертикали. Это увеличило скорость горизонтального перемещения вперёд до 64 км/ч. Когда лунный модуль пролетал над кратером, командир начал искать место, пригодное для посадки, и выбрал относительно ровную площадку между небольшими кратерами и полем валунов. На высоте около 80 метров вертикальная скорость снижения составляла около 0,5 м/с. Олдрин сообщил, что осталось 8% топлива. Ещё через несколько секунд он добавил, что видит тень «Орла» на поверхности Луны. На завершающем этапе захода на посадку лунный модуль был повёрнут примерно на 13° влево от курса, и тень была вне поля зрения Армстронга. В этот момент загорелось предупреждение, что компьютер не получает данных от посадочного радара. Это продолжалось несколько секунд. На высоте 30 метров Олдрин доложил, что топлива остаётся 5% и что загорелось предупреждение. Начался 94-секундный отсчёт, по окончании которого у Армстронга останется только 20 секунд, чтобы посадить корабль или экстренно прервать посадку и взлететь. Через 33 секунды оператор связи в ЦУПе в Хьюстоне Чарльз Дьюк предупредил, что остаётся 60 секунд. В этот момент посадочный радар вновь на несколько секунд «потерял» поверхность. Частота пульса у Армстронга на завершающем этапе посадки достигла 150 ударов в минуту. На высоте 12 метров Олдрин доложил, что поднимается лунная пыль. Но он редко смотрел в иллюминатор. Армстронг же на послеполётном опросе говорил, что впервые заметил поднимающуюся пыль на высоте чуть меньше 30 м. Сначала это выглядело как прозрачный лист летящей пыли, который немного ухудшал видимость. По мере снижения корабля видимость становилась всё хуже. По словам Армстронга, визуальному определению высоты это не очень мешало, но в густой пелене движущейся летящей пыли было очень сложно следить за статичными камнями и, соответственно, определять вертикальную и горизонтальную скорости.

Посадка «Орла», снятая на 16-мм камеру через иллюминатор пилота лунного модуля
Как вспоминал Армстронг, на высоте около 9 метров «Орёл» по неизвестной причине начал перемещаться влево и назад. С движением назад справиться удалось, но полностью погасить перемещение влево не получилось. Ещё более замедлять снижение или зависать было нельзя, поскольку топлива оставалось совсем мало, и допустимый лимит времени до прерывания посадки был почти исчерпан (в одном из своих интервью в 2001 году Армстронг вспоминал, что ему хотелось, чтобы эта первая посадка прошла как можно более гладко, но в то же время он знал, что если погасить горизонтальную скорость и выровнять корабль, то можно было падать примерно с высоты 12 метров и даже больше, в условиях слабой лунной гравитации опоры посадочной ступени должны были выдержать удар). Вскоре после того, как Олдрин доложил, что высота 6 м, вертикальная скорость 0,15 м/с, а скорость горизонтального перемещения — 1,2 м/с, Дьюк из Хьюстона предупредил, что остаётся 30 секунд. Через 9 секунд после этого предупреждения Олдрин закричал: «Сигнал контакта!» Это произошло в 20:17:39 UTC 20 июля (102 ч 45 мин 39,9 с полётного времени). Синий сигнал контакта означал, что лунной поверхности коснулся как минимум один из щупов длиной 1,73 м, которые крепились к трём из четырёх опор (кроме той, где была лестница). Через 1,5 секунды после этого Армстронг заглушил двигатель. На послеполётном опросе он рассказал, что не смог точно определить момента посадки. По его словам, Базз закричал: «Контакт!», но сам он даже не видел загоревшегося сигнала, двигатель работал до самой посадки, потому что она была настолько мягкой, что момент, когда корабль стал на грунт, было сложно определить. После прилунения Армстронг передал Земле: «Хьюстон, говорит База Спокойствия. „Орёл“ сел». Чарльз Дьюк ответил, от волнения оговорившись: «Понял вас, „Свок…“, „Спокойствие“. Вы прилунились. Мы тут все уже было посинели. Теперь мы снова дышим. Спасибо огромное!»

Лунный модуль стал на грунт с небольшим наклоном назад на 4,5° от вертикали, он так и остался повёрнутым на 13° влево от траектории полёта[84]. Послеполётный анализ показал, что в топливных баках посадочной ступени «Орла» осталось 349 кг топлива. Этого хватило бы на 25 секунд зависания, после чего осталось бы 20 секунд на запуск двигателя взлётной ступени и прерывание посадки (у следующих «Аполлонов» после посадки оставалось от 499 до 544 кг). Как выяснилось, предупреждение о критически малых остатках топлива загорелось раньше времени, потому что топливо в баках начало плескаться после того, как Армстронг наклонил лунный модуль, чтобы перелететь кратер Уэст. Во всех последующих моделях лунного модуля в баках были установлены дополнительные перегородки. Корабль прилунился в точке с координатами 0,67408° с. ш. 23,47297° в. д., в 6858 метрах западнее центра эллипса района посадки. Причиной этого стали мелкие неучтённые изменения ориентации «Колумбии» и «Орла» на орбите вследствие тестирования двигателей системы ориентации лунного модуля, которые затем нарастали в течение двух витков до начала торможения, а также неполная разгерметизация переходного тоннеля между кораблями, из-за чего импульс, который «Орёл» получил при расстыковке, оказался немного больше расчётного.

[источник]



Аполлон-8



image
Пока 4-летняя Лорен мирно спала на полу лаборатории, мама создавала программы, которые лягут в основу главного командного компьютера «Аполлона».

При подготовке полета «Аполлона-8», первого пилотируемого космического корабля, добравшегося до орбиты Луны, Маргарет Гамильтон удалось обнаружить серьезную уязвимость, но никто не поверил, что она представляет реальную угрозу. Найти эту уязвимость помогла дочь Гамильтон, которая играла с симулятором компьютера «Аполлона-8», пока ее мать работала. В какой-то момент она включила последовательность P01, запускаемую перед стартом космического корабля, когда симулятор был уже в «полете». Запуск P01 в неподходящий момент привел к сбою; и хотя у космонавтов нет никаких причин допускать такую ошибку, Гамильтон решила добавить несколько строчек кода — сделать своего рода «защиту от дурака». В NASA воспротивились, сочтя, что прекрасно подготовленные астронавты никогда в жизни не смогут так ошибиться. Тогда Гамильтон включила строчку «Не запускайте P01 во время полета» в документацию, но и это показалось руководству излишней мерой предосторожности.

Вскоре после рождества в 1968 году, когда «Аполлон-8» должен был покинуть орбиту Луны и отправиться на Землю, астронавт Джеймс Ловелл сделал именно то, чего от него никак не ждали — по ошибке запустил P01. В итоге из компьютера «Аполлона» исчезли навигационные данные, и он не мог точно определить свое положение в пространстве. Экипажу корабля пришлось быстро сориентироваться по звездному небу и ввести правильные данные в компьютер, а специалистам NASA, в том числе и Маргарет Гамильтон — провести девять часов в поисках решения, как отправить на «Аполлон» из Хьюстона другие необходимые компьютеру сведения. «Аполлон-8» успешно приземлился, а Ловелл спустя год с лишним применил свои навыки ручного перепрограммирования компьютера космического корабля во время полета «Аполлона-13», экипажем которого он командовал. Миссия «Аполлона-13» завершилась неудачей из-за аварии по пути к Луне, но космическому кораблю удалось вернуться на Землю. Ловелл потом признавался, что ему очень помог в нештатной ситуации «Аполлона-13» прошлый опыт «Аполлона-8» и называл тот инцидент с потерей навигационных данных «плановой тренировкой». Позднее астронавт все-таки признался, что стер данные по собственной оплошности. [источник]

Software engineering


Успехи Маргарет в проекте SAGE открыли ей двери в NASA. Маргарет вспоминает:
«В этой компании принято давать новичкам программу, в которой никто не может разобраться и тем более запустить. Когда я была стажером, мне тоже дали такую задачку. Это была весьма заковыристая программа, и более того, автор кода находил удовольствие в написании комментариев к коду исключительно на греческом и латинском. Так, мне дали эту задачу, и, собственно, я заставила ее работать. Она даже результат выводила на печать на греческом и латинском. Я была первой, кто смог ее запустить.»



Гамильтон популяризовала термин «software engineering», которую ввел в употребление Anthony Oettinger.[пруф]

«Я начала использовать это название, чтобы выделить нашу работу среди других видов техники. Когда оно только появилось, все сочли его очень забавным и долго шутили по этому поводу: мол, какие у меня радикальные идеи», – рассказывает она.

В этой области она была одной из тех, кто разрабатывал концепты, такие как asynchronous software, priority scheduling, end-to-end testing and Human-in-the-loop decision capability, что послужило основой в разработке современного, устойчивого к сбоям программного обеспечения.

Свободное плавание


В 1986 году она основала и стала генеральным директором Hamilton Technologies, в Кембридже, штат Массачусетс, компании разработчика языка программирования Universal Systems Language. «Язык универсальных систем», предупреждающем, а не исправляющем сбойные ситуации, который основывается на теории систем и опирается на уроки проекта по разработке бортового программного обеспечения кораблей «Аполлон».
Список клиентов
  • Abadon
  • ABB
  • Access Research
  • Adtranz Signal
  • Advanced Methods
  • AGS Nynex
  • Apogee Communications Technologies
  • Ariel Technologies
  • AT&T
  • Auburn University
  • BDM International Inc.
  • BMC3 Engineering
  • Boeing
  • Boston University
  • Bowe Software Solutions
  • CA (Ingres)
  • Cadeon Strategic Technologies, Inc.
  • Cambridge Resource Group
  • Canadian Government
  • Chemical Bank
  • Citibank
  • Codemakers Pty Ltd.
  • Computer Sciences Corporation
  • Construction Information Systems
  • Cross/Z International Inc.
  • CSIRO Institute of Information Science & Engineering.
  • Descartes
  • Digital / Compaq Computer Corporation
  • DoD
  • DOE
  • Eidisys
  • FEMA
  • Grumman
  • Hewlett Packard
  • Honeywell
  • Hughes
  • IBM
  • Independent Engineering
  • International Billing Services
  • Lockheed Martin
  • Logicon
  • Loral
  • Los Alamos National Laboratories
  • Massachusetts Institure of Technology (MIT)
  • McDonnell Douglas
  • Mitre
  • Motorola
  • MRJ, Inc.
  • NASA
  • Newbridge Networks
  • NR Pty, Ltd.
  • NRI & NCC Co. Ltd.
  • NSA
  • Pacific States Marine Fisheries Commission
  • Praxis International
  • Rexham Aerospace and Defense Group
  • SAIC
  • Scott Paper
  • SDIO
  • SEI, Carnegie Mellon
  • Select Computer Technologies
  • Software Productivity Consortium(SPC)
  • State of Massachusetts
  • Stratus Group, Inc.
  • Sun Microsystems
  • Systems Automation Technology Ltd. (SAT)
  • Terry Consulting
  • The Registry
  • Toldark Pty. Limited
  • U. of Arizona
  • U. of Florida
  • U. of Minnesota
  • US Air Force
  • US Army
  • US Navy
  • WPL Laboratories




Почитать еще:


Wiki:
Margaret_Hamilton_(scientist)
(на русском статьи нет)

GeekTimes:
Маргарет Гамильтон, ведущий инженер-программист проекта «Аполлон»

Wired:
Her Code Got Humans on the Moon—And Invented Software Itself
Software — and a Woman — at the Heart of Lunar Triumph

Переводы:
Ошибка «Аполлона-8» Как программистка NASA в 1968 году нашла уязвимость в космическом корабле
Бабушка программирования

P.S.
«Тогда я часто представляла себе, с какими заголовками выйдут газеты, если что-то пойдет не так. Все будут винить в неудаче меня», — вспоминает Гамильтон.
Помните, что тестировщик в ответе за все

P.P.S.
Отдельное спасибо Саше за помощь с переводом.




Вместе с компанией Edison продолжаем весенний марафон публикаций.

Я постараюсь докопаться до первоисточников IT-технологий, разобраться, как мыслили и какие концепции были в головах у первопроходцев, о чем они мечтали, каким видели мир будущего. Для чего задумывались «компьютер», «сеть», «гипертекст», «усилители интеллекта», «система коллективного решения задач», какой смысл они вкладывали в эти понятия, какими инструментами хотели добиться результата.

Надеюсь, что эти материалы послужат вдохновением для тех, кто задается вопросом, как перейти «от Нуля к Единице» (создать что-то, чего раньше и в помине не было). Хочется, чтобы IT и «программирование» перестали быть просто «кодингом ради бабла», и напомнить, что они задумывались как рычаг, чтобы изменить методы ведения войны образование, способ совместной деятельности, мышления и коммуникации, как попытка решить мировые проблемы и ответить на вызовы, вставшие перед человечеством. Как-то так.

0 марта. Сеймур Пейперт
1 марта. Xerox Alto
2 марта «Позвоните Джейк». История NIC и RFC
3 марта Грэйс «бабуля COBOL» Хоппер
4 марта Маргарет Гамильтон: «Пацаны, я вас на Луну отправлю»
5 марта Хеди Ламарр. И в кино обнаженной сняться и во врага торпедой пульнуть
7 марта Великолепная шестерка: девушки, которые термоядерный взрыв рассчитывали
8 марта «Видеоигры, я ваш отец!»
Летали ли американцы на Луну?

Проголосовало 943 человека. Воздержался 161 человек.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Комментарии (33)


  1. gearbox
    04.03.2016 21:54
    +14

    Шикарный пост и ни одного коммента. А потом сопли по экрану — никто ничего не пишет!
    Спасибо!!!
    Жду еще постов по теме женщин в IT — Ада Лавлайс, Адель Голдштейн, да много их.


    1. MagisterLudi
      05.03.2016 00:30
      +2

      Про Аду Лавлейс — https://habrahabr.ru/post/272841/


      1. MagisterLudi
        05.03.2016 00:31
        +3

        Ждите статью про "великолепную шестерку"!


        1. gearbox
          05.03.2016 10:05

          О! это тема!


      1. olegkrasnov
        05.03.2016 13:43

        Про Хеди Ламарр будет?


        1. MagisterLudi
          05.03.2016 14:29

          да, у меня про нее на военке был экзамен



    1. MacIn
      05.03.2016 11:35

      Это, скажем так, не первый пост на эту тему. Может быть, не с такой компоновкой, или разбит на части, но информация была.


  1. gigimon
    04.03.2016 22:34
    +6

    Уже не первое упоминание ее на хабре, но нигде не расписывают дальше ее карьеру и чем занимается, было бы интересно узнать


  1. mastedm
    04.03.2016 23:42
    +17

    После таких постов стыдно становится: а чем мы сегодня занимаемся? кнопочки на сайтиках-однодневках добавляем?


    1. pehat
      05.03.2016 02:38
      +12


    1. khim
      05.03.2016 05:23
      +13

      Проблема не в кнопочках. Проблема в том, что под этими кнопочками лежит система, по сравнению с которой все эти "бортовые компьютеры Аполло" — как бактерия по сравнению с человеком.

      Для того, чтобы красиво прокрутить список SMS'ок на экране вашего смартфона нужно больше ресурсов, чем для того, чтобы рассчитать посадку на Луну! Причём не "затрачивается больше ресурсов" (это-то само собой: современные программы большую часть мощности современных CPU/GPU попросту транжирят), а "реально нужно потратить даже при самом оптимальном программировании". Для того чтобы это понять просто вспомните — на каких компьютерах шла самая первая в мире компьютерная игра и сравните мощности этого компьютера с тем потоком данных, который нужно чтобы просто нарисовать на экране iPhone (или какого-нибудь Samsung Galaxy S7)… да вообще хоть что-нибудь, чёрт побери!

      Разрешение S7 — это 2560x1440x3 байта, а компьютер Apollo порождал только 85'000 15 битных чисел в секунду (да-да, детки — 8 битные байты появились сильно позже), то есть даже чтобы породить нужное количество нуликов и единичек компьютеру Apollo потребуется минута. А если ещё вспомнить, что эти нулики и единички, в общем-то, должны не просто какой-то узор из себя изображать, а какую-то осмысленную картинку...

      А вот дальше возникает вопрос, на который у меня нет ответа: это вообще — хорошо или плохо? То, что мы транжирим столько ресурсов — вроде как плохо… а то, что при этом всем этим могут пользоваться не только тренированные астронавты… вроде ведь как хорошо… Но стоит ли овчинка выделки? Был бы мир лучше если бы люди не тратили так много ресурсов на красивые картинки, а потратили бы их на что-то другое?.. Кто знает...


      1. extempl
        05.03.2016 12:29
        +4

        Как-то на подобные вопросы (почему я делаю какие-то кнопочки вместо того чтоб применять эти технологии и знания для движения человечества вперёд) мне ответили, что бОльшая часть планеты как бы занимается обслуживанием того процента, который и занимается продвижением человечества.
        Хотя многие технологии выходят из потребительских продуктов, и кто знает, если бы никто не стремился создать лучший айфон, может быть и не было бы этих самых новых технологий.


        1. khim
          05.03.2016 14:05

          Про то, что выходит из "потребительских продуктов" ещё ладно (если не было бы желания играть в 3D-игры — современные суперкомпьютеры были бы гораздо слабее, к примеру).

          Куда больше вещей, которыми пользуются все вышло из недр военных лабораторий — как к этому относится? Вроде как убивать людей нехорошо, а с другой стороны без военных — фиг знает сколько мы бы ждали того же интернета… и не факт, что долждались бы: альтернативы, которые параллельно с творением DARPA разрабатывались были гораздо более эффективными (на малых масштабах), но не были рассчитаны на отказы, а потому не масштабировались на всю планету, DARPA же в саму основу проекта положила требование отказоусточивости сети при различных отказах (поле боя, струляют), что оказалось очень кстати, когда в сети оказались десятки тысяч автономных систем и миллиарды компьютеров...

          Кто бы оплачивал тот же GPS/ГЛОНАСС/Бэйдоу, если бы они военным не были бы нужны? А так — поверх них "висит" какое-то немыслимое количество вполне гражданских сервисов… часть из них даже "человечество двигает"...


          1. IRainman
            06.03.2016 02:02

            Тут проблема правильной приоритезации. На военку, а точнее через неё ресурсы тратятся только потому что общество, в т. ч. геополитика до сих пор вот так устроены. Сейчас потихоньку применяются схемы в рамках концепции стабильного развития, но всё равно представители комитетов ООН жалуются на нехватку финансирования, а серьёзные проблемы пока не решены, так, например, войны на ближнем востоке уже вызвали миграцию по численности населения сравнимую со второй мировой. Так что меняем мир к лучшему в рамках собственных возможностей и стараемся понимать как он устроен сейчас (с этим тоже сейчас всё ещё есть проблемы).

            Да и не в изначальном направлении дело, дело в людях, всегда. Есть, например, BOINC, который делался для науки в институте, а потом перешёл стал полностью открытым и сейчас общая мощность сети для распределённых вычислений работающая поверх технологии сравнима с производительностью машин из верхней части списка TOP-500. В общем прогресс не остановить и завтра, в любом случае, будет лучше чем вчера. К слову, к чему это я, а к тому, что присоединяйтесь ;)

            Кто бы оплачивал тот же GPS/ГЛОНАСС/Бэйдоу, если бы они военным не были бы нужны?

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


            1. MacIn
              06.03.2016 02:26

              Общество ещё надо будет целенаправленно развивать какое то количество времени, чтобы пришло понимание всех идей стабильного развития.

              Одного понимания мало. Пока будут элитарные группы с противоположными интересами — будут и войны.


            1. khim
              06.03.2016 04:12

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

              Общество ещё надо будет целенаправленно развивать какое то количество времени, чтобы пришло понимание всех идей стабильного развития.
              Если бы всё было так просто. В какой-то момент просто общество придётся ломать или, как минимум, кардинально перестраивать — и пока неясно как это делать.

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


              1. MacIn
                06.03.2016 15:46
                +3

                Попытка СССР решить эту проблему центральным планированием не привела к оглушительному успеху тоже

                Потому что пытались подогнать под планирование все, в том числе мелочь широкой номенклатуры, которая планированию не поддается. То, что выпускается валом с ограниченным кол-вом модицикаций, вполне себе планируется.

                тех, кто «сильно вырос» и пытается «маленьких забижать» государства начинают «лупить по попе»

                Ага, только вчера читал про Xerox — они были пионерами в своем деле, разработали множество технологий, получили гору патентов. А потом американский FTC сказал им, что "так низя" и давайте-ка вы ребята, по добру по здорову, сами отдадите свои патенты? Пришлось отдать, и вскоре доля Xerox на рынке упала с +-100% до 14%.

                Это, кстати, тонкий намек тем, кто любит вписывать в преимущества капитализма монетизацию своих идей.


                1. khim
                  06.03.2016 16:33

                  А потом американский FTC сказал им, что «так низя» и давайте-ка вы ребята, по добру по здорову, сами отдадите свои патенты? Пришлось отдать, и вскоре доля Xerox на рынке упала с +-100% до 14%.
                  А вот тут я не вижу никаких проблем вообще. Авторское право в принципе и патенты в частности — это абсолютно не рыночный механизм. Даже больше: это антирыночный механизм — по определению. Ибо он создаёт монополию.

                  Является ещё одним патчем к рыночному подходу, призван поощрять людей разрабатывать разные новые «ништяки» и появился в виде, близком к современному, после принятия английского закона с очень говорящим названием: Statute of Monopolies. Который, кстати, патенты не ввёл, а отменил (за исключением ограниченного круга). С чего, собственно, и началась промышленная революция в Англии.

                  То что государство иногда подкручивает свой собственный patch — это совершенно нормально. Можно подумать вы никогда не выпускали «заплатку к заплатке».

                  Это, кстати, тонкий намек тем, кто любит вписывать в преимущества капитализма монетизацию своих идей.
                  Эти люди, как минимум, не понимают что такое капитализм :-) Никакой «монетизации идей» он не предусматривает в принципе. Монетизация идей появляется там и тогда, когда государство решает капитализм ограничить.


                  1. MacIn
                    06.03.2016 16:43

                    Так и я не вижу! Но постоянно находятся недалекие, которые пересказывают по кругу историю про то, как бедный несчастный советский инженер имея кучу авторских свидетельств, получал несчастные же 150р (премиальные начисления за экономический эффект как-то скромно опускаются при этом), а потом уехал в штаты, изобрел новую технологию и кааааак развернулся. И никто не смеет посягать на его Идею — это же он придумал!

                    В штатах это Antitrust laws.

                    Ах, да — не будем смешивать рынок и капитализм, это разные измерения.


    1. 0xd34df00d
      06.03.2016 01:17

      Мы занимаемся natural language processing и испытываем муки совести, когда приходится заниматься всякими кнопочками. А вы? А почему?


  1. Dark_Purple
    05.03.2016 09:30

    Баян немного, но всё равно интересно.
    https://geektimes.ru/post/242925/



  1. argz
    05.03.2016 15:52
    +2

    Очень похожа на Эмми из ТБВ

    image


    1. gearbox
      05.03.2016 21:15
      +2

      Странно что вы нашли сходство с Эмми и не нашли с Джоном Ленноном :)


  1. DmitryMe
    06.03.2016 00:19
    +4

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


    1. VolCh
      06.03.2016 07:57
      +1

      Как говорится, уставы и инструкции по технике безопасности написаны кровью.


  1. putnik
    08.03.2016 17:40
    +2

    > Wiki: Margaret_Hamilton_(scientist) (на русском статьи нет)
    Теперь есть: https://ru.wikipedia.org/wiki/Гамильтон,_Маргарет


    1. MagisterLudi
      08.03.2016 20:18

      Респект, мужик!


  1. ChernovDmitry
    14.03.2016 12:01

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


    1. khim
      14.03.2016 18:00

      Нельзя в одну и ту же реку войти дважды. Сейчас запуск чего-то в космос — рутина (ракета-носитель стоит не так дорого по сравнению со стоимостью электроники и ПО на запускаемых аппаратах), а разработка ПО — огромная и очень дорогостоящая отрасль. Причём дорогостоящей её делает не стоимость компонент, которые зачастую стоят, в буквальном смысле слова, копейки — а человеческий фактор: все эти тысячи (а то и миллионы) разработчиков, тестировщиков, etc.

      Тогда же — стомость аппаратуры была такой, что за всю жизнь та же самая Маргарет и на один компьютер Аполло не скопила бы, а стоимость того компьютера по сравнению со стомостью остального оборудования — была, в свою очередь, копеечная. И вот это вот всё — зависит от простеньких (по современным меркам!) программ, но от ошибки в которых — зависит успех всего мероприятия!

      Это очень тяжело себе даже представить, а уж каково это было пережить! Как было тогда всё это писать и проверять? Сейчас много вещей мы просто тупо "берём на измор" (прогон тестов после каждого commit'а, к примеру… или хотя бы компиляция после исправления нескольких строк кода) — а как всё это делалось тогда?