Voins' Journal
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in Voins' LiveJournal:

    [ << Previous 20 ]
    Monday, June 27th, 2011
    4:37 pm
    +1
    Что-то в posterous сломалось. Не работает экспорт.
    Ну значит руками напишу :)
    Wednesday, June 22nd, 2011
    12:35 pm
    Unit testing

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

    Catch. Забавный фреймворк. В принципе, довольно традиционен. Регистрация тестов автоматическая, спрятана в макросы. По внешнему виду тесты мало отличаются от того, что можно увидеть почти везде.. Однако, одна отличительная особенность выделяет этот фреймворк из всех остальных. Вместо традиционных ASSERT, ASSERT_EQUAL, ASSERT_LESS и т.д. используется один макрос REQUIRE (или CHECK), который сам умеет разбираться что за выражение ему подсунули и как его красиво вывести, при обнаружении проблем.

    TUT. пожалуй самый необычный фреймворк из всего, что мне когда-либо попадалось. Построен вообще без применения макросов. Работает template-magic, которая и заставляет тесты автоматически регистрироваться, да и вообще всё это хозяйство шевелиться. Непривычны здесь два момента: у тестов нет названий, только номера (хотя присоединить к тесту строчку для показа в выводе вполне можно), а при обнаружении проблемы точный номер строчки узнать не получится (из-за принципиального неиспользования макросов этой информации у фреймворка просто нет). Ни первое ни второе не является для меня проблемой. Тесты должны быть короткими, а осмысленные названия тестам придумывать - та ещё работа. :) В общем, именно на этом фреймворке я пока и остановился. Буду мучить и искать что же мне в нём не нравится.

    Что обидно, так это то, что в одной из отсмотренных библиотек не реализована прекраснейшая фишка из cgreen. Там каждый тест запускается в своём процессе (после fork), что даёт гарантированно изолированную среду для каждого теста, а также  возможность ловить совсем грубые ошибки, приводящие к SIGSEGV и подобному. нигде, кроме cgreen не видел.

    Thursday, December 2nd, 2010
    12:14 am
    Untitled
    «Люди общаются, для того чтобы учить друг друга. Проблема в том, что мы часто не знаем, какой урок преподаем. Обижаться или злиться на кого-нибудь — это все равно что обижаться на свой велосипед за то, что упал с него раз или два, пытаясь научиться чему-то новому»

    © Роберт Тору Кийосаки

     

    Wednesday, November 24th, 2010
    12:37 pm
    Маленький и скромный хак.

    Такой маленький хак, а так замечательно облегчает жизнь и ускоряет поиск по строке.

    string::const_iterator
    find(string::const_iterator begin, string::const_iterator end, char c) {
        const char *mem = begin.operator->();
        const char *p = string::traits_type::find(mem, end - begin, c);
        if(p) return begin + (p - mem);
        return end;
    }
    

    Самое забавное, что find(str.begin(), str.end(), c) после такого работает даже немного быстрее, чем str.find(c)

    upd: А жж, оказывается, на даёт вставить код с gist.github.com. Ну что ж, ещё один повод отказаться от этой платформы.
    Sunday, October 31st, 2010
    2:48 am
    Гениальный маркетинговый ход

    Идём сегодня по Меге и вдруг видим шедевр. Комментарии тут вряд ли нужны. :)

    Sunday, October 24th, 2010
    3:46 am
    Опять чемпионы

    Второй взрослый CAC, чемпион федерации ОАНКОО, ЛК.

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

    Friday, October 22nd, 2010
    4:37 am
    Untitled

    Обновив coreutils до версии 8.6, обнаружил случайно, что tramp больше не хочет открывать файлы через sudo. То есть это я потом уже понял, что причиной такого поведения стало обновление coreutils, а сначала это было довольно неприятно. Пришлось отвлечься от того, чем занимался, и посвятить вечер разбирательствам с поломкой. Как выяснилось в процессе, кто-то зачем-то поменял формат вывода в утилите stat. Наблюдается это вот так, например:

    <new>$ stat . -c "%Y"
    1287747411.000000000

    Тогда как раньше было:

    <old>$ stat . -c "%Y"
    1287747411

    Tramp пользуется stat'ом для получения атрибутов файлов. Если находит. Можно было, конечно, обмануть его, и заставить думать что stat, который он нашёл, несовместим  с тем, что он привык считать stat'ом, но это не наш путь. Наш путь привёл к появлению маленького автомата, определяющего в каком формате нам были выданы циферки, и выдающего правильные и ожидаемые циферки на выходе. Делать полноценный патч мне было лениво. Так что есть только это.

    Wednesday, October 20th, 2010
    10:48 am
    Untitled

    Винда полна сюрпризов.

    Под смену тарифа на стриме поменяли заодно и модем-маршрутизатор. Теперь у нас "модный" ZXV10 W300. И всё бы ничего, но не заладилось у одного из ноутов с ним по WiFi общаться. DHCP отрабатывает, адрес получает, а дальше всё ни интернета, ни даже пингов до шлюза. Попробовал я всякие разные приседания типа сноса ненужного из свойств сетевой карты, сноса драйвера карты и повторной его установки и ещё чего-то пробовал. Ничего не помогает. Не хотит интернет получать.

    Сегодня я удивился ещё больше. В процессе экспериментво попробовал я попинговать другие устройства в нашей домашней сетке. Выяснилось удивительное: пингуется всё, кроме собственно шлюза (настройка для AdHoc WiFi отключена, первым делом проверил). Ещё удивительней мне стало, когда выяснилось, что в такой режим оно вошло при включении WiFi-принтера. Выключение принтера не вернула странную девайсину в исходное положение, что мне тоже не понравилось. Полная перезагрузка, однако, ввела эту в штуку в прямо противоположное состояние: пингует шлюз, интернет есть, не пингует никого из соседей.

    В общем, я в глубокой задумчивости. Если никаких умных мыслей в ближайшее время не появится, переустановлю к чёртовой матери там винду. Уж это всегда помогало.

    Saturday, September 25th, 2010
    11:28 pm
    На раздачу
    Есть две штуковины на отдачу за просто так:

    1. МФУ HP PSC 1410. Состояние вполне себе ничего, он даже сканирует. Только, вот, не печатает ничего. Ругается на то, что закончились чернила. Весьма вероятно, если ему заменить картриджи, то он снова будет печатать. Нам в него вкладываться совсем не интересно, поскольку уже есть новая штука, которая нас болеее чем устраивает. Если кому-то охота попробовать его оживить - вперёд. Если желающих не найдётся, он окончит свои дни весьма бесславно на ближайшей помойке.

    2. Искусственная ёлка. Старая, но вполне себе пушистая. Сейчас существует в виде отдельных веточек. Мы когда-то её собирали. Т.е. комплект вполне себе полный. Уже несколько лет мы ставим только живие ёлки, так что эта просто лежит и занимает место. Если кому-то надо - отмечаемся. В противном случае, судьба ёлки будет столько незавидна, как и у МФУ.
    Sunday, July 4th, 2010
    7:27 pm
    Неожиданно CW, CAC, ЛК, КЧФ. Кажется выставочная эпопея имеет все шансы продолжиться. :)
    Sunday, June 27th, 2010
    8:17 am
    35. :)
    Wednesday, June 2nd, 2010
    9:47 pm
    "Когда я был маленький, у меня тоже была бабушка..."
    Где-то году в 1989-90 у меня, как и у живо обсуждаемого сейчас в сети Дениса Попова, очень сильно начал задираться нос. В общем, к тому были некоторые основания, безусловно: настоящая работа в НИИ над вполне настоящим проектом (пусть и недолго), Pascal, Fortran, два ассемблера и несколько диалектов BASIC в арсенале. Вполне неплохо для пятнадцатилетнего пацана, вроде как. Ну, в общем меня аккуратно тогда ткнули этим самым задранным носом в совсем настоящую работу. Причём так аккуратненько это было сделано, что я даже и сам не понял, как снова взялся за книжки. Говорят не самый плохой специалист в итоге получился. :)

    А мальчика немного жалко. Шансов на нормальную IT-жизнь у него почти уже не осталось.
    Thursday, May 27th, 2010
    3:06 pm
    Какие всё-таки чудеса способна сотворить фраза "я звоню в управу" с нашими службами, осуществляющими капитальный ремонт дома. Два месяца не могла доехать окна поставить - а после фразы сразу нашлась бригада, которая доехала через день. Правда забыли взять ручки от окон, и створка одна не закрывается, и поцарапано всё (два месяца в подъезде простояло). В общем, придётся, похоже, прибегать к страшному колдунству ещё разок. Только с той разницей, что я теперь точно знаю куда надо звонить и что с ними за мою жалобу могут сделать.
    Sunday, May 23rd, 2010
    12:56 am
    Из всего, услышанного мной вживую, Diablo Swing Orchestra - однозначно лучшие. Даже In Extremo и Subway To Sally им несколько уступают. Если у вас вдруг появляется возможность сходить на их концерт - обязательно идите, впечатлитесь.

    Да, отдельно хочется отметить концертное агенство Delta Mekong. Кажется впервые я услышал (со сцены) от организаторов извинения за задержку начала концерта со вполне внятным объяснением. Это дорогого стоит. Спасибо им большое за сегодняшний концерт.
    Friday, May 21st, 2010
    1:07 pm
    Monday, March 29th, 2010
    12:25 pm
    На всякий случай: мы оба в порядке. Хоть и работаем в районе Парка Культуры.
    Saturday, March 6th, 2010
    10:59 am
    Вчера пронаблюдали ситроен в ромашку, зелёненький такой. Колеса были не квадратными, а самыми обычными. Эх...
    Thursday, March 4th, 2010
    10:33 pm
    Сегодня захотелось от git странного: что-то типа интерактивного git blame. Т.е. не просто показать мне кто что в файлике поменял, а ещё и по интересному куску кода показать как он менялся и кто менял этот кусок раньше. Как выяснилось, бывают ситуации, когда бага прячется за несколькими слоями изменений, и понять что имел ввиду автор исходной баги можно только сняв все эти слои.

    Руками-то я результат получил, а вот вечером задумался, что хочу к такому делу интерфейсик. Может уже есть готовый?
    Thursday, February 25th, 2010
    11:32 am
    А вчера в "Гарцующем Дредноуте" внезапно случился почти вечер памяти "Археологии". Душевно посидели.
    Tuesday, February 16th, 2010
    11:26 am
    Нэссям для однойавантюрки нужна помощь зала. Точнее только той части зала, которая сносно владеет каким-нибудь графическим инструментом типа gimp или photoshop. Т.е. сам инструмент не принципиален. :)

    Нужно ей для этой авантюры буковку одну нарисовать. За основу берётся шрифт Moonstone Stars. В нём уже есть нужная нам буква N, но нарисована она так, что Нэссям не очень нравится. Т.е. хочется N именно в более или менее классическом виде, но в стиле этого шрифта. Есть подозрение, чтотакое вполне возможно осуществить путём преобразований буквы M из того же самого шрифта. Нэсся грозится отплатить благодетелю шоколадкой или ещё какой плюшкой. :)

    Да, актульаность - до завтрашнего утра. Завтра днём уже будет поздно. :)
[ << Previous 20 ]
My Website   About LiveJournal.com