Оттого, что в кузнице не было гвоздя. «Оттого, что в кузнице не было гвоздя… Оттого что кузнице не было гвоздя

История про то, из каких мелочей складываются победы и поражения на войне.

Практически сразу после начала Первой Мировой войны немецкий легкий крейсер «Магдебург» получает приказ начать боевые действия против русских в Балтийском море. Он начинает ставить мины возле Либавы (Лиепая). Потом получает приказ двигаться в Финский залив. А там он в тумане садится на мель…


На выручку крейсера посылаются миноносец V-26 и крейсер «Амазон», но к «Магдебургу» быстро подходят русские крейсера «Богатырь» и «Паллада». Немцы пытаются наладить эвакуацию личного состава под огнем русских, но начинается паника. По уставу немецкого флота требуется сжечь сигнальные книги Signalbuch der Kaiserlichen Marine (SKM) в топке, но она оказывается затоплена забортной водой. И книги с кодами просто выбрасывают за борт. Русские посылают водолазов отыскать их и те находят книги рядом с бортом корабля вместе с другими документами и текущим шифровальным ключом. Командир корабля Рихард Хабенихт, увидев водолазов, понимает, что сигнальные книги в руках русских. Но его содержат под усиленной стражей - чтобы исключить возможность передать весть о захвате книг на родину.

Одна из трех захваченных сигнальных книг передается британскому Адмиралтейству, что играет решающую роль в раскрытии военно-морского шифра Германии. Британцы распоряжаются этой книгой гораздо умнее, чем русские. Они создают специальный криптографический отдел – Комнату 40 . В этом отделе они собирают всю информацию о шифрах Германии.

В октябре 1914 года британцы также получают Handelsschiffsverkehrsbuch, принадлежавший военно-морским силам Германии. Это кодовая книга, которую используют немецкие морские корабли, торговые суда, дирижабли и подводные лодки: Королевский австралийский флот достал копию этой книги с немецко-австралийского парохода Хобарт.

30 ноября британский траулер цепляет сетями и поднимает сейф с затонувшего немецкого эсминца S-119, в котором найден Verkehrsbuch, код, использованный немцами для коммуникации с немецкими атташе, посольствами и военными кораблями за рубежом.

Необходимо добавить, что еще в 1911 году отдел Комитета обороны Империи по коммуникациям заключил, что в случае войны с Германией немецкие подводные пути сообщения должны быть уничтожены. В ночь с 3 на 4 августа 1914 года кабельное судно «Алерт» определяет местонахождение и обрезает пять трансатлантических кабелей Германии, которые достигают Ла-Манша. Вследствие этого увеличивается число сообщений, переданных по радио.

Сигнальные книги «Магдебурга» помогают взломать немецкий шифр. Шифрование было простой таблицей замены одной буквы другой во всех сообщениях. Перехваченные сообщения оказались сводками разведки о местонахождении союзных кораблей. Было замечено, что подобные закодированные сообщения передавались на короткой волне и не перехватывались из-за недостатка приёмников. Было предписано контролировать коротковолновые передачи. Результатом была информация о движениях немецкого флота.

Британские службы перехвата начинают экспериментировать с радиооборудованием пеленгации в начале 1915 года. Первая станция пеленгации была в Лоустофте, позже были построены станции в Леруике, Абердине, Йорке, Фламборо-Хеде и Бирхингтоне, и к маю 1915 адмиралтейство могло отслеживать немецкие субмарины, пересекающие Северное море. Некоторые из этих станций работали в режиме сбора немецких сообщений, в Комнате 40 была создана новая секция для определения местоположения судов по расшифрованным сообщениям.

Комната 40 играла важную роль в нескольких морских боях во время войны, особенно в обнаружении немецких действий в Северном Море, что привело к сражению у Доггер-банки (1915) и Ютландскому сражению (1916), когда британский флот был выслан для перехвата немецких кораблей.

За свою историю сотрудники «Комнаты 40» расшифровали около 15 000 немецких сообщений. Однако наиболее существенным вкладом была расшифровка Телеграммы Циммермана , сообщения из немецкого Министерства иностранных дел, переданного в 1917 году через Вашингтон послу Германии в Мексике Генриху фон Экардту. В ней немцы предлагали мексиканцам финансовую помощь и обещали, что по окончании войны она получит обратно утраченные ею территории Техаса, Новой Мексики и Аризоны. Телеграмма была передана в США и 1 марта была опубликована в печати. В ответ Америка вступила в войну с Германией и быстро разгромила ее.

