Сообщество - КодЯрости, Dev.Pain БезБэкапов

КодЯрости, Dev.Pain БезБэкапов

2 поста 1 подписчик
3

Часть 2: Расплата и cпасение//

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

Паника — это роскошь, которую он не мог себе позволить. Нужно было думать. Он начал откатывать свои изменения. Убрал ту самую переменную с цветом. Выложил обратно старый код. Перезагрузил сервер.

Ничего. Тот же белый экран. Проблема была глубже.

Саня понял, что эта ошибка — не из-за его изменения. Оно было просто спусковым крючком. Ошибка сидела в коде давно, просто каким-то чудом её никто не задевал. А его изменение цвета кнопки — это как последняя соломинка, сломавшая хребет верблюду. Система, и так висевшая на волоске, просто не выдержала.

Он полез в логи сервера. Горы текста, ничего не понятно. Час он их читал, глаза слипались. И тут он увидел её — строчку, которая повторялась раз за разом. Ошибка в каком-то файле с названием helper_legacy_final_v2_old.php. Том самом, который он всегда обходил стороной.

Оказалось, что та переменная с цветом кнопки была глобальной. И её использовала какая-то древняя, забытая всеми функция для отправки почты, которая, видимо, работала всё это время по чистой случайности. Поменяв переменную, он сломал эту функцию, а та, в свою очередь, валила весь сайт при попытке загрузить любую страницу.

Делать нечего. Саня нашел эту функцию. Она была написана так криво, что проще было её переписать с нуля. И он сел это делать. В два часа ночи, на кураже и последних силах, он написал новую, простую и понятную функцию для отправки писем. Заменил ею тот старый хлам. Выложил код на сервер, скрестил пальцы и нажал «Обновить».

Сайт ожил. Товары снова были на месте. Кнопка «Купить» была синей, как и раньше.

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

Вот так одна ху($php)вая кнопка чуть не стоила Сане карьеры, но в итоге сделала его главным по уничтожению того, что он так ненавидел. Мораль? Иногда нужно всё развалить к херам, чтобы построить что-то новое. И всегда делайте бэкапы. Чертовы бэкапы.

Показать полностью
0

Часть 1: Засада

Жил-был у нас пацан, Саня. Веб-разработчик, как мы с тобой. Код писал, дедлайны гонял, кофе литрами хлестал. И была у него работа, вроде ничего, платили исправно. Но был там один кошмар, один сплошной геморрой.

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

И вот в одну прекрасную пятницу, часов в шесть вечера, когда Саня уже мысленно был в баре, приходит ему задание от начальства. «Саня, — говорят, — срочно надо. Заказчик просит поменять цвет кнопки «Купить» с синего на красный. Задача на пять минут!»

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

Он меняет переменную. Локально у себя проверяет — вроде всё ок, кнопка красная. Пушит это нехитрое изменение на боевой сервер, на продакшен, где уже тысячи людей товары покупают. И уже руку на куртку натягивает.

Только он это сделал — у него телефон взрывается. Сначала один звонок, потом второй, потом словно все телефоны в офисе одновременно завыли. Лицо у Сани белеет. Он обновляет страницу сайта.

А там вместо каталога товаров — белый экран смерти. И большими, жирными, красными (ох уж этот красный цвет!) буквами: «FATAL ERROR».

Весь сайт лег. Полностью. Магазин не работает. Деньги не идут. Начальство орет. А Саня сидит, смотрит в монитор и понимает: он тронул что-то не то. Какую-то ниточку в этом клубке дернул, и всё посыпалось.

И самое жуткое? Бэкапа последней версии… не было. Тот самый день, когда забыли.

Вот так, с одной кнопки, начался самый долгий вечер в его жизни. Чем это всё кончится? Он сам в этот момент не знал.
-Завтра продолжу... Надоело писать.

Показать полностью
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества