890

Береги работу до пенсии — кто ж тебе другую даст

В своей деятельности я придерживаюсь инженерного подхода, а не научного. Но вот сомнения стали одолевать...

Лет пять назад выпала мне халтурка — написать парсер не сильно прямого языка — объектно-ориентированного расширения SQL. Порекомендовали меня одной конторе, поскольку их штатный программер просидел над этим делом год, нарисовал много схем и, доказав, что это контекстно-зависимая и не LR грамматика, заявил, что быстро написать парсер — дело неподъемное.

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

А потом задумался. Штатный программер получил никак не меньше 15000 баксов, и работа осталась "неиспорченной". Такую работу можно было еще работать и работать. А я, как урод, решил проблему за жалкие 2 штуки. Ну и кто после этого дурак?

889

E-швейцар

Я считаю себя достаточно подкованным в IT и иногда позволяю себе подкалывать тех, кто разбирается в предмете поменьше.

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

Скатываясь под стол от смеха, громко повторяю фразу девушки всему офису и интересуюсь, не нужен ли типографии человек, который будет электронную почту закрывать?

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

888

Сила привычки

Работаю в небольшой конторке, занимаемся поставкой различной съедобной продукции.

Имеем две базы 1С: одна управленка, а другая чисто бухгалтерия. И так уж вышло, что директория с бухгалтерией находится в директории базы-управленки. Всё это бэкапится хорошей (на мой взгляд) программкой-бэкапером.

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

Сегодня утром, главный бухгалтер что-то не то выгрузил и загрузил в свою базу. И, конечно же, сразу обратился ко мне, чтобы я восстановил свеженький бэкапчик. Но как только я понял, что речь идёт о той самой базе, которую удалил из задач бэкапера ещё неделю назад, я упал в осадок. Перед тем как расстроить бухгалтера, решил глянуть, за какое число есть последний бэкап. Как же велико было моё удивление, когда я увидел, что последний бэкап той самой базы был сегодня! Все счастливы, все рады.

Спасибо бэкаперу, что вовремя заглючил и продолжил делать свою работу несмотря на то, что правило уже давно было удалено.

887

Smart-UPS в массы

Работал лет семь назад в одной конторе, где что-то чертили в Автокадах и, как водится, нечасто сохранялись. В комнате на пять компьютеров было четыре бесперебойника, в каждом по три розетки. Когда всё это хозяйство настраивали, я, недолго думая, подключил к одному ИБП два соседних компа и монитор от одного из них, наивно полагая, что потерять питание к монитору не так страшно, как потерять питание вообще. Увы, тут я оказался в корне неправ.

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

Незадачливый архитектор матерился дуэтом с соседом.

886

Как вы лодку назовёте

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

Вариантов много: Матильда, Кларисса, Абырвалг, Мерлин... Да, у наших программеров больная фантазия.

В конце концов победил вариант, вызывающий опасения по поводу стабильности и живучести всей системы — сервер был назван «Kenny». Судя по всему, сервак этот не помрет никогда, но уж глючить будет не по-детски.

885

Адыгей @ Алтай

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

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

Написали — пора отлаживать. Нужен текст приличного размера. Начало девяностых, начало Рунета, начало российской государственности; как результат, лучшим текстом, найденном в почти девственном отечественном кусочке интернета, оказалась свежеиспеченная Конституция РФ. Ура — запускаем!

По задумке движок должен выдать в алфавитном порядке список основ, встречающихся в предложенном тексте. Народ толпится у монитора, жадно вчитываясь в каждое очередное слово. Через несколько секунд раздаётся дружный хохот — в середине первой же страницы гордо красуется глагол «АДЫГЕТЬ». Прежде чем окончательно сползти под стол, на излёте успеваем заметить еще один не менее шедевральный глагол «АЛТАТЬ»...

Прозрение пришло быстро — всё-таки профессиональные лингвисты. Вспомнили классику типа «дочь генерала» (кто? — дочь, что делала? — генерала), а также географию великой российской империи — республики Адыгею и Алтай.

В общем, как писал известный сатирик Александр Иванов, «велик могучим русский языка». Адыгев от выкрутасов поискового движка, после работы всем коллективом мы отправились алтать.

884

iDkFa_1dDqD

Есть у нас один старый сервак, единственное обслуживание которого долгие годы заключалось в чистке сжатым воздухом и пылесосом. Недавно понадобилось сделать апгрейд системы объектного дистанционного контроля, которой и заведовал этот сервер. Как водится, пароль к нему за давностью лет забыли почти все, кроме одного парня — в армии шифровальщиком был. Звоним, спрашиваем:

— Привет! Дело срочное! Пароль на Жужу (имя сервера) помнишь?

— (моментально) 3520485254.

— Спасибо!.. (Минутная пауза). Слушай, что за число знакомое?

— Количество экспы на 99 уровне в Diablo II.

883

Коллективное несознательное

Сижу как-то в чате, общаюсь с народом. Чат дико тормозит — естественно, я вслух выражаю свою досаду. Первое, что приходит на ум моим собеседникам — вирусы.

Я отрицаю наличие и вирусов, и антивирусной программы: «Линукс у меня, ребята».

В чате повисает небольшая пауза. Следующая же реплика сбивает меня с ног: «Ну, реестр почисть тогда, если не в вирусах дело». Повторяю, что я все-таки в Линуксе. Чат слегка молчит, а потом выдает гениальнейшую реплику: «Ну и что?»

Мои робкие попытки объяснить, в чём дело, натыкались на поток идиотских советов: «выключи программу Линукс», «установи антивирус в правильную папку», «обнови базу».

В конце концов мне пришлось сдержанно поблагодарить собеседников за «советы» и закрыть браузер — все мои логичные возражения воспринимались как капризы.

С того момента я больше никогда не жалуюсь своим собеседникам на трудности со своей машинкой, если нет уверенности в том, что меня поймут правильно.

882

...а через десять лет он разгонял Дюроны

В давние времена мы с двумя друзьями построили маленький бизнес, снабжая желающих недорогими «спектрумами». Сначала покупали все необходимое у местных барыг, а потом поняли — хватит их кормить! С предыдущих продаж накопилась энная сумма денег, и мы рванули в Москву, в Тушино. Достаточно быстро купили всё необходимое и не очень — всего две ночи на вокзале, и мы уже едем домой!

Приключения начались с того, что я забыл в поезде пиджак с деньгами, документами и частью особо ценных деталей. Догнал, забрал, даже не пропало ничего.

Работать сели, как обычно, ночью — тихо, спокойно, никто не трогает и не капает на мозги. Разогрели паяльники, разложили детали по кучкам — за ночь три ZX Spectrum «Краснодар» были готовы и ждали пробного запуска.

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

Ковырялись три дня. Полностью заменили память, перебрали «паука» (жуткое сборище резисторов, конденсаторов и диодов на площадке размером 2х2 см). Дело закончилось применением осциллографа и сверкой с рабочим вариантом.

Причина оказалась банальной. Под одной из микросхем какой-то злой, нехороший человек простым карандашом написал номер изготовленной партии. Как говорится, «есть контакт»!

881

День сурка

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

Пытались что-то объяснить по телефону — ничего не выходит. Мужику за 60, живёт в пригороде. Пришлось заслать инженера — тот чуть не помер от смеха, рассказывая нам о причине всех бед.

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