Месяц: Август 2013

  • IMAP на boost::asio

    от автора

    Изначально в нашем IMAP-сервере использовался epoll-реактор собственной разработки. Как всегда, в процессе эксплуатации и роста нагрузки потихоньку набегают замечания, в результате чего со временем начинает накапливаться технический долг и замедляться разработка. В нашем случае были также изначальные архитектурные замечания. Поток, обслуживающий реактор, никак не контролировался и при поступлении контрольных сигналов мог произойти race-condition. С другой…

  • Они прилетели!

    от автора

    Итак, первый серьёзный (по нашим меркам) тираж железок успешно прошёл приёмку нами на заводе и официальную растаможку в России. Процент брака основных плат зашкалил за нуль и составил 0.5%. Очень неплохо, мы рассчитывали в худшем на 5-6 процентов брака. К слову, есть мысль отдать одну бракованую железку BarsMonster на вскрытие проца (если он заинтересуется, само…

  • Различные методы загрузки ассоциаций в Ruby on Rails

    от автора

    Rails предоставляют нам 4 различных способа загрузки ассоциаций: preload, eager_load, includes и joins. Рассмотрим каждый из них: Preload Этот метод загружает ассоциации в отдельном запросе: User.preload(:posts).to_a # => SELECT "users".* FROM "users" SELECT "posts".* FROM "posts" WHERE "posts"."user_id" IN (1) Т.к. preload всегда создает два отдельных запроса, то мы не можем использовать таблицу posts в…

  • Самые смешные комментарии в коде проектов Open Source

    от автора

    На StackOverflow был отличный пост точно на эту тему, но какой-то сверхусердный модератор, который должен остаться неназванным, удалил его (судя по всему, сейчас восстановлено — прим. пер.). К счастью, у меня сохранилась возможность просмотреть все удаленные комментарии. Вот некоторые из моих любимых. // // Дорогой мейнтейнер: // // Когда ты закончишь «оптимизировать» эту подпрограмму //…

  • LINQ против LSP

    от автора

    В качестве реакции на мой предыдущий пост о защитном программировании, один из моих читателей прислал мне такой вопрос: [Один] очень известный сценарий защитного программирования встречается, когда входным параметром является IEnumerablepublic class Publisher { public Publisher(IEnumerable<Subscriber> subscribers) { // defensive copy -> good or bad? this.subscribers = subscribers.ToArray(); } // … }

  • Установка и использование Archipel для управления виртуальными машинами

    от автора

    Хочу поделиться удобным способом создания и управления виртуальными машинами в графическом режиме для OS Linux. Archipel – это маштабируемое решение для управления виртуальными машинами и гипервизорами с помощью графического интерфейса. Archipel позволяет удобно управлять как несколькими виртуальными машинами на одном сервере, так и сотнями виртуалок, размещенных на десятках серверов в разных датацетрах. Archipel использует протокол…

  • Регистрация в Windows Phone Store теперь стоит $19

    от автора

    Ещё только вчера, я приглашал скорее зарегистрироваться за $19 тем, кто хочет начать публиковать свои приложения в Windows Phone Store, но цена регистрации в $99 ему кажется слишком большой. И сегодня Todd Brix порадовал нас хорошей новостью И если перейти по ссылке dev.windowsphone.com/en-us/join, можно увидеть, что годовая подписка теперь стоит $19 бессрочно: Традиционно в завершение…

  • Собеседование на должность PHP Backend Developer в Германии

    от автора

    Коротко обо мне: программирую c 2003 года. По образованию IT specialist и Application Developer. В последние годы основным направлением деятельности была разработка интернет-магазинов аля Hugo Boss и Tommy Hilfiger. Проснувшись утром в один прекрасный день, пришло осознание, что пора в этой жизни что-то менять. Хочу поделиться своим опытом прохождения собеседований на должность PHP Backend Developer…

  • Подготовка среды и компиляция Shareaza сегодня

    от автора

    Shareaza — свободный файлообменный клиент и менеджер закачек для Windows с поддержкой протоколов Gnutella, Gnutella2, eDonkey2000, BitTorrent, DC++, FTP и HTTP. Умеет работать с magnet-, ED2K-, piolet- и Gnutella-ссылками, а также со стандартными HTTP- и FTP-ссылками. Переведён на 27 языков. © Wikipedia Итак я решил делать случайно-последовательную загрузку в клиенте Shareaza. Посмотрел код на сайте.…

  • GetThemAll или бери от интернета лучшее!

    от автора

    Сегодня я хотел бы рассказать о нашем приложении GetThemAll для Windows Phone. Да, я знаю, что приложени не новое, но в рунете о нем известно немного, тогда как на западе оно пользуется невероятной немалой популярностью.