В один прекрасный момент чудесно искривлённые руки одного из студентов случайно нашли баг в логике сервера. В своё время этот баг даже имел статус фичи, поэтому из сервера удален не был. Но всего не предусмотришь — в результате на мой почтовый ящик посыпались сообщения об ошибке тестирования.
Самую первую ошибку я сделал тогда, когда не предусмотрел специального сообщения, которое должно было останавливать сервер. Что ж, оставался единственный способ — сменить пароль на почтовом ящике. Где-то через час до меня дошло, где может быть ошибка, а ещё минут через пятнадцать я исправил злополучный глюк. Что ж, подумал я, на этот раз обошлось, и сервер можно включать обратно. Меняю пароль на старый — и, разумеется, совершаю вторую ошибку.
Любой айтишник знает, что приличный сервер даже в случае отсутствия соединения с внешним миром должен продолжать работать, работать и работать. Мой сервер думал так же, и когда ему наконец открыли дорогу во внешний мир, он поспешил обрадовать меня двумя тысячами идентичных сообщений[1] об ошибке тестирования.
Что такое десять одинаковых сообщений в секунду? Конечно же, спам, даже если все письма идут на один и тот же адрес. По этой причине почтовый ящик сервера был довольно быстро заблокирован. Ошибку в коде сервера я исправил, а в адрес поддержки почтового сервиса написал письмо, в котором изложил причины столь неприличного поведения и пообещал исправиться. Ящик разблокировали быстро, и процесс тестирования продолжился.
Во время майских праздников я заметил, что хотя студенты и слали запросы на тестирование, сервер ничего не делал. Пришлось пообещать разобраться после праздников. Каково же было моё удивление, когда во вторник я обнаружил, что сервер «забанен» админами университета! Выяснилось, что третью ошибку я совершил совсем давно: увлечённый созданием тестов для домашних заданий, я забыл проверить функциональность удаления сообщений неизвестной природы. Результатом было то, что сервер со скоростью 500 килобайт в секунду скачивал с почтового ящика одно и то же письмо и больше ничем не занимался. Чтобы не иметь проблем с администрацией почтового сервиса, админы университета закрыли доступ «проблемному» пользователю. По иронии судьбы письмо, спровоцировавшее это поведение, было ответом службы поддержки почтового сервиса на мои разъяснения по поводу предыдущего происшествия.
Программисты, тестируйте свои программы и протоколы тщательно, не забывайте о mock-объектах и всегда оставляйте себе возможность «повернуть рубильник», даже находясь на другом краю света.
#3315: Плюс-минус день писать мне лень
13:00 08.06.2010, IT happens
Работаю в рекламном агентстве дизайнером, а заодно эникейщиком — некому больше. Принесли макет в PSD, надо отпечатать. Собираю PDF под Люстрой, открываю Акробатом и печатаю. Отдали тираж — всё нормально. Через два часа клиент перезванивает, просит изменить немного оборот и перепечатать — понятно, за его счёт.
Переделываю, печатаю, режем, отдаём. Клиент матерится: «На фига вы мне то же самое отдали?» Я в шоке, смотрю — и правда, стоит 19-е число, а надо 20-е. Открываю TIFF - там 20-е, открываю PDF в Люстре — 20-е. Нажимаю Ctrl+S, закрываю Люстру, открываю Акробатом. И что вы думаете? Оказывается, Иллюстратор, автоматически перелинковавшись на новый файл с тем же названием, не счёл нужным записывать в PDF изменения. Для того, чтобы всё было нормально, пришлось нарисовать и удалить квадратик.
#3316: На Марс на дизеле
15:00 08.06.2010, IT happens
Офис, в котором я работал, страдал от кратковременных перебоев питания — из-за этого вставала работа отдела продаж из четырёх человек. Для решения проблемы генеральный директор принял решение купить резервный дизельный генератор.
Представьте: на балконе офиса тарахтит генератор, сжигая нефтепродукты, которые по прогнозам учёных закончатся через 30–40 лет, выбрасывает в атмосферу выхлопные газы — и всё для того, чтобы четыре человека поиграли в Doom II!
#3317: Ячейка за ячейкой
15:00 08.06.2010, IT happens
Я не айтишник, не программист, но немного разбираюсь в стандартном виндовском пакете программ. Есть у меня коллега, которая с компьютером общается на «вы», но при этом страшно уважает любого, кто, по её мнению, хорошо понимает в программном обеспечении.