bash.im ithappens.me zadolba.li
1455

Антилена

Был у нас в регионе небольшой сотовый оператор, где я и трудился. Ныне это филиал большого и гордого предприятия.
Занимался я там многими вещами, но любимой «игрушкой» был находящийся в подчинении SMS-центр. Больших программ я никогда не писал — работа была несколько иная, но вот мелких скриптов я настрочил массу. Про один из них и хочу рассказать.

Два-три десятка строк на перле и вуаля — пользователи интернета могут отправлять SMS друзьям и родственникам с нашего сайта (не более 10 в сутки с одного IP). Написал, запустил и забыл. Через несколько месяцев начали поступать жалобы на спам в наш колл-центр. Абонентов донимала некая Лена, которая просила закинуть ей на номер 300 рублей.

Можно было бы добавить капчу на сайт, но делать это было лень. Я немного поколдовал над скриптом и с божьей помощью в регулярных выражениях научил скрипт выбирать из массы сообщений отправленные Леной и подменять номер получателя на номер попрошайки.

Сел наблюдать. Лена опять отправила сообщения нашим абонентам с просьбами помочь материально. На месте барышне не сиделось — SMS были отправлены с тридцати разных IP-адресов. На следующий день ситуация повторилась. На третий тоже. На четвёртый Лена, видимо, включила телефон, чтобы посмотреть на улов, и получила несколько сотен входящих.

Несколько дней была тишина, но где-то через неделю напасть началась снова — немного поменялся текст сообщения. Мой скрипт был начеку — он способен был разобрать символы «0», «I», «Б» вместо нуля, единицы и шестерки в номере телефона, не говоря уже о подмене русских букв латинскими аналогами. Леночка сопротивлялась недолго и вскоре ушла искать счастья на сайтах других операторов, о чем я узнал из сообщений на их форумах.

Война окончена. Враг посрамлён, абоненты успокоились, мы довольны.

1454

DROP DATABASE

18 ноября 2009, 16:45

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

Решено — сделано. Поставил себе знаменитое «Соло на клавиатуре» и развлекался в обеденное время. Набирать не глядя я научился, но возникла маленькая проблема — прежняя привычка печатать двумя-тремя пальцами порой приводила к тому, что я путал местами две ближайшие буквы в слове, нажимая клавишу раньше, чем следовало.

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

Возвращаюсь и вижу в консоли кучу ошибок по поводу дублирования данных. Стал разбираться. Просмотрел свой файл — опечаток вроде нет. Полез ковырять временную базу — в некоторых таблицах индекс не обновился. Снова лезу в свой файл, отыскиваю нужное место... и сползаю под стол от хохота. Торопливость, помноженная на несовершенство навыка скоропечатания, сыграла со мной злую шутку: вместо «UPDATE» я умудрился напечатать «UPADET». Хорошо, что мускуль не понимает транслита!

1453

Язык мой — враг мой

Работаю в небольшой фирме-провайдере системным администратором. Разгар сезона отпусков, конец июля. Фирма небольшая, и техподдержка наполовину в отпусках, поэтому я заменяю паренька-саппорта. Звонок:

— Техподдержка компании %provider%, меня зовут %name%, слушаю Вас.
— Мыня завут Тэнгиз, самий старший сисёмный адмын грюпи кампаный ЗАО %client%. Слющий, какого х#я у нас так плохо работаит ващ интенат и ипэ-тефоня, на?! (Ей-богу, не вру — печатаю с диктофона.)
— Сообщите, пожалуйста, код направления и ориентировочное время звонка..
— Да ты, чё, не понял?!.. @#%$!

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

— Опа, а что за грусть в глазах?
— Да обругали..
— Кто посмел?
— Да вот из ЗАО %client%.
— Назвался?
— Ну да.
— Кто?
— Да сисадмин их.
(задумчиво) Ага... А ну, пойдём-ка.

Директор решительно набирает номер клиента.

— Здравствуйте, компания %provider%. Я могу поговорить с вашим самым старшим администратором?
— Да! Эта я!
— Простите за вопрос, а вы русский?
(в замешательстве) Нэ савсэм, а что?
— А то, что я русский, и исконно русских слов знаю на порядок больше вас, уважаемый «самый старший»! И на х#й послать, а то и в более далёкие пешие путешествия я могу быстрее тебя, понял?

Не все директора звери, господа!

1452

Резидент-evil

Было это лет 15 назад, когда основной осью была MS DOS, а ситуация, когда за одной машиной по очереди работали несколько человек, была в порядке вещей.

На восемь программистов у нас в отделе приходилось три машины — по тем временам нормально. Составили расписание и обменивались часами — вдруг кого идея в неурочный час стукнет?