Странными делами приходится порой заниматься. Вот сейчас прослушивал детские стихи английских поэтов в переводе С.Маршака и в исполнении Сергея Юрского. Дошел до стихотворения "Гвоздь и подкова". Вот оно, его все знают:
"Не было гвоздя -
Подкова пропала,
Не было подковы -
Лошадь захромала,
Лошадь захромала -
Командир убит,
Конница разбита,
Армия бежит!
Враг вступает в город,
Пленных не щадя,
Оттого, что в кузнице
Не было гвоздя!"

И вспомнил, что у этого стихотворения была вполне конкретная историческая основа. Так, во всяком случае, говорят. Во время битвы при Ватрлоо (1815) у французов были все шансы одержать победу. Более того - они ее даже уверенно одерживали. Французская конница под командованием Мюрата, предприняв головокружительную по дерзости и смелости атаку, захватила английские батареи. Французы стали одерживать верх по всему фронту. Но англичане отбросили конницу, батарея возобновила огонь, ход сражения был переломлен, и Наполеон потерпел известное поражение. После Ватерлоо многие задавались вопросом, почему же французы, овладев британской батареей, не вывели ее из строя. А все оказалось просто. В те времена, чтобы вывести из строя орудие, кавалеристы забивали в отверстие для воспламенения пороха обычный гвоздь. Потом сбивали шляпку - и все, при всей внешней нетронутости орудие было небоеготово. И все бы ничего, но кавалеристы очень не любили таскать с собой гвозди. Неудобная штука в конной атаке... Каждый норовил от своих гвоздей избавиться, а в случае необходимости попросить десяток-другой у товарищей. В случае с английской батареей понадеялись все, и в решающий момент гвоздей не оказалось ни у кого. Так англичанам досталась совершенно боеготовая батарея, которая и изменила ход битвы.
Вот так. А вы говорите - "гвозди"...

Гвоздь и подкова.
Читает С.Юрский.

Http://www.liveinternet.ru/users/2365320/

For want of a nail the shoe was lost,
For want of a shoe the horse was lost,
For want of a horse the rider was lost,
For want of a rider the battle was lost,
For want of a battle the kingdom was lost,
And all for the want of horseshoe nail.

Или в переводе Маршака:

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

Знаете, у меня как-то с детства от этого стихотворения сердце замирало. Без шуток. Для меня это всегда был не просто стишок, а баллада, поэма, да целый эпос. История о жизни и смерти, исторический роман, философский трактат. Удивительно много всего заложено в этом маленьком стихотворении. Вот она - краткость, которая сестра таланта.
Я как настоящий представляла себе этот средневековый город и его жителей. Командира конницы, чья молодая жизнь и блестящая карьера так глупо и нелепо оборвались. А потом - пылающий город и молодую хозяйку замка, кончающую с собой, чтобы не попасть в плен. И безжалостного завоевателя, отдающего город на разграбление...
Глупо, наверное, в стиле юношеского трагического романтизма.
Я вообще люблю эти английские стишки - про короля, про кошку, про Робина-Бобина и т. д. Но про гвоздь и подкову и сейчас читаю и слушаю с замиранием сердца. А вспомнилось потому, что я мультфильм посмотрела - шутливую оперу по мотивам этого стихотворения: Оттого, что в кузнице не было гвоздя. Город в нем хорош, как раз такой, какой я и представляла в детстве. (в комментах есть ссылка на этот же мультфильм на ютубе)

Не было гвоздя - подкова упала,
подкова упала - лошадь захромала,
лошадь захромала - командир убит,
армия разбита, конница бежит,
враг заходит в город, пленных не щадя,
ПОТОМУ ЧТО В КУЗНИЦЕ НЕ БЫЛО ГВОЗДЯ!

