Как котики рушат деплои: история про Баксика и потерянные часы разработчиков
Как котики захватили IT-инфраструктуру
Disclaimer: ни один кот не пострадал при написании этой статьи. А вот клавиатур пострадало много.
История одного деплоя
Было это в прошлую пятницу. Сижу, значит, пилю фичу, всё идёт по плану. Котик мой, Баксик, дрыхнет на подоконнике, солнышко светит — идиллия.
И тут — БАМ!
Баксик решает, что подоконник — это скучно, а вот клавиатура — самое интересное место на планете. Прыжок. Приземление. И мой :wq превращается в :wq!!!!!!!11111 с последующим :!rm -rf /.
Хорошо, что я успел нажать Ctrl+C. Но локальный сервер всё же упал.
С тех пор я задумался: а сколько времени мы теряем из-за котиков? И главное — как с этим бороться?
Статистика (с потолка, но правдивая)
После опроса 42 коллег-разработчиков из трёх чатов в телеграме я выяснил:
78% котиков хотя бы раз наступали на клавиатуру в самый ответственный момент
34% котов выключали сервер, нажав на кнопку питания
12% (самые одарённые) умудрялись отправить пул-реквест с рандомными символами
Мой Баксик гордо входит во все три категории.
Топ-5 кото-катастроф в IT
1. Кот vs Клавиатура (классика)
Самый частый кейс. Кот садится на клаву, потому что:
Она тёплая
Она пахнет вашими пальцами
Вы смотрите на неё, а значит, она важная
Решение: Купить механическую клавиатуру с тяжёлыми свитчами. Кот продавит, но не так быстро. Или поставить горячие клавиши на что-то безобидное. У меня Ctrl+Shift+K теперь открывает мемасы с котами — Баксик смотрит и успокаивается.
2. Кот vs Монитор
Кот сидит перед монитором и смотрит на курсор. Вы не видите код. Кот не двигается.
хом. Или, как я, купить беспроводную периферию и надеяться, что кот не начнёт грызть зарядку от макбука (спойлер: начнёт).
4. Кот vs Коллеги на созвоне
Кот запрыгивает на стол, садится перед веб-камерой и начинает умываться. Весь созвон смотрит на кота, а не на ваш доклад.
Решение: Смириться. Это повышает карму. Серьёзно, после того как Баксик появился в кадре, меня перестали дёргать на утренние стендапы. Спойлер: коту плевать на вашу карму.
5. Кот vs Терминал
Кот наступает на Ctrl+C в самый неподходящий момент. Или, что хуже, на Enter.
Решение: Использовать screen/tmux. Сессия переживёт случайное закрытие терминала. А если кот уронит ноутбук — молитесь, чтобы был ssd.
Что делать? (рабочие советы)
Для разработчиков:
Запретить коту заходить в комнату во время деплоя. Звучит смешно, но работает. Закрываю дверь на 10 минут — и мир.
Поставить коту лежанку рядом с ноутбуком. Он будет сидеть рядом, а не на клавиатуре. Проверено.
Купить игрушку-лазер. Когда кот начинает охоту на курсор, отвлекаем лазером на стену. Минута игры — час спокойной работы.
Для сисадминов:
Автоматизируйте всё. Если котик может случайно нажать на кнопку — значит, она не должна ничего критичного делать без подтверждения.
Делайте бекапы. Кот не спросит разрешения, прежде чем уронить сервер.
Держите запасной ноутбук. Поверьте, когда кот прольёт чай на основной, вы скажете спасибо.
Заключение
Котики и IT — вечная история. Они не злые, они просто любят тепло, внимание и хаос. Мы, разработчики, любим порядок, контроль и дедлайны.
Но знаете что? Иногда кот, сидящий на клавиатуре, напоминает нам, что мир не рухнет от одного неудачного пуша. Что можно выдохнуть, погладить пушистого диверсанта и заварить чай.
А код подождёт. Сервер перезагрузится. Баксик — вечен.
P.S. Пока я писал этот абзац, Баксик успел:
Наступить на Enter — отправил черновик в публикацию
Лечь на мышку — я случайно закрыл вкладку
Мурлыкнуть — и я простил ему всё
Котики — лучшие тестировщики. Они тестируют ваши нервы на прочность.