1984

Финансовые коллизии

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

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

У меня две карточки, которые теперь в одном банке. Оп-па! В сети-то кольцо! Естественно, что платёж не проходит. Надо просто ликвидировать старую карточку, и всё станет окей!

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

1983

Готовь сани летом, а коннект вечером

Отчего-то сегодня вспомнилось, что ещё каких-то десять лет назад никаких локальных сетей, выделенных каналов и ADSL-доступа в сеть ещё не было. Точнее, было, конечно, но не для простых смертных. Именно тогда для меня наступило время знакомства с глобальной паутиной, вылившееся в покупку модема Sportster и карточки доступа в интернет.

Тут и начинается мой рассказ. Дело в том, что провайдер разрешал безлимитно сидеть в сети с двух часов ночи до шести утра, если на карточке оставались тарифные единицы. Имея рубль на счету, по ночам сидеть можно было хоть до умопомрачения. Было одно лишь «но»: таких любителей халявы было множество, и дозвониться до пула ближе к заветному часу становилось нереально чуть менее, чем полностью. В терминальном окне, где производился ввод пароля и логина, стояло жёсткое ограничение: обрыв соединения, если пользователь не проявлял активности больше минуты.

Как бороться? Элементарно! За десять минут была написана программа — Visual Basic, спасибо! — вводившая случайный символ в активное окно раз в десять секунд. Дозваниваешься до модемного пула в десять вечера, запускаешь программу, в два ночи нажимаешь «ввод». Сервер ругается на введённую белиберду, набираешь правильный пароль — всё, ты в сети! Просто, как всё гениальное.

1982

Брутфорсом по Эйнштейну

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

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

За пару месяцев до этого нам как раз привезли новый сервак под базу данных — «15-тысячник» Sun, и мы были по уши в оптимизации базы и запросов под такое количество процессоров и памяти. Раньше база обитала на двухпроцессорном сервере, и на новой мощной железяке стали вылезать совсем другие узкие места. Когда задача добралась до нашего отдела, нам стало интересно, за какое время осилит новый сервер решение этой задачи?

Был разработан скрипт, генерирующий все возможные варианты, проведён диспут, надо ли генерировать bitmap-индексы в таблице для ускорения запроса или при данном объёме оперативки это лишняя трата времени, и написан запрос, включающий условия задачи. Вместе с кодингом уложились в 15 минут — сервак вернул результат, содержащий все варианты решения задачи.

Во время эксперимента ни один рабочий процесс не пострадал.

1981

Мониторчики у часиков

Эникею небольшую контору с разветвлённой сетью офисов по городу. Офисы соединяются с сервером на «штаб-квартире» через городскую локальную сеть, с провайдером которой не прекращается война.

— Добрый день. Адрес: ***, проблема с локальной сетью: линк есть, IP от DHCP не получаем.

— Здрасте! А у вас мониторчики у часиков светятся?

— Девушка, у нас линукс на сервере, у нас нет мониторчиков и часиков. Но линк есть.

— А! А на мониторчиках крестика нет?

Пришли «мастера» для решения проблемы, которую не удалось диагностировать техподдержке:

— Здрасте, мы мастера из ***. Куда подключена сеть?

— Сюда. (Показываю на сервер.)

— А чо это?

— Это сервер, на нем линукс, вот консоль...

— А-а-а, ну с серверами у нас всегда проблемы.

Ещё любимый метод ремонта:

— У нас проблемы с сетью, на сервере сети нет, хотя линк есть, IP получаем.

— Попробуйте перезагрузиться.

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

— Если вы не можете исполнять мои инструкции, я не могу вам помочь, — и короткие гудки.

1980

Развели тут чатки!

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

Сижу я у себя в админке и смиренно ставлю Mandriva Spring на 466-й «целерон» со 128 метрами памяти. Внезапно слышится треск из коридора, и гаснет свет. Упса у меня давно была дохлая — естественно, вся установка летит к чёрту. Поматерившись, выхожу покурить, бью кулаком по электрощиту, пакетный выключатель приходит в сознание, свет зажигается.

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

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

