• Как мы перешли со Scala на Go
    +8
    Статья произвела, так скажем, гнетущее впечатление.
    Во-первых, про spaceship operator. В go можно использовать уникод в именах переменных: play.golang.org/p/CcskBn6Y8Y. Так что запутать код можно на отличненько, если захотеть.
    Во-вторых, и видимо это главный движущий фактор всех этих переходов, на Go очень хорошо получается «тяп ляп и в продакшен», а за счёт отсутствующей системы типов каждый раз приходится переписывать базовые вещи типа коллекций, что, видимо, повышает, как это, instant gratification?
    Не поймите меня превратно — я сам пишу на go довольно много, но то, что код на Go легче поддерживать, чем на Scala — опасное заблуждение :(

    ЗЫ. Есть некоторые паттерны, которые превращают вашу жизнь в ад. Например:
    os.Stdin, os.Stdout = os.Stdout, os.Stdin // lol
    ну или чуть менее адово, но тоже весело:
    io.EOF, io.ErrClosedPipe = io.ErrClosedPipe, io.EOF

    Я уже не говорю о — нет, даже не о if err != nil, а о func (s *Foo) Bar() { if s == nil {… // прощайте запястья
  • 11 причин никогда не браться за проведение международного чемпионата по программированию
    0
    Ух ты, про меня пост. Ну и про того парня тоже.
    Про проблемы хочу сказать нижеследующее.
    11 пунктов можно не писать, достаточно видимо сформулировать вот что.
    В любом деле, которое делает более одного человека, есть кто-то кому больше всех надо. При проведении подобного рода мероприятий обычно присутствует существенны дисбаланс, когда малому числу людей надо всё, а большинству совсем ничего не надо и они просто отбывают повинность.
    А раз так, то они будут а) относиться ко всему совершенно несерьёзно (ну то есть гораздо менее серьёзно чем к тому чтобы успеть например на поезд в сочи вовремя; б) всячески минимизировать своё участие.

    Такие дела, привет.
  • Олимпиада по Linux-администрированию 27-го ноября
    0
    dmn42, зажжём?
  • Asterisk от простого — к сложному
    0
    Целью моего коммента является желание показать, что код астериска монструозен, уродлив и неэффективен, поэтому железа надо использовать несколько больше чем вы могли бы ожидать. А использовать его стоит в случае, когда надо PSTN затерминировать.
    Если нужно обслуживать сип клиентов, то подключить его потом к опенсипсу.
    Во всех остальных случаях нужно использовать yate.
  • Сравнительное тестирование скорости работы software RAID'ов. Linux vs FreeBSD(mdadm vs gmirror)
    0
    Пост ни о чём. Даже версию ядра не указали. А это важно. -1
  • Прямая работа с SMS-сервисом МТС: история одной интеграции
    +2
    Я, когда работал в МТС, написал протокол SMPP под twisted (очевидно, на питоне).
    Сам по себе протокол простой как две копейки, а вот через каннел с ним работать всё равно что через жопу (каннел я, кстати, тоже патчил, только вапбокс — чтобы он под нагрузкой не ложился, и работал нормально с телефонами многими).

    Проблема основная была в том, что хотя сам протокол простой как две копейки, смпп-приблуда от смс-центра компании цбосс работала отвратительно. Она по своему желанию переставляла поля в UDH и делала много ещё всякой разной всячины, а когда цбоссовцам было указано на баг они это обозвали фичей и добавили флажок «сохранять порядок полей в UDH» (а чтобы это отловить, мне пришлось втыкать анализатор между смс центром и коммутатором и долго пыриться в дамп ss7).

    Такие дела.
    Привет.

    P.S. На говнокод можно посмотреть здесь: gitorious.org/ota-configurator/mainline/trees/master/src
  • Прямая работа с SMS-сервисом МТС: история одной интеграции
    0
    ужасно (это я про j2ee+oracle).