🔥

Тред (Сергей Куликов)


Тред в честь пятницы 13-го. О человеческом факторе и багах.

Для начала простой факт: у фреймворка Vaadin есть версия 14.1.5. Следующая за ней имеет номер 14.1.16. К счастью, это был всего лишь патч-релиз, и обращаться в npm для отката мы не стали.

В тот раз отличился не я, но в моей карьере тоже бывало всякое. До перехода во фронтенд я больше 7 лет работал в IT-отделе крупного банка как человек-CRON, ну и еще немного админил базы данных.

Работа включала в себя применение SQL-скриптов, присылаемых разработчиками по скайпу. Возможно, вы слышали шутку про тех, кто запускал UPDATE без WHERE и тех, кто еще нет. Я запускал.

@jsunderhood Не очень понятен смысл твита. В чем баг? Версия же все равно выше
Смысл в том, что это могла быть и мажорная версия. Менеджмент вряд ли бы этому обрадовался. Как известно, из npm после случая с left-pad крайне проблематично что-то удалить. twitter.com/meafmira/statu…

Более 7 лет я нажимал .bat-файлы и вводил нужные даты. Утром, под конец 12-часовой ночной смены, это требует чуть больше внимания, чем обычно. В общем, трёхтысячные годы иногда случались.

От человеческого фактора не застрахован никто. Я достаточно долго был подвержен такому риску, хотя это конечно же не идет ни в какое сравнение с ситуациями, где на кону человеческая жизнь.

Благодаря человеческому фактору мне случалось ехать в офис среди ночи, чтобы помогать коллеге поднимать базу из бэкапа. В другой раз сменщик заболел, и вместо 12 часов я отработал сутки.

Прошло почти 5 лет с тех пор, как я сменил профессию. Но и сейчас я каждый раз тщательно проверяю версии и на секунду испытываю тревогу, когда запускаю утилиту, делающую npm publish.

В целом фронтенд намного спокойнее. Хотя тут можно, например, ошибиться в названии переменной. Однажды я так и сделал, в итоге у нас больше 2 месяцев не работал сбор анонимной статистики. github.com/vaadin/vaadin-…

По крайней мере, теперь мне не приходится чинить авралы. Хотя изредка они случаются по вине браузеров. Например, в Chrome 65 при использовании нашего <vaadin-grid> крашилась страница. github.com/vaadin/vaadin-…

@jsunderhood Не значит ли это что больше 2х месяцев это никого не интересовало?
Разумеется. Иногда бывает и такое. Это как раз то, к чему я клоню: если уж проблему не удалось предупредить, ее нужно быстро распознать. Тот же баг Chrome мы могли заметить еще в Canary. twitter.com/shuvalov_js/st…

А еще о проблемах надо говорить. Я упоминал, что часть проектов мои коллеги перенесли в монорепозиторий. До этого я показал менеджменту, сколько времени уходило на ручную работу.
notion image

Автоматизация занимает время, которого приходится добиваться с боем. Зато доля человеческого фактора снижается, а разработчики пишут код, вместо того, чтобы тратить время на рутину.