• Стив Джобс умер

      Stevejobs Macworld2005Средства массовой информации сообщают о смерти Стива Джобса, бывшего CEO Apple. Можно по-разному относиться к Apple и Стиву, но отрицать то, что это знаковая фигура в IT-индустрии, создавшая множество трендов, нельзя. Requiescat in pace, Стив.
      Приведу перевод сообщения на официальном сайте Apple:
      Apple потеряла своего фантастического и изобретательного гения, а мир лишился замечательного человека. Те из нас, кто имел счастье близко знать и работать со Стивом, лишились дорогого друга и вдохновлённого наставника. Стив оставил после себя компанию, которую мог создать только он, поэтому его дух навсегда останется в сердце компании.
      Источник — Apple.
      В магазинах Apple по всему миру были лишены подсветки все логотипы Apple.

      Те, кто хочет поделиться своими сопереживаниями, могут отправить свои мысли и соболезнования по почтовому адресу rememberingsteve@apple.com. Возможно, некоторые будут переданы родным Стива.
      Хорошее видео от CNET, которое вкратце визуально пересказывает карьеру Стива.
      Воспоминания его коллег по IT-цеху ниже:
      Читать дальше →
    • Catastrophic backtracking в регулярных выражениях

        Можно ли простой и вроде невинной регуляркой убить систему? Да, можно.

        Например:

        >>> r = '(a+)*b'
        

        Просто — да. Невинно — вроде да. Конечно неумно, потому что скобки и звездочка лишние, но должно работать. Попробуем:

        >>> re.findall('(a+)*b', 'aaaaaab')
        ['aaaaaa']
        

        Круто, работает, пошли пить пиво.

        А нет…
        Читать дальше →
      • Regexp и Python: извлечение токенов из текста

        • Tutorial
        imageРазбор логов и конфигурационных файлов — задача часто возникающая и многократно описанная. В этой статье я расскажу как на языке python реализовать ее классическое решение: с помощью регулярных выражений и именованных групп. По возможности постараюсь рассказать причины, по которым применяется то или иное решение, а также обрисовать подводные камни и методы их обхода.

        Читать о том, как препарируют текст
      • Асинхронные задания в Django c помощью Celery

          Приветствую!
          Думаю, большинство разработчиков Django слышали о Celery — системе асинхронного выполнения заданий, а многие даже активно её используют.

          Около года назад на хабре была довольная хорошая статья, рассказывающая о том, как использовать Celery. Однако, как было упомянуто в заключении, уже вышла Сelery 2.0 (на данный момент стабильной версией является 2.2.7), где интеграция с django была вынесена в отдельный пакет, а также произошли другие изменения.

          Данная статья будет полезна прежде всего новичкам, которые начинают работать с Django, и им требутся что-то, способное выполнять асинхронные и/или периодические задания в системе (например очистку устаревших сессий). Я покажу как установить и настроить Сelery для работы с Django от начала до конца, а также расскажу про некоторые другие полезные настройки и подводные камни.
          Итак, приступим.
        • История одного взлома или как пытались увести всё, но не увели ничего

            Цель данного топика придать огласке действия мошенников пытавшихся обмануть не не только простых пользователей, но и навредить честным людям, которые вывели их на чистую воду. Злоумышленники боятся огласки и известности, так как это сильно навредит их планам. Публикую этот пост по просьбе друга и основателя проекта macpages.me Наиля Янгазова. Далее повествование идет от его имени.

            Предисловие


            У меня есть моя основная почта на сервисе MobileMe, который кстати будущим летом уже станет историей. Я был наивен и никогда не использовал сложные, сгенерированные пароли в сети и все было здорово. Однако, в конце 2010 года, работая за компьютером неожиданно получаю сообщение о восстановлении пароля на почте, процедуру сам не заказывал. Естественно, понимаю, что почту хотят увести, но успеваю перед злоумышленником по этой ссылке сам сменить пароль. С тех пор я использую только пароли, сгенерированные софтом, например 1Password на Mac.

            Все было нормально до последнего времени — на почте был уникальный пароль с спецсимволами, буквами разного регистра и длиною не менее 10 символов. Подбором такой взломать не каждый ботнет сможет. К тому же такой пароль не был один на все аккаунты — почту, твиттер, панель для домена и т.п.

            Читать дальше →
          • Профили пользователей: плюсы, минусы, подводные камни

              Не секрет, что работу с профилями пользователей в Django иначе как несчастьем не назовёшь. Все мы сталкивались с монолитностью модели auth.User, неадкеватным набором полей у неё, а также всеми теми ухищрениями, к которым приходилось прибегать.

              Извращаться приходилось всем: не только пользователям джанги, но и самим её core-разработчикам. Помните, например, как в Django 1.2 внезапно стало возможно использовать в поле username символы собаки (@) и точки? Знаете зачем? Чтобы в качестве логинов можно было использовать адреса e-mail.

              Нам, простым пользователям, тоже жилось несладко. Для того, чтобы изменить профиль пользователя, добавив ему какие-нибудь интересных полей — обычная, казалось бы, вещь, да? — приходилось действовать разными способами.
              Интересно?
            • Nginx + uWSGI + Django, один из вариантов запуска

                Статья описывает один из способов развертывания Django-проектов, в связке Nginx + uWSGI на Unix-подобных операционных системах. Тестирование, а так же дальнейшая рабочая эксплуатация производилась на FreeBSD, однако на Linux процесс будет схож, за исключением некоторых незначительных моментов.
                Читать дальше →