Выбрать главу

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

#12160: Чекин без фотки не считается

12:24 02.05.2014, IT happens

День добрый уже опять из Швейцарии!

Вернулся из отпуска, который провёл в столице Руси. Ну, как водится у сисадминов (и тем более в аутсорсинговых компаниях), на меня налетели все, кто был недоволен каким-либо из моих действий до отпуска и бездействием во время отпуска.

Представьте картину: я посреди шести юзверей, которые все почти одновременно что-то высказывают. Кто-то позади откашливается. Воцаряется тишина, все оборачиваются. Шеф (человек он добрый и справедливый, несмотря на 190 см роста, мускулатуру борца и 25 лет стажа крав-мага) так строго смотрит на меня и загробным голосом произносит:

— Ты меня разочаровал…

Перекрашивая нижнее бельё в более тёмный цвет, я жду продолжения.

— Я тебя не увидел ни на одной фотографии из Киева!

#12161: Раз-раз, как слышно?

12:12 03.05.2014, IT happens

Требовалось однажды создать двумерный логический массив 8×8. Памяти было очень мало, экономить приходилось на всём. А bool в C (да и почти везде) занимает непростительно много — целый байт. На весь массив, таким образом, ушла бы восьмая килобайта, а их было всего два. При этом от нас требовалась переносимость — просто взять несколько int для этой цели не удалось бы, так как мы не знали точного количества байтов в int на каждой конкретной платформе.

Задача решилась просто: мы взяли символьный массив из восьми элементов (char занимает один байт ровно на всех платформах) и использовали его как двумерный булеановский.

Это присказка, а не сказка. В одном ветвлении программы, которое становилось возможным с трёх дней постоянной работы (времени на тестирование было недостаточно, чтобы заметить это) закралось две ошибки. Первая — банальное падение программы. Вторая — забытое преобразование из char в int элементов массива при записи в лог. Когда программа упала, местный айтишник посмотрел в лог… Ну надо же было массиву принять значение {1, 1, x, y, u, -, \}!

#12162: Серверная, она же пыточная

16:00 03.05.2014, IT happens

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

Избитый мужчина сообщил, что недавно освободился из мест заключения и ехал домой, далее в показаниях путался. Юноша оказался более последователен. Он рассказал, что трудится дежурным инженером в хостинге M, расположенном в двухэтажном здании в жилой зоне.

Юноша, находясь на дежурстве, примерно в 23:40 получил сообщение системы мониторинга о падении линка одного из серверов в дата-центре, спустился в подвал (где физически расположены серверы) установить причину произошедшего и обнаружил в подвале постороннего, копающегося в шкафу с запчастями.

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

На данный момент обстоятельства произошедшего выясняются.

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

#12163: Слишком мало промилле для завершения диагностики

16:12 03.05.2014, IT happens

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