Так вот, вылетаю я на лестничную клетку, пинком открывая дверь, и диким голосом ору на пакетный выключатель (он обычно трещал перед тем, как сдохнуть):

— Я тебе, бл@, щас тут потрещу, на#@й!

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

1979

С наилучшими пожеланиями

Уважаемый %directorname%!

Во второй раз убедительно прошу вас писать свои мысли о наших клиентах не в поле «ФИО», а в поле «Комментарий». Сейчас просматривал логи почтового сервера и нашёл такое письмо:

From: info@%companyname%.ru

To: %clientmail%@mail.ru

Subject: С Новым годом!

Уважаемый %clientname% (конченый козёл, постоянно по срокам кидает, ещё и задолжал до хера)! Коллектив компании %companyname% сердечно поздравляет вас с наступающим Новым годом и надеется на столь же плодотворное сотрудничество в будущем!

С уважением,

системный администратор %name%.

1978

Крепче за обжимку держись, монтёр

Живу я у девушки, но часто езжу домой. Поломалась дома на RJ-45 защёлка. Решил просто поменять коннектор, благо обжимка есть — работал монтажником, инструмент выжил. Взял пару коннекторов, думал, куда уж больше-то? Но не тут-то было.

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

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

Аккуратненько вставляю четвёртый и потихоньку обжимаю. Вроде всё в норме. Вставляю кабель в сетевуху: «Неопознанная сеть». Что за дела? Звоню в техподдержку, а там всё работает. Начинаю беситься. Смотрю на коннектор, проверяю цвета. Вырываю коннектор со злостью. Готовлюсь поставить пятый, он же последний.

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

1977

Ваши характеристики?

Звонок из филиала:

— Здрасте, к нам пришел новый системник.

Сижу и думаю: я вроде бы никаких системных блоков не отправлял. Тот же голос справляется:

— Передать ему трубку?

Это был новый системный администратор.

1976

Пронзая взглядом текстолитовые платы

Работаю саппортом. Звонок пришел: мол, сайт нашей компании не открывается, и проблема эта якобы у нас. Аргументирует дама так:

— Какие вирусы?! Какая ошибка в браузере?! Да у меня за компьютером следит человек, который вам и не снился!

Конечно, думаю, мне мужики каждую ночь не снятся.

— Хорошо, как он за десять минут с начала вашей проблемы узнал, что ни вирусов, ни испорченных данных в браузере нет?

— Он посмотрел туда и сказал, что всё в порядке.

— Просто посмотрел на системный блок и сказал, что вирусов нет?

— Да!

Оказывается, супермен ещё жив, и, видимо, его создали в Лаборатории Касперского.

1975

Октоматематика

Далёкий 1989 год. Я учусь в классе с углубленным изучением математики и информатики. Урок математики в разгаре, и я у доски перемножаю два трёхзначных числа столбиком: 246 х 537. После нехитрых манипуляций, известных ещё с начальной школы, я получаю 161 632. Класс во главе с математичкой наблюдает за моими действиями. Первой подвох учуяла учительница:

— Что-то тут у тебя не так.

Я внимательно смотрю на вычисления, явных глюков не обнаруживаю:

— Не. Всё правильно.

— Точно правильно? — обращается математичка к классу.

— Да! Он правильно посчитал, — не хором, конечно, но у тридцати с лишним человек мнение было одно.

Математичка смотрит на доску, на меня, на класс; во взгляде явно читается, что кто-то её дурит, но кто именно, непонятно. Я опять смотрю на доску, на этот раз действительно внимательно.

Опа! Вот оно. В примере нет цифр 8 и 9. Стираю решение с доски.

Теперь отмотаем время на пару уроков назад. Сдвоенный урок информатики, на котором мы два часа решали задачи в восьмеричной системе счисления. Много задач. Зачем, спросите? У нас в школе стояли БК-0010, а у них машинные коды были восьмеричными.

А потом был тот самый урок математики, и все на полном автопилоте посчитали пример в восьмеричной системе. И ведь правильно посчитали!