3 июн. 2013 г.

Грозозащита

Плата из UPSа для обеспечения грозозащиты ЛВС.
No comments.

30 апр. 2013 г.

Envelope

Вспомнил ещё про одну хорошую, годную короткометражку. Фильм "Конверт" с Кевином Спейси в главной роли. В принципе, наличие Спейси вытягивает любой фильм, а некоторые (American Beauty, K-PAX) превращает в шедевры. Здесь же Кевин снялся уже изрядно постаревшим, но сохранившим свою офигенную мимику.
Фильм якобы основан на реальных событиях и изображает Soviet Russia, но это всё херня собачья. На самом деле, это просто очень интересная короткометражка, сюжет которой крутится вокруг странного хобби главного героя - рассылки конвертов несуществующим адресатам по всему миру.
Рашка глазами американцев такая Рашка. Ладно ещё сомнительного вида самолёт на не менее сомнительном аэродроме, лежащем средь обамовских пустынь. Больше лулзов вызывает тот факт, что главный герой проверяет почтовый ящик через неделю после отправки письма в Новую Зеландию. Да-а, Советская молоткасто-серпастая почта - это тебе не Почта Роисси.

Sight


Наткнулся на очень сильную короткометражку, а именно фильм Sight от Eran May-raz и Daniel Lazo, снятый в качестве выпускной работы из академии искусств "Бецалель" (Израиль).
Жанр короткометражки - научная фантастика. Фильм рассказывает нам о не столь отдалённом будущем, создаваемом прямо сейчас айфонами, гуглоглассами и фейсбуками.
Очень рекомендую к просмотру. Последняя сцена так вообще прекрасна.
Смотреть на Vimeo

24 апр. 2013 г.

Amlogic MX3

Суть поста одной фоткой: 
Это такой китайский инновационный метод припаивания разъёмов к плате с помощью паяльной пасты и воззваний к Будде

Получил тут из Китая долгожданный девайс Amlogic MX3 - это такой свисток с двумя ядрами Cortex A9 на борту, Android 4.0.4, могущий в Full HD и всё такое.
Я приобретал это устройство для замены стационарника в качестве базы для серфинга, постинга, редактирования/заливания фоточек и изредка для хождения по ssh на определённые сервачки.
Конкретно этот девайс был выбран из-за того, что несёт на борту VGA-разъём (точнее, micro USB с переходником на VGA),  в то время как конкуренты снабжены лишь HDMI выходом.
Внешний вид устройства (оно очень маленькое - меньше старого телефона от Nokia + совершенно невесомое)

Выход для звука, какой-то хрени и питания (порт для подключения штатной шайтан-коробки)

HDMI разъём припаян на славу, а VGA держится на честном слове

Комплект поставки. Виден сам девайс, шайтан-коробка с 3мя USB-портами и RJ45, переходник HDMI. Адаптера питания в комплекте нет.

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

...и на чипе видеокарты.

На мой вопрос, брак ли это сборки, продавец ответил предельно честно: "У нас вся сборка такая, если хочешь, попробуй попросить кого-нибудь пропаять его у себя там в России.".

В целом устройство можно описать коротко: Китай.

1 апр. 2013 г.

День почтальона

Т.к. сегодня наша славная Потча Роисси отмечает профессиональный праздник, я решил описать ещё одно почтовое отправление, вызвавшее во мне ПАТРИОТИЗМ.
Итак, это было заказное письмо, отправленное из Москвы в Москву (лень было ехать на другой конец города).
Какие почтой устанавливаются сроки доставки я не знаю, ибо на их сайте можно заблудиться и помереть с голоду. Но мне письмо шло 2 недели. При этом подлые выблядки (лучей поноса вам, уёбки) из отделения 422 пробили в трекинг неудачную попытку вручения ещё до доставки извещения. К слову, извещение я получил 27 марта - через 2 дня после получения самого письма.
ОперацияДатаМесто проведения операцииАтрибут операцииВес (кг.)Объявл. ценность (руб.)Налож. платёж (руб.)Адресовано
ИндексНазвание ОПСИндексАдрес
Приём12.03.2013 00:00117624Москва 624Единичный0,015--127422Москва
Обработка19.03.2013 11:00140992Московский Асц цех Флэтов и РпоСортировка---
Обработка20.03.2013 01:20140980Московский Асц цех ЛогистикиПокинуло сортировочный центр---
Обработка21.03.2013 00:00111948Москва МСП-3 Уч-48Покинуло сортировочный центр---
Обработка22.03.2013 09:42127422Москва 422Прибыло в место вручения---
Неудачная попытка вручения23.03.2013 07:34127422Москва 422Временное отсутствие адресата---
Вручение25.03.2013 00:00127422Москва 422Вручение адресату---
С днём дурака, дорогие выблядки Потчы Роисси.

