Miscellanea VIII

Что у станка, что за компьютером в работе «мусор» является ясным термином. Мусор — всё, что не требуется для работы сервиса, сервера, продукта. Наличие мусора говорит об отсутствии внутренней дисциплины. В коде это приводит к неиспользуемым импортам, к недостижимым ветвлениям, к лишним переменным. На файловой системе складируются бестолковые файлы. Внутри системников заводятся мыши и тараканы. Не надо так. В фильмах фигня про немытых и обкаканных профессионалов. Нормальный профессионал содержит свою работу в чистоте и порядке.

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

Когда, наконец, мы получили желанную орбиту спутника (точнее, хорошо наблюдаемой визуально ракеты-носителя второго ИСЗ), она привела нас в шоковое состояние. Оказалось, что в южном полушарии орбита проходила… под поверхностью Земли. Это, конечно, не могло быть правдой, так как данные наблюдений были недельной давности, а появления спутника регистрировались и позднее. Пришлось разбираться. Мы обнаружили, что в измерениях присутствовали ошибки времени их выполнения, доходившие до 5 секунд (около 40 км вдоль орбиты)! При таких ошибках и с учетом малой доступной базы измерений (лишь в пределах территории Советского Союза) точное вычисление эксцентриситета орбиты практически невозможно (полуось орбиты мы определяли хорошо, зная период обращения). Стала очевидной необходимость создания системы единого времени на пунктах наблюдения, что очень непросто, если пункты находятся достаточно далеко, например, на разных континентах

60+ лет прошло, а отсутствие точного единого времени всё так же наносит удары.


Кстати, про историю. Восьмибитный байт в СССР появился не сразу. Дело в том, что отечественные машины использовали в основном либо семибитный байт (Минск-32), либо шестибитный (БЭСМ-6, Весна, М-220 и др.), либо вообще переменной длины (привет Уралам). Потому решение взять IBM System/360 и всюду насадить в середине 60-х было очень интересным с точки зрения миграции софта. Ну и вообще история процесса любопытна в контексте дискуссий о том, почему в какой-то момент отечественный компьютерпром «по решению правительства и партии» свернул в другую сторону. Если кратко, то заигрались в зоопарк. А любой нормальный производственник терпеть не может зоопарк. С остальным всё было неплохо, но вот.

Любопытная (и уже слегка устаревшая) деталь китайского импортозамещения. В Китае суперкомпьютеры Тяньхэ-1А и Тяньхэ-2 построены на базе Intel. В 2015 году США решили, что нефиг китайцам ядерное оружие помогать считать, потому поставки процессоров Intel в вычцентры были запрещены. И тут в 2016 году ход конём: на архитектуре ShenWei китайцы внезапно делают процессоры ShenWei SW26010, на которых делают самый суперкомпьютер в мире — Sunway TaihuLight. Понятия не имею, в какую сторону всё-таки отразятся санкции на России (и спорить об этом не хочу), но вот Китай, на котором гроздь санкций не первый год, вполне толково выкручивается во всех областях, ещё и умудряется экономически рычагами поигрывать в нужных местах. При этом их IT/CS сообщество живёт в резервации, в собственном мире. Оттуда нет новостей, нет учебников, нет широко известного сугубо китайского софта (кроме Alibaba’шного). Есть забор. За которым миллионы программистов успешно что-то делают.

Не перестаю думать о том, как для англоязычных выглядит исходный код программ. На Хабре докликался до старой статьи, а там скрин языка Рапира:

8e49a97e331143d7a092574c5a2cc333
СССР, конец 70-х, язык для школоты

Ну… Да. Как-то так. Пожалуй, хорошо, что английский не родной.

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