И еще о биологическом разнообразии

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

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

О проценте ненатуралов среди программистов

А знаете, почему я еще на работе? А я сейчас матом расскажу, уберите детей и непрограммистов

Взял топор и ушел в серверную

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

Потыкались туда-сюда — бесполезно. Надо или весь шкаф разбирать (плюс день работы), либо прикладывать ум. Прикладываю. Понимаю, что нужно каким-то рычагом шкаф поднять и чуть сдвинуть с насиженного места. Никакого подходящего рычага в серверной не находится, но мы же работаем в солидном информационном агентстве! Иду к коллеге Ш., в, что характерно, архивно-аналитический отдел.

— Привет, — говорю, — а нет ли у тебя в хозяйстве, случайно, лома или фомки, на худой конец?
Коллега Ш., что характерно, совершенно не удивляется.
— Лома нет, но есть топор. Надо? — и вытаскивает из-под стола здоровенный ржавый колун.
— О! То, что надо, спасибо. Пойду заниматься системной дезинтеграцией.

И, собственно, сабдж.

День начался в семь утра с хоррошего такого DDoS.
Клали не только нас — традиционно легли оба «Эха», «Новая», «МК» и кое-кто по мелочи. Спасибо коллегам из HighLoadLab — приняли нас на фильтрацию очень оперативно и фильтруют до сих пор весьма качественно — до серверов практически ничего не долетает.

В общем, нас заметили, ага.

— А вы знаете, — говорю я, входя в отдел, — что коллега К. совершенно не разбирается в породах собак?
— А как ты это узнал?
— Я пожелал ему удачи перед поездкой на Кубу и предупредил на всякий случай, что, по рассказам очевидцев, тамошние бледные спирохеты достигают размеров среднего коккер-спаниеля.
— И?…
— И он спросил меня «а что это такое?».

По многочисленным просьбам я начал, наконец, писать длинную программную статью о том, как устроена «Фонтанка.Ру» изнутри, как она работает, чем интересны наши программные решения, с какими удивительными замечательными людьми мне приходится я имею честь работать и почему мы все не любим PHP.

Stay tuned. :)

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

— Смотри, смотри, оно живое! Ишь, поползло! Стой, да не руками хватай, а то укусит.

Как не надо делать, на этот раз нам показывают коллеги из Рамблера.

В районе полудня стал затыкаться сначала основной, а затем и резервный прокси-сервер. Расследование показало, что у единственного(!) пользователя, использующего почту от рамблера, браузер несколько десятков раз в секунду(!!) делает POST-запрос на http://mail.rambler.ru/jsonrpc. Сам же рамблер по случаю DDoS-а был зафильтрован QRATOR-ом и запросы висели до браузерного таймаута. В результате сквид утыкался в ограничение количества соединений и благополучно помирал. Как понятно, мы были, мягко говоря, не одиноки с этой проблемой.

Вот такой простой, относительно дешевый и изящный способ заставить собственных посетителей заДДоСить самих себя.

— Коллега А., напоминаю, что Вас с нетерпением ждет коллега N. Она уже продолжительное время бьет своим очаровательным копытцем и скоро придет Вас бодать.

Если вдруг у кого-то из вас, дорогие друзья, для какой-нибудь надобности есть iPhone и если при этом, по странному стечению обстоятельств, вы читаете Фонтанку.Ру, то эта новость может вас порадовать.

Критика, разумеется, приветствуется.

Представители одной из крупнейших отечественных корпораций давеча обратились к нам с просьбой.

Хотят, дескать, использовать новости «Фонтанки» на своем корпоративном интранет-сайте. Но, во-первых, не все новости, а с помощью довольно хитрой выборки, и, во-вторых, с полным текстом материала — так как для интрасети доступ на «Фонтанку» закрыт.

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

Выясняется, что этот XML им совершенно не подходит, потому что… Ни за что не догадаетесь!

Сегодня был вызван повесткой в налоговую, ответил на ряд вопросов.
В частности, в рамках тренда социально ответственного бизнеса©, объяснил интересующимся значение слова «контент» и научил инспектора писать слово «Фонтанка» через «о» (я не шучу!).

Сдуру рассказал (а потом и показал) начальству про ондроедное приложение для нашего сайтика. В результате получил в подчинение команду ондроедных программистов с наказом доделать до состояния «шоб было красиво».

Программистов тех еще не видел, но волосы на себе уже рву. Язык мой — враг мой.

Видел во сне Рагнарёк. Точнее, принимал участие в совещании, на котором начальством поднимались вопросы о срыве его сроков. У меня спрашивали, почему, несмотря на то, что Нагльфар вышел из точки назначения в запланированный срок и, кажется, даже пристал к берегу, положительной динамики не наблюдается до сих пор и проект находится в стагнации. Мне приходилось объяснять, что определенные проблемы наблюдались еще на стадии подготовки и планирования и, в частности, не были прописаны четкие сроки реализации стадий проекта — но это не наша вина, посколько в источниках стадии тоже прописаны нечетко. В свою очередь, я задавал вопросы о том, чем до сих пор занимаются подрядчики и почему Фенрир вместо поедания солнца и луны занят совершенно посторонними задачами.
Порешили на том, что стагнация, о которой шла речь, — ошибка аналитиков, и проект, несмотря на отдельные проблемы, будет реализован в положенный срок.

Вы уж извините, если что.

Сегодня поймали дивный баг.

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

Вскрытие показало: некая функция func(), возвращающая, в частности, температуру за бортом, заключена в

if (func()) {
и вот это-то и перестало работать.
}

Вы уже догадались, да?