• Почему не все так просто с MongoDB

      В последние несколько лет MongoDB приобрела огромную популярность среди разработчиков. То и дело в интернете появляются всякие статьи, как очередной молодой популярный проект выкинул на свалку истории привычные РСУБД, взял в качестве основной базы данных MongoDB, выстроил инфраструктуру вокруг неё, и как все после этого стало прекрасно. Даже появляются новые фреймворки и библиотеки, которые строят свою архитектуру целиком на Mongo (Meteor.js например).

      По долгу работы я примерно 3 года занимаюсь разработкой и поддержкой нескольких проектов, которые используют MongoDB в качестве основной БД, и в этой статье хочу рассказать, почему на мой взгляд с MongoDB далеко не все так просто, как написано в мануалах, и к чему вы должны быть готовы, если вдруг решите взять MongoDB в качестве основной БД в ваш новый модный стартап :-)

      Все что описано ниже можно воспроизвести с использованием библиотеки PyMongo для работы с MongoDB из языка программирования Python. Однако скорее всего с аналогичными ситуациями вы можете столкнуться и при использовании других библиотек для других языков программирования.
      Читать дальше →
    • Впечатления от посещения EuroPython 2014

        Одна из отличительных особенностей языка Python — это посвящённые этому языку конференции, так называемые PyConы. Не так давно мне удалось побывать на одном таком PyCon-е — EuroPython 2014. EuroPython — это одна из наиболее крупных европейских ежегодных конференций по языку Python, которая три последних года проводилась во Флоренции, а в 2014м — первый раз в Берлине. Пока свежи воспоминания решил написать небольшой отчётик — что и как было.
        Читать дальше →
        • +32
        • 11.8k
        • 2
      • Django и особенности использования транзакций в MySQL

          Наверное всем известно, что Django является одним из самых популярных фреймворков для web-разработки на python-е. И даже если в основе web-проекта лежит сторонний код, то зачастую при разработке используют отдельные части этого фреймворка — например ORM. В данной статье я хотел бы рассказать об особенностях использования Django ORM при работе с базой данных MySQL, а именно про транзакции и подводные камни, связанные с ними. Так, например, если в какой-то момент вы осознаёте, что вместо ожидаемых данных, возвращается совершенно другой результат, то возможно, данная статья поможет разобраться что к чему.
          Читать дальше →
        • Zend Framework 2.0.0 beta1 Released

            Вышла первая бета-версия Zend Framework 2.0.0. Установочные дистрибутивы и инструкции доступны по адресу: http://packages.zendframework.com.
            Как пишут на официальном сайте Zend, это первая бета из серии планируемых бета-релизов. В дальнейшем, разработчики планируют придерживаться релизов в «gmail»-стиле. А именно новые возможности и фичи будут добавляться в каждой новой-бета версии, которые будут выходить не реже чем каждые шесть недель.
            Читать дальше →
          • «Правильная» utf-8 кодировка в настройках nginx/apache

              Надеюсь, что данный пост окажется полезным многим разработчикам, т.к. судя по многочисленным тредам в интернете, проблема-то довольно частая. Суть проблемы в следующем: неправильное наименование кодировки utf-8 в настройках nginx/apache. При этом отдаваемый сервером контент воспринимается нормально во всех браузерах, кроме Internet Explorer-a.
              Читать дальше →
            • Zend_Soap_AutoDiscover и eAccelerator


                Всем привет! Хочу рассказать об одной проблеме, с которой я столкнулся совсем недавно. Надеюсь, что мой опыт, описанный в данной статье, поможет сэкономить часы и нервные клетки тем людям, кто занимается разработкой SOAP сервисов с использованием Zend Framework, и в частности класса Zend_Soap_AutoDiscover.
                Проблема заключается в том, что Zend_Soap_AutoDiscover отрабатывает некорректно вкупе с использованием известного оптимизатора кода eAccelerator. А именно, если быть точным некорректно работает метод ReflectionClass::getDocComment(). Но… обо всем по порядку.
                Читать дальше →
              • Плагин Illuminations для Firebug-а

                  Хочу поделиться одной интересной находкой, откопанной среди плагинов Firefox-а. Называется этот плагин Illuminations for Developers for Firebug и представляет из себя дополнение к Firebug для работы с тяжеловесными JS либами, преимущественно с ExtJS и Sencha Touch. Помимо этого, создателями заявлено, что в beta-версии плагин поддерживает Dojo Toolkit, SproutCore, qooxdoo, YUI, Google Closure Library, jQuery UI.
                  Читать дальше →
                • Zend PHP 5 Certification Practice Test

                    Не так давно, а именно в октябре 2010 года, компания Zend немного обновила систему сертификации PHP5 инженеров. Так, если раньше тестирование проводилось по версии 5.1, то теперь проводится по 5.3 (привет namespaces, late static bindings и замыкания). Были переформированы темы тестирования — вместо 12ти прежних, теперь их 10. И что самое главное, из Zend маркета убрали подготовительные тесты. Раньше их можно было приобрести в количестве 1, 5 или 10 штук за относительно скромные деньги (10 стоили порядка 22$). Сейчас же вместо них за довольно-таки нехилую сумму в 1000$ можно приобрести так называемый Test Prep: Zend PHP 5.3 Certification Training (подготовительный online-треннинг для продвинутых php-программистов) и ваучер на прохождение тестирования. Кстати, о ваучере… если для версии 5.1 он стоил 125$, то теперь цену подняли до 195$.
                    Читать дальше →