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

Морали в этой истории две.

Первая: не выпендривайтесь с применением того, что вы толком не понимаете. Вместо ускорения вы можете получить торможение, а задачу при этом так и не решите.

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

#12140: Сейчас станет горячо

12:00 26.04.2014, IT happens

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

Материнка, уже лишённая покровов, лежит на столе. Плавно вставляю в слот двухгигабайтную палку DDR3. Аккуратно снимаю заглушку со слота процессора. Достаю из упаковки новенький Core i3, нежно ставлю его на место и уверенно защёлкиваю фиксатор: сейчас начнётся! Тюбик без опознавательных знаков тонким слоем размазывает по процессору поблёскивающую термопасту, излишки мажу на радиатор кулера. Аккуратно, но уверенно вставляю защёлки кулера в отверстия платы. Кулер закреплён, материнка готова. Я бережно помещаю её в корпус, подрагивающими от волнения руками закручиваю винты. Подключение питания и разъёмов — особое удовольствие. Их много, входят с небольшим усилием, но сидят прекрасно!

Винчестер нехотя позволил себя вкрутить и подключить. Сейчас станет горячо! Подключена периферия и загрузочная флешка. У кнопки питания фантастический звук щелчка.

Тихонько зашуршали кулеры… На мониторе пробежала серая полоска, вспыхнул «витраж», синенький диалог на синем фоне — о да! А пока дистриб распаковывается, можно и покурить… Как же приятно собирать новую машинку, пускай и офисную минималку!

Люди, я нормальный? Это лечится? Или стоит всё же нормальный прон сквозь отвращение смотреть?

#12141: Последняя верста глубинки

12:12 26.04.2014, IT happens

Кого-то задолбали провайдеры, навязывающие свои услуги, а я этим людям даже немного завидую.

Дело в том, что мой дом находится в недавно построенном коттеджном посёлке. Конечно, тут работает и 3G, и 4G, и мобильники — но всё-таки это не сравнить с быстрым интернетом по оптике или витой паре.

Уважаемые провайдеры! Может быть, вы перестанете задалбывать жителей многоэтажек, тратя миллионы на колл-центры, а вложитесь немного в прокладку «последней мили» в подобные посёлки, которых тут вокруг великое множество? До ближайшего города — прямая видимость и какие-то коммуникации. Наверняка можно либо договориться с энергетиками и кинуть оптику, либо повесить приличные радиомодемы.

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

#12142: Лучший антивирус — мухобойка

16:00 26.04.2014, IT happens

Здесь очень много историй про хороших и плохих бухгалтеров, монтажников, программистов, админов, юзеров и начальников. А мне достался главный инженер… Если честно, после каждой планёрки хочется взять тетрадку и записать его перлы и безумные идеи. И этот случай явно займёт достойное место.

Надеюсь, все помнят прикол с мухами на Яндексе первого апреля этого года? С утра пораньше раздаётся звонок с приказом моментально «починить компьютер от вирусов». Бегу через три этажа, вижу на экране рой мух, невозмутимо выбираю мухобойку и ставлю рекорд: десять крылатых за шесть секунд. Сканирование завершено, все угрозы размазаны!

#12143: Иногда они всё-таки лажают

12:00 27.04.2014, IT happens

Я предпочитаю начинать решение проблем в программах с вопроса «а где я ошибся?», так как мой опыт показывает, что в большинстве случаев ошибка именно моя. Но иногда…

Случилось мне заниматься разработкой программного комплекса, один из компонентов которого вертелся в MySQL. При этом всю логику взаимодействия с БД я по возможности перенёс в хранимые процедуры внутри БД. Возникла необходимость оптимизации одной из хранимых процедур, которая при попытке всунуть в БД жалкие 10К строк зависала на два часа. Нужно было найти узкое место этой процедуры. Поиск «бутылочного горлышка» довольно прост: засекаем, сколько миллисекунд уходит на каждый шаг, смотрим, где проблема…