Гавайская система экстренного оповещения

Вы наверное уже слышали про сбой системы экстренного оповещения, которая выдала предупреждение о приближении баллистической ракеты к Гавайским островам в субботу 13-о числа:

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

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

Read On →

Населенные зоны падения

В Китае сегодня запустили Великий Поход 3В и, по ходу дела, отбомбились по собственному населению. Жители городка Xiangdu сняли падение укорителя на головы видео:

Согласно статье этот городок находится в выделенной зоне падения частей ракет, что как бы намекает, что местные жители давно к этому привыкли. Замечу, что Великий Поход использует НДМГ и тетраоксид азота - те же токсичные компоненты, что и Протон.

Iridium-4

Свежая презентация про полетный софт в SpaceX

Свежая презентация про полетный софт в SpaceX в целом, и про миграцию с make на Bazel в частности:

Основные моменты:

  • Два основных репозитория: один содержит полетный код, второй - код симуляции. Более миллиона строк C++ в каждом. Немного Python.
  • Используется своя версия Linux, поддержкой которой занимается отдельная команда.
  • C++ код собирается под несколько разных процессорных архитектур.
  • Полетный код для Falcon и Dragon собирается из одного репозитория.
  • “Test like you fly” - код тестируется в тех же самых условиях, что наблюдаются в полете. Софт и железо тестируются как единая интегрированная система.
  • Система непрерывной интеграции выполняет более 8 тысяч заданий в день.

Вторая половина презентации посвящена миграции с древней системы сборки на основе make на более современный Bazel. Эта часть будет интересна в основном тем, кто интересуется системами сборки кода.

CEX

Компания Rocket Lab сегодня собиралась запустить второй Electron, но попытка сорвалась из-за погоды. Фотограция заправленной ракеты на пусковом столе напомнила забавную историю из ранней истории SpaceX:

Electron. Wet dress rehearsal on Nov 30th, 2017.

У первой версии Falcon 9 в 2009 году на боку была надпись “SPACEX” во весь рост:

Falcon 9 is vectical.

Однако при заправке бак с жидким кислородом покрылся инеем, превратив надпись в “CEX”. Этот забавный просчет был учтен и в дальнейшем надпись сдвинули вниз, на бак с керосином:

Falcon 9 is on the pad.

Отладка злого бага в Go runtime

Отличная статья про ловлю злого бага в Go runtime. Мне больше всего понравился момент, когда выясняется, что ошибочное поведение зависит от значения флага CONFIG_OPTIMIZE_INLINING. Вроде бы и вот она причина, и вместе с тем значение флага никак не указывает на проблемный участок кода. Автор расследования находит отличный выход из положения…

Сны

Я в начале ноября ездил с семьей в отпуск в Эквадор - посмотреть на галапагосских черепах и прочих игуан. Я про это как-нибудь потом подробнее напишу. По пути назад мы заехали на несколько дней в Кито (столица Эквадора). Кито находится на высоте почти три километра. На такой высоте уже становятся заметны проявления высотной болезни - особенно для свежеприбывших туристов типа нас. В частности первые пару дней не получается нормально спать. Через пару дней к высоте привыкаешь и все становится на свои места.

В первую ночь спать не получалось от слова совсем и поэтому сны были особенно запоминающиеся. Помню как смотрел во сне запуск Зумы. Это было еще до всей этой истории с обтекателем и переносом запуска. В интернете как раз смаковали секретность спутника, многозначительно намекая на Северную Корею.

Read On →

Небесная твердь

Как все уже, наверное, знают, второй запуск с “Восточного” закончился неудачей. По слухам разгонный блок “Фрегат” навернулся о небесную твердь и сгинул в морской пучине, прихватив с собой Метеор-М и остальные 18 спутников. По другой версии, разгонный блок выдал импульс находясь в неправильной ориентации, упав в результате в океан.

Самый забавный момент во всей этой печальной истории, это, без сомнения, высказывание Кураева:

Ответственность за неудачный запуск “Союза-2.1б” с космодрома Восточный лежит на благовещенском епископе Лукиане, который освящал ракету-носитель перед стартом. Об этом радиостанции “Говорит Москва” сказал протодиакон Андрей Кураев.

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

На профильных сайтах стоит плач Ярославны: во-первых, - “просрали все полимеры”, а во-вторых, - “виновных на кол”. По последнему пункту я уже высказывался. Наказать виновных, конечно, руки чешутся, но пользы от этого на самом деле не много. Мне лично больше интересно как именно пропустили подобную ошибку в программе. Профессиональный интерес, можно сказать.

Не число

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

Сегодня я хотел бы поговорить о такой особенности чисел с плавающей запятой, как “не число”. Он же NaN (not a number). NaN - это специальное значение, которое возвращается как результат некоторых операций - например результат деления ноля на ноль.

Read On →

Разное

Пока мы тут на всех порах заканчиваем Falcon Heavy, Элон презентовал новый вариант марсианской транспортной системы, она же “очень большая ракета”:

Не буду особенно комментировать - все уже и так разобрали по косточкам. Мне лично понравилась идея со стыковкой корма к корме. На мой дилетантский взгляд звучит логично. Ракеты на жидком топливе умеют закачивать топливо в двигатели в условиях невесомости. Для перекачки топлива требуется провернуть аналогичный трюк, но без зажигания маршевых двигателей. Логично использовать уже существующие возможности ракеты. Само собой в реальности все гораздо сложнее, но концептуально мне эта идея нравится.

В рунете, как водится, тут же включится хор “проповедников скорого коллапса америки в целом, и проходимца Маска в частности”. Благо, что сроки у Илона, … не знаю как правильно сказать, - очень оптимистичные, всегда есть к чему прицепиться. Ну нам не привыкать.

Из других неожиданных новостей - Kitya Karlson переехал в Китай. Хотя, учитывая историю его переездов (Япония, Австралия, Канада, и США), - то этот переезд где-то даже логичен. Засиделся в одном месте, чего уж там.