Был у нас в конторе один начальник начальников, который любил попрограммировать и поизучать это «грязное» дело, хотя в его непосредственные обязанности написание кода в общем-то не входило. Повадился этот начальник выпрашивать у меня машинное время — дай, дескать часок поработаю. Где часок, там и два, а выгнать его запросто тоже не получается — начальник всё же. Через пару недель у меня на лице было написано, как же он меня достал.

Ребята в отделе мне подкинули мысль: «Да напиши ты ему вирус, чтоб неповадно было». Вирус делать не стала, но за полчаса я состряпала резидентную программу, которая считала на клавиатуре число нажатий клавиши «a» (или «o» — не суть важно), а по достижени определенного числа выдавала на экран в случайном месте случайную строчку текста (напоминаю, товарищ сидел в Turbo Basic в текстовом режиме) методом прямой записи в видеопамять.

Интеренее было придумать, как засунуть программу в автозагрузку так, чтобы не сразу нашли. Вопрос решился просто — драйвером клавиатуры был всемирно известный keyrus.com Гуртяка. Я создала файл keyrus.bat, находящийся где-то в месте, известном переменной PATH, а в него прописала шуточную программу и, собственно, сам keyrus.com. В autoexec.bat keyrus был записан без расширения. Процесс закладки «мины» завершился за пять минут до конца рабочего дня.

Вечером того же дня я была обрадована звонком шефа — утром надо было поехать не в наш филиал, а в главное управление. В итоге до своего рабочего места я добралась лишь к обеду и сразу заметила малость позеленевшие физиономии наших начальственных товарищей. Чьих рук эта программа и что это просто шутка, они в конце концов поняли. А вот как её из автозагрузки убрать, за четыре часа втроём не додумались!

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

1451

Возвращение протокола finger

Работаю в IT-отделе крупного банка. В функциональные обязанности входит в числе прочего и помощь клиентам. Звонит девушка из филиала на другом конце нашей необъятной родины. Поднимаю трубку:

— Здравствуйте.
— Здравствуйте, у меня ничего не работает!
— Давайте разберёмся. Что конкретно у вас не работает?
— Ну вот это!
— Что это?
— Ну вы что?! Я же вам пальцем показываю!

1450

Фривольные пакеты

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

— Магазин %name%, здравствуйте.
— Я... свингер!

У меня аж глаза расширились. Молчу секунд пять — в голову не приходит, что можно ответить на такое заявление. Произношу единственную заглянувшую в мой мозг фразу, еле сдерживая смех:

— Хорошо, чем я могу вам помочь?
— Ну я заказывал...

После этого у меня в голове просто всё взорвалось. Каким-то образом я смог сдержаться — начало доходить, что человек оставлял предзаказ.

— И что вы заказывали?
— Свингер, чтобы два компа соединить.
— Вы имеете в виду свитч?
— Да, точно! А то я тоже думаю, что какое-то странное название.

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

1449

Однозадачность

Еду сегодня в метро, доделываю маленький проектик по работе. В совершенно отрешённом состоянии проглядываю сотни строчек плюсового кода. Внезапно до меня доносится обрывок разговора девочки-блондинки и такой же подруги: «Смотри, мальчик в контакте сидит!»

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

1448

Попытка номер семь

17 ноября 2009, 20:30

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

Обычный, рядовой случай — пришёл клиент с просьбой настроить ноутбук; никаких дополнительных условий и указаний. На ноуте стояла ХР и работала без проблем. Пораскинув мозгами, решил залить клиенту релиз-кандидат Windows 7, чтобы было красиво и «супер-пупер». Установил, залил дрова от Висты, лекарством от Висты же избавил систему от потребности активироваться... Всё летает, софт работает на ура.

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

Клиент раскололся: «Эта система для меня слишком сложная». Я бы не стал ржать в лицо человеку, но сдержаться не было сил — в это время краем уха я слышал по телеку майкрософтовскую рекламу, где девочка четырёх лет, фоткая кошку и отправляя по мейлу маме, говорит: «Это просто. Я люблю Windows 7».

1447

Принеси то — не знаю что

Звонит потенциальный клиент. Он уже получил от нас анализ сайта и коммерческое предложение, а теперь разносит в пух и прах всё ему высланное:

«Мне не нужен был анализ сайта, мне нужна была только стоимость по его продвижению. И мне не нужно коммерческое, а нужна стоимость переделки сайта! Я пришёл к вам потому, что мне понравился ваш сайт. Хотя ваше портфолио мне не понравилось, оно никуда не годится».

И добивает менеджера фразой:

«Я вообще ничего не хочу знать! Я пришёл в студию, как к доктору: сел и доверился. Вы профессионалы и знаете, что делаете».

Вот сидим мы и думаем: то ли похвалил, то ли обругал...