Ввожу в Яндекс в надежде узнать о дереве побольше. Первая же ссылка: «1С: Бухгалтерия», «1С: Предприятие», «1С: Торговля и склад»… А вы говорите, секретный язык для пытки иностранных программистов!
#9167: С самыми серьёзными намерениями
13:00 12.05.2012, IT happens
Свершилось. Накинули на вашего покорного слугу хомут. Ничего не попишешь, пришлось идти в загс.
Мы с ненаглядной в приподнятом настроении (ради такого дела обоих с работы отпустили) пришли подавать заявление. Но вот незадача: все работницы почему-то разводят руками, уповая на то, что ничего не работает и некий специалист придёт только к концу рабочего дня для починки. Сразу мысли в голове о том, что завтра снова придётся.
— А что, собственно, случилось?
— Да вот, мы коробочку купили, а как поставить, не знаем. Ждём программиста.
Как вы уже, наверно, догадались, «коробочкой» оказался обыкновенный свитч. Прошлый у них вырубало из-за проблем с БП.
Пять минут уговоров на то, что я знаю, как это исправить. Минута на втыкание патч-кордов и питания. Ещё три на заполнение заявлений — вуаля, я обручён.
Зато теперь никто не усомнится, что намерения у меня самые серьёзные.
#9168: Кто украл мои годы?
13:00 12.05.2012, IT happens
Дизайнерствую-фотошоплю в свободное от основной работы время. Учителя у меня были действительно шарящие, да и у самого руки не из жопы растут.
Звонит знакомая знакомых и просит отредактировать немного фоток, где она с мужем на какой-то выставке. Договорились, слила она мне их на мыло. Работа закипела: малозаметная ретушь с сохранением текстуры кожи, цветокоррекция, кадрирование, удаление ненужных деталей… Дал жене на оценку (незамыленный взгляд и всё такое) — отлично, можно отправлять.
Отправил. Гордый собой, жду реакции. Перезванивает. Достаточно сухо благодарит, внезапно начинает рыдать и бросает трубку.
Жена позже выяснила, что эта знакомая, увидев отретушированные фото, поняла, что она может выглядеть значительно лучше, а сейчас — старуха старухой.
#9169: Очистка от нечистых
15:00 12.05.2012, IT happens
Из обсуждения новой машины от Google без водителя:
— Плохо себе представляю, что компьютер может заменить человека за рулём. Например, на дорогу вдруг выскочила собака. Затормозить не успеваем. Сбивать собаку или резко съехать с дороги, но с повреждениями для людей в автомобиле? А если выскочила не собака, а ребёнок? Опытный водитель собьёт собаку, но не собьёт ребенка. Как компьютер в данной ситуации примет правильное решение, я не представляю.
— 64 лазера распиливают собаку за 12 миллисекунд. По широкополосному каналу в службу быта отправляется сообщение с запросом на клининг с GPS координатами и фотографией собаки в FullHD.
— Такой вариант я не учёл. А с ребёнком что?
— Если у ребёнка есть аккаунт в Google, то он распознаётся как пользователь Google и объезжается. Если нет — см. про клининговую компанию.
#9170: Падай ниц перед моим кодом!
15:00 12.05.2012, IT happens
Правлю чужой PHP-код. Самописный сайтовый движок, который умудрялся при 15000 посещений в сутки класть выделенный сервер. Причём процессор был загружен на 1–2%, а база трещала под неимоверной нагрузкой.
Выяснилось следующее. На странице в двух местах выводилось меню: полное и с текущего места. Мало того, что построение содержимого не было объединено в один процесс, то бишь каждый раз данные брались заново, так ещё и для простого составления списка статей, когда нужны заголовки и ещё пара мелочей, не мудрствуя лукаво, человек написал: «SELECT * FROM %tablename%». Всего в базе порядка 150 статей с полным и сокращённым текстом. Редкая статья меньше 4000 знаков. Ну, вы поняли…
Кривые комменты — и того лучше. Вместо простого запроса «SELECT COUNT(id) FROM %tableName%» человек получает массив всех записей из базы. Затем примерно в 30 строках описан сложнейший алгоритм подсчёта количества записей.
Но убило даже не это. После всех этих манипуляций красуется строчка:
$count_rows = $count_rows;