Принтер перестал жрать бумагу — начальство затопало ногами и отправило меня разбираться. Сел копаться, через пару часов проблема была локализована, и стало ясно, что сам я с ней справиться не смогу. Вызвали мастера, он за пару часов добился примерно тех же результатов. Принтер был старенький и давно просился на покой. Начальство дало добро, и я притаранил новый — правда, подключить не успел, отложив торжественный запуск на завтра.
С утра прихожу и вижу, как блондиночка-секретуточка, которой в день трагедии в офисе не было, лихо что-то печатает на уже списанном принтере!
Начальство движется ко мне, насвистывая марш Шопена. Все, думаю, кирдык. Подходим к девочке. 18 лет, приехала поступать и не поступила — милое создание, никем и никогда не уличённое в интеллектуальной активности. Как?
Оказалось, что для того, чтобы осознать, что бумага из лотка не уходит, потому что стёрлись подающие валики, ей понадобилось пять минут и небольшая серия экспериментов со стаканом воды — мокрый валик бумагу держит великолепно. Для решения же проблемы ей понадобилось ещё меньше времени и немного жевательной резинки.
Я попробовал реабилитироваться перед начальством, предложив усовершенствовать систему с использованием двустороннего скотча, но инициатива была отвергнута. Меня, конечно, не уволили, но урок был усвоен — теперь над тупыми юзверями глумиться я себе не позволяю. Кстати, обмотанные жвачкой валики уже месяц исправно работают.
#1007: Секретный правительственный инкремент
00:30 26.06.2009, IT happens
Как-то раз в советские времена довелось мне посетить «машинный зал» оборонного завода N. Прихожу рано утром, набираю на цифровом замке код — дверь не открывается. Набираю другой код, вхожу, включаю ЕС, иду ставить магнитные ленты на лентопротяжки.
Слышу сзади: «Стой, соколик, где стоишь, и руки вверх!» Оборачиваюсь. Бабушка — божий одуванчик с «макаровым». «Пошли, — говорит, — к начальнику охраны, будем разбираться, кто ты такой и как оказался на территории режимного ВЦ во внеурочное время». А мне-то что — допуск и предписание у меня есть. «Пойдёмте, — отвечаю, — раз такое дело».
Начальник охраны оказался бдительным соколом сталинского разлива. Пролистал мои документы, скривился и говорит: «В принципе, ты имеешь право здесь находиться, но есть одна большая неувязка. Я с утра код на двери в машинный зал сменил, но никому его не сообщал и не сообщу до завтрашней утренней планёрки. Ты его уже знаешь. Что это значит? У нас утечка информации!» И смотрит на меня исподлобья с хитрым прищуром.
Битых два часа пришлось мне ему доказывать, что я, недавний выпускник мехмата, страшным усилием мозга чисто случайно догадался, какой будет код на двери 2 января 1985 года, если предыдущий код был «1984».
#1008: Если б мишки были пчёлами
00:30 26.06.2009, IT happens
Забавная всё-таки штука — программирование!
Лет пятнадцать назад разработчик пишет красивую, изящную и компактную программу. Последователи добавляют ещё один режим вызова, изменяющий соглашение о передаче параметров. Ещё через пяток лет добавляется третий режим с обходной точкой входа и взятием необходимых данных из файла.
Программа умеет работать как в интерактивном, так и в пакетном режиме, при этом может оставаться реентерабельной, не выполняя реинициализацию при повторном входе, и вызывается в разных режимах из нескольких прикладных пакетов.
И вот модифицированный код составляет уже 40% текста программы.
Настаёт момент, когда авторский алгоритм перестаёт работать для определённой комбинации параметров. Причём определяется это не тестированием, а эмпирически — по жалобам клиентов. Изрядно поломав голову и отладчик, приходится в очередной раз крушить остатки стройной концепции и дописывать условную принудительную реинициализацию переменных посреди красивого авторского кода.
Что делает программа? Фигню — печатает PIN-конверты для банковских карточек. Обычная такая банковская программа, написанная не самыми бездарными программерами. У нас тут ещё миллион таких.
Как там у классиков? «Если бы строители строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию».
Верю!
#1009: Автоматическая очистка, сменные шарики
13:00 26.06.2009, IT happens
В конце девяностых я руководил отделом мультимедиа в одной компьютерной фирме. Отдельного кабинета у меня не было, и сидел я в небольшой комнате, которая помимо прочего использовалась как торговый зал для разной мелочёвки. В частности, на стеллажах лежало несколько подарочных мышей Genius ярких расцветок: коралловая, перламутровая, морёный дуб. Фирма закрывалась в шесть вечера, но я часто засиживался допоздна.