#885: Адыгей @ Алтай
20:45 18.05.2009, IT happens
Привелось мне в начале девяностых работать в очень амбициозной творческой программерской команде. Интернет в эмбриональном состоянии, наработок и технологий кот наплакал. Наша звёздная команда (лингвисты-профессионалы, профессора и доктора наук, со словарями и опытом, при этом отличные программеры) разрабатывала систему русскоязычного полнотекстового поиска.
Вкратце о поиске с учётом морфологии: задача состоит в том, чтобы найти каждое слово из пользовательского запроса во всех формах, падежах и склонениях; к примеру, «иду», «идёшь» и «шли» — формы глагола «идти». Для этого при индексации страниц надо было привести каждое из встречающихся слов к основе. Сейчас это воспринимается как само собой разумеющееся, но в то время ни Гугла, ни Яндекса ещё не было.
Написали — пора отлаживать. Нужен текст приличного размера. Начало девяностых, начало Рунета, начало российской государственности; как результат, лучшим текстом, найденном в почти девственном отечественном кусочке интернета, оказалась свежеиспеченная Конституция РФ. Ура — запускаем!
По задумке движок должен выдать в алфавитном порядке список основ, встречающихся в предложенном тексте. Народ толпится у монитора, жадно вчитываясь в каждое очередное слово. Через несколько секунд раздаётся дружный хохот — в середине первой же страницы гордо красуется глагол «АДЫГЕТЬ». Прежде чем окончательно сползти под стол, на излёте успеваем заметить еще один не менее шедевральный глагол «АЛТАТЬ»...
Прозрение пришло быстро — всё-таки профессиональные лингвисты. Вспомнили классику типа «дочь генерала» (кто? — дочь, что делала? — генерала), а также географию великой российской империи — республики Адыгею и Алтай.
В общем, как писал известный сатирик Александр Иванов, «велик могучим русский языка». Адыгев от выкрутасов поискового движка, после работы всем коллективом мы отправились алтать.
#886: Как вы лодку назовёте
20:45 18.05.2009, IT happens
Наша организация занимается написанием программок для различных госструктур на заказ. Как всегда, сроки горят, половина не работает, звонит заказчик и требует добавить «вот это и вот то». Нервы на пределе, работа на грани перехода в ночной аврал, а программеры сидят и обсуждают, как же назвать сервер, на котором будет развёрнута система.
Вариантов много: Матильда, Кларисса, Абырвалг, Мерлин... Да, у наших программеров больная фантазия.
В конце концов победил вариант, вызывающий опасения по поводу стабильности и живучести всей системы — сервер был назван «Kenny». Судя по всему, сервак этот не помрет никогда, но уж глючить будет не по-детски.
#887: Smart-UPS в массы
00:30 19.05.2009, IT happens
Работал лет семь назад в одной конторе, где что-то чертили в Автокадах и, как водится, нечасто сохранялись. В комнате на пять компьютеров было четыре бесперебойника, в каждом по три розетки. Когда всё это хозяйство настраивали, я, недолго думая, подключил к одному ИБП два соседних компа и монитор от одного из них, наивно полагая, что потерять питание к монитору не так страшно, как потерять питание вообще. Увы, тут я оказался в корне неправ.
Однажды в разгар рабочего дня происходит сбой питания. Бесперебойники весело, противно пищат, а у одного из сотрудников гаснет монитор. У остальных всё нормально; парень заглядывает под стол и убедившись, что его компьютер подключен к одному из ИБП, недоумённо щёлкает тумблером.
Незадачливый архитектор матерился дуэтом с соседом.
#888: Сила привычки
00:30 19.05.2009, IT happens
Работаю в небольшой конторке, занимаемся поставкой различной съедобной продукции.
Имеем две базы 1С: одна управленка, а другая чисто бухгалтерия. И так уж вышло, что директория с бухгалтерией находится в директории базы-управленки. Всё это бэкапится хорошей (на мой взгляд) программкой-бэкапером.
Спустя некоторое время пришлось переселить управленку на SQL, а бухгалтерию оставить, как было, в файловом хранении, в той самой папочке со старенькими файликами управленки. Настроили бэкапер на бэкап скульной базы и отключили бэкап старой, файловой базы, позабыв о работающей бухгалтерской.
Сегодня утром, главный бухгалтер что-то не то выгрузил и загрузил в свою базу. И, конечно же, сразу обратился ко мне, чтобы я восстановил свеженький бэкапчик. Но как только я понял, что речь идёт о той самой базе, которую удалил из задач бэкапера ещё неделю назад, я упал в осадок. Перед тем как расстроить бухгалтера, решил глянуть, за какое число есть последний бэкап. Как же велико было моё удивление, когда я увидел, что последний бэкап той самой базы был сегодня! Все счастливы, все рады.
Спасибо бэкаперу, что вовремя заглючил и продолжил делать свою работу несмотря на то, что правило уже давно было удалено.
#889: E-швейцар
00:30 19.05.2009, IT happens
Я считаю себя достаточно подкованным в IT и иногда позволяю себе подкалывать тех, кто разбирается в предмете поменьше.
Отправляю по электронке письмо с макетом в типографию, одновременно по телефону договариваясь о подготовке к печати. Девушка-менеджер диктует электронный адрес и тут же добавляет, что они смогут получить файл только через полчаса — на рабочем месте нет человека, который у них открывает электронную почту.
Скатываясь под стол от смеха, громко повторяю фразу девушки всему офису и интересуюсь, не нужен ли типографии человек, который будет электронную почту закрывать?
Смущённая таким поворотом событий девушка начала было обиженно оправдываться, но это уже прошло мимо моих ушей. Думаю позвонить и извиниться — нужно же когда-нибудь начинать работать над своими слабостями.
#890: Береги работу до пенсии — кто ж тебе другую даст
13:00 19.05.2009, IT happens
В своей деятельности я придерживаюсь инженерного подхода, а не научного. Но вот сомнения стали одолевать...
Лет пять назад выпала мне халтурка — написать парсер не сильно прямого языка — объектно-ориентированного расширения SQL. Порекомендовали меня одной конторе, поскольку их штатный программер просидел над этим делом год, нарисовал много схем и, доказав, что это контекстно-зависимая и не LR грамматика, заявил, что быстро написать парсер — дело неподъемное.
Я не стал научно доказывать возможность или невозможность, выкинул ANTLR, взял старый добрый bison написал на коленке грамматику, добавил ручками переключение контекстов... Неделя работ. Остальные два месяца занимался стилем форматирования выходного файла.
А потом задумался. Штатный программер получил никак не меньше 15000 баксов, и работа осталась "неиспорченной". Такую работу можно было еще работать и работать. А я, как урод, решил проблему за жалкие 2 штуки. Ну и кто после этого дурак?