28 мар. 2013 г.

Идёт охота на жуков, идёт охота...

Так уж получилось, что мне на работе перепало счастье поддерживать древнее чудовище, выполняющее функции проксирования запросов к СУБД.
По сути это демон, который принимает запросы в виде дампа объектов, выполняет их, сериализует ответ СУБД и шлёт клиенту.
Всё это барахло написано в виде серверного приложения, клиентской библиотеки и отдельной библиотеки, содержащей описание самих сериализуемых классов (описания таблиц, столбцов, условий выборки и типов запросов).
Проблема в том, что эта хрень течёт за неделю на 10 Гигабайт.
Я решил использовать valgrind для поиска утечек. Первый раз я удивился, когда обнаружил, что на нашем девелоперском серваке нет valgrind'а. Ну ладно, поставил. Хотя странно, вроде бы уже лет 5 разработка идёт...
Второй раз я удивился, увидев результат работы valgrind. За один запрос сервер утекает на 2-3 Мегабайта. В результатах была куча текущих методов, но все они являлись просто дефолтными конструкторами передаваемых объектов.
Смутная мысль посетила меня, чтобы подтвердиться при открытии исходников: да, виртуальными деструкторами мои предшественники свой код не баловали.
Добавляю виртуальные деструкторы (это был весьма муторный процесс в виду того, что отдельная либка представляла собой хидер в овер 1500 строк без единого шаблона с объявлением и реализацией 100500 классов и файл реализации в овер 3000 строк, который тоже был способен удивить случайного зрителя тщательно припрятанными объявлениями структур и классов), чтобы обнаружить, что утечки уменьшились лишь незначительно. Всё ещё течёт некий метод getClassName.
Я вчитался в его название и на меня снизошло классическое "Ну нахера, блиать!?".
Открыв хидер, я увидел в нём следующий кусочек няшного говнокода:

#if defined(Q_OS_UNIX)
#include
#define OMAKE_CLASSNAME_METHOD\
    virtual QString getClassName() const { int status; char * realname; \
    realname = abi::__cxa_demangle(typeid(*this).name(), 0, 0, &status); \
    return QObject::tr(realname); }
#else
#define OMAKE_CLASSNAME_METHOD\
     virtual QString getClassName() const { return QObject::tr(typeid(*this).name()).remove("const").remove("class").remove("struct").remove(" ");}
#endif 

Да, память, выделенную под realname, никто не удаляет. Но это мелочи по сравнению с той "архитектурой", которая потребовала введение этого метода.

Там же обнаружился ещё один кандидат в палату мер и говен:

#define OMAKE_NEWINTANCE_METHOD( C )\
virtual C* newInstance(){return new C();}

Вот такие авгиевы конюшни приходится разгребать.

15 мар. 2013 г.

Корпорация добра закрывает Google Reader 01.07.13

Я не знаю, как эта новость умудрилась просочиться мимо меня, но только сегодня я узнал, что гуглоуёбки с 1 июля этого года закроют Google Reader.
Ненависть моя не знает границ. Желаю им неудержимых лучей поноса на веки вечные.
Это единственный сервис гугла, который я использую каждый день.
Вот здесь можно подписать петицию против закрытия бла-бла-бла, на которую всем насрать.

Из альтернатив рассмотрел Яндекс.Ленту (богомерзкое поделие с интерфейсом в стиле всего прочего Яндекса) и Feedly (они пока что используют в качестве бэкэнда Google Reader API, но с 01.07.13 обещают своим пользователям прозрачный переход на собственную технологию).
На последнем сервисе я и решил остановиться.

P.S. Яндекс.Лента оказалась неспособной отображать фиды с blogspot.com. Межкорпоративные тёрки или просто баг?