Это английское короткое стихотоворение в переводе Маршака является для меня одним из самых любимых. Для меня оно значит то, что любое, даже самое грандиозное дело, можно проср загубить из-за одной незначтельной мелочи.
Совсем недавно мы с Сашей проводили собеседование и взяли на работу одного очень перспективного сотрудника. Долго и подробно беседовали о бизнесе, менеджменте и продажах. В процессе нашего разговора мы узнали, что до этого наш кандидат, а теперь уже коллега, была на собеседовании у наших прямых конкурентов. Конечно же, нас заинтересовал вопрос, почему она не выбрала их предложение.
Может быть зарплата не устроила? Социальный пакет не такой? Коллектив подобрался не по душе?
Ответ меня просто поразил и в очередной раз заставил вспомнить приведенное выше стихотворение - "Да нет же. И офис красивый, и люди милые, и финансовые условия достойные. Просто после того, как закончилось собеседование мне сказали: "Ну что? Теперь пойдем покурим?", а мне не очень понравилось, что такое предложение поступило еще до того, как я начала там работать ".
Вот так вот. Правила продажи работает и здесь. Не расслабляйся пока деньги не поступили на твой расчетный счет, иначе Клиент может запросто передумать.

Так что вот так - один неаккуратый вопрос, лишил конкурента отличного сотрудника. И позволил нам взять себе его на работу:-)
А Вы говорите: система мотивации, карьерный рост, обучение..........

PS Кстати, этот стих написан неслучайно. Говорят, Наполеон проиграл битву при Ватерлоо именно из-за того, что у солдат его армии в самый ответственный момент не оказалось гвоздей для подков. Все их сбросили, чтобы не таскать с собой лишнюю тяжесть....

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

В свои bash-скрипты я вставляю
#!/usr/bin/env bash set -euo pipefail

Опция -e останавливает скрипт если процесс вернул не 0 (и пишет в stderr на какой строке ошибка).

Это предотвращает беду, если в списке команд одна из фейлится:
svn up build copy some files delete secret files deploy build to external server Опция -u останавливает скрипт, если используется неопределённая переменная . Это предотвращает беду например в таких случаях:

tar -czf download.tarball.tar.gz "$PROJECT_DIR/bin"

Если почему-то PROJECT_DIR не определена, то пакуется и отправляется пользователям системная /bin, вместо скомпилированых файлов проекта. И есть менеее забавные фейлы, превращение rm -rf "$1/$2" в rm -rf "/" со стиранием всего.

В комбинации с предыдущей опцией - опечатки в переменных окружения перестают быть непредсказуемым каскадно-гвоздевым фейерверком. опция -o pipefail фейлит выполнение пайпа, если один из подкомпонентов выполняется с ошибкой. Например,
cat файл_который_не_существует | iconv -f cp1251 -t UTF-8 > результирующий файл.

Ожидаемые ошибки я игнорирую явно .
Если мне похрен на результат команды, вставляю || true после неё
cmd || true #"||" запускает вторую команду, если первая вернула не ноль. "||" можно читать "а иначе" .
Если я удаляю папку, которая может не существовать, я явно проверяю что она есть перед удалением:
test -d dir_to_delete && rm -r dir_to_delete.
grep с пустым выводом возвращает код 1, и код ошибки 2 если есть реальная ошибка. Игнорирую коды меньше 2 явно:
cmd1 | (grep c || test $? -lt 2) | cmd2. # $? - код возврата, test A -lt B - сравнение
Я не знаю, как удобным образом проверить ошибки в cmd2 в таком коде:
cmd1 $(cmd2) . Подскажите?
Я не эксперт по "портабельному sh", поэтому если используете #!/bin/sh который ссылка на ksh/dash/bash/некий лже-POSIX, то надо смотреть в манах/гуглах какие есть опции.
В bat-файлах программировать надёжно сложно, и я не хочу внимательно вникать в cmd.exe, боюсь за свою психику.
Тем не менее, если я загоняю в bat-файл простой список команд, я в конце каждой команды ставлю || goto error или || exit /b 1 (или || pause если скрипт интерактивный, запускается всегда мышкой).

Build || pause copy some files || pause delete secret files || pause deploy build to external server || pause

Данная техника позволила в скрипте апдейта арта для дизайнеров найти тупые и хитрые ошибки в первые два месяца проекта (иначе бы мы с ними жили два года).

Ничего сложного на bat-файлах я стараюсь не писать, они в пять коварней чем C++, bash, assembler и perl вместе взятые.

Если не убеждаться в правильности работы каждой команды из цепочки,