Читаем Bash.org.ru IT Happens Истории ## 12101 – 12200 полностью

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

<p>#12132: Он живой и светится</p>

12:12 23.04.2014, IT happens

Приходит со сметного сотрудница. «Помоги, — говорит, — на площадку войти не могу». Ну, дело житейское. На всякий случай проверил правила на шлюзе — вдруг это я чего напортил? Вот площадка, вот ключ вставлен, жмём «Вход по ЭЦП» — ЭЦП показывает, но наличия не видит. На других то же самое.

Начал копаться в настройках — вроде всё включено. Беру тайм-аут на пять минут, иду по коридору, думаю. Мысль! Вернулся. Вытащил ключ, посмотрел более внимательно — так и есть, разъём сломан. Да так, что через прозрачный корпус видны трещины на плате. Вернул ключ владелице, объяснил ситуацию: пока ключ новый не поставите, на площадку не войдёте. Ключ пришлось заказывать новый. А всё почему? Потому что ключ, когда работал, никак себя не проявлял — нет индикатора, да и зачем он на ЭЦП, верно ведь?

Иду обратно в кабинет и думаю, что в XXI веке на ключах (да и на некоторых флешках) всего лишь наличие простого копеечного светодиода сэкономило бы много времени на диагностику проблемы.

Производитель! Экономя на таких вот мелочах, ты реально достаёшь.

<p>#12133: С оглядкой на хвост</p>

12:24 23.04.2014, IT happens

Вздумалось кому-то (не мне) проверять, что матрица между вычислениями не поменялась. Проверять решил просто: считал определитель, сохранял значение и в нужный для проверки момент вычислял определитель опять. Если определитель не изменился, то можно спать спокойно.

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

В результате отладки дохожу до такого кода:

double a = det(M);

assert(a == det(M));

Ассерт срабатывает. Ладно, добавляю строчку:

assert(det(M) == det(M));

Ассерт не срабатывает. Функция всегда возвращает одно и то же значение. Добавляю:

double diff = a - det(M);

Результат равен нулю. Причём строго нулю, посмотрел побайтово. Та-ак… Похоже, что имеем вещественное число, в общем случае не равное самому себе. Уже интересно…

double a = det(M);

double b = det(M);

assert(a == b);

Ассерт не срабатывает. Пора в дурку…

Ларчик открывался просто. В сопроцессоре все числа обрабатываются в 10-байтовом формате, а double, как известно, 8 байт. Разработчики самого безглючного компилятора возвращали значение в голове стека сопроцессора и забыли нормализовать его до 8 байт. Нормализация происходила только в случае сохранения значения в переменной. Хвост в 2 байта добавлял несколько знаков к мантиссе и вызывал все эти спецэффекты.

<p>#12134: Я медленно распутываю вашу витую пару</p>

12:00 24.04.2014, IT happens

Зачастили в последнее время обзвонщики из компаний-провайдеров, предлагающие перейти к ним. Откуда узнали мой номер — неизвестно, но по один-два звонка за день получал с вопросами на тему: «А почему вы не подключились ещё к нам? У нас же такие тарифы хорошие…»

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

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

День четвёртый. 11 утра. У меня было хорошее настроение, до работы оставалось ещё несколько часов, как вдруг я услышал звонок мобильного. На экране отчётливо высвечивалось: «Провайдер такой-то. Не брать!». Взял трубку:

— Алло.

— Алло, здравствуйте, — услышал я приятный девичий голос. — Провайдер такой-то. Уделите мне, пожалуйста, пару минут.

— Слушаю.

— Мы проводим опрос. Вы довольны своим интернетом?

Зная чуть ли не наизусть весь дальнейший диалог, я, будучи в игривом настроении, решил пустить его в другое русло:

— Простите, — ответил я. — Разговоры про интернет — это скучно. Давайте лучше поговорим о вас. Как вас зовут?

Перейти на страницу:

Все книги серии Bash.org.ru IT Happens

Похожие книги