Приложение django-qrauth позволяет добавить на Django-сайт возможность мгновенно входить с мобильных устройств (телефонов, планшетов, и так далее — то есть, по сути, любых мобильных устройств, на которых есть Интернет, камера и приложение для сканирования QR-кодов), сканируя авторизационный QR-код.
На мобильном устройстве при этом не требуется вводить ни адрес сайта, ни логин, ни пароль. Получить авторизационный QR-код можно хоть сразу же после авторизации на компьютере/ноутбуке.
9 мая вышла версия PyPy 2.0 с кодовым названием «Einstein Sandwich». PyPy — интерпретатор языка Python со встроенным tracing JIT. Основными изменениями по сравнению с PyPy 1.9 являются:
новая библиотека FFI - cffi (предложена и для включения в CPython).
Планируется, что версия 2.0 послужит стабильной базой для более частых релизов (вероятно, для создания действительно быстрых интерпретаторов Ruby и PHP).
Не вошли в официальный анонс, но тоже немаловажны:
Опубликован перевод очередной главы из 1 тома книги «Архитектура приложений с открытым исходным кодом» — «Архитектура системы управления пакетами в Python».
При разговоре о системах установки приложений обычно упоминают о двух подходах. Первый подход, характерный для Windows и Mac OS X, заключается в распространении самодостаточных пакетов приложений, процесс установки которых не должен зависеть от внешних факторов. Эта философия упрощает процесс управления приложениями: каждое приложение имеет свое отдельное «окружение» и его установка или удаление не влияет на другие части ОС. Если приложению для работы требуется нестандартная библиотека, эта библиотека включается в состав пакета для распространения приложения.
Второй подход, характерный для систем на основе ядра Linux, рассматривает программное обеспечение как набор небольших программных компонентов, называемых пакетами. Библиотеки добавляются в пакеты, причем любой пакет с библиотекой может зависеть от других пакетов. Процесс установки приложения может включать в себя процесс поиска и установки определенных версий множества других библиотек. Эти зависимости обычно доставляются из стандартного репозитория, содержащего тысячи пакетов. Данная философия обуславливает использование в дистрибутивах Linux таких сложных систем управления пакетами, как dpkg и RPM для отслеживания зависимостей и предотвращения установки двух приложений, использующих несовместимые версии одной и той же библиотеки.
У каждого подхода есть свои достоинства и недостатки.
Система управления пакетами в Python разрабатывалась с использованием второго подхода — использовалось множество зависимостей для каждого пакета, а также система должна была быть так дружелюбна к разработчику, администратору и пользователю, как это возможно. К сожалению, она имела (и имеет) различные дефекты, обуславливающие и приводящие к разного рода проблемам: использованию неинтуитивных схем записи версий, наличию необрабатываемых файлов с данными, сложностям с повторной упаковкой и другим. Три года назад группа разработчиков Python решили повторно разработать эту систему для устранения вышеописанных проблем.
Вышла новая версия транслятора из языка Python в представление на C++. Данное представление компилируется в исполняемый файл, использующий библиотеку libpython для управления объектами (аналогично CPython).
На данный момент Nuitka — хорошая замена интерпретатору Python, она поддерживает совместимость на уровне компиляции с CPython 2.6, 2.7 и 3.2.
В данной версии Nuitka на тесте pystone производительнее CPython на 258%, несмотря на то, что еще не сделаны все планируемые оптимизации.
Основные изменения:
поддержка FreeBSD;
опция для выявления исключений на этапе компиляции;
На сервисе Kickstarter идет сбор средств на новый движок для нелинейного видеоредактора с открытым исходным кодом OpenShot. Основными акцентами при разработке станут кроссплатформенность и стабильность.
Из других нововведений:
Python API.
Новый интерфейс, использующий HTML5, JQuery, CSS и WebKit.
Изменение параметров видео и аудио с помощью кривых Безье.
Компания «Redsolution» (известная как разработчик Xabber — свободного XMPP-клиента для Android) объявила о выпуске программы «Электроочередь» под лицензией GNU Affero GPL v3.
Программа предназначена для организации услуги электронной очереди в детские сады, отличается антикоррупционной прозрачностью и открытостью. Ну и, разумеется, распространяется бесплатно.
RapidDisk — проект, представляющий собой модуль ядра (rxdsk) в комплекте с утилитой для администрирования (rxadm). Разрабатывается с целью применения в высокопроизводительных системах. Аналог Ramdiskadm в Solaris.
По мнению разработчика данного проекта Petros Koutoupis'а (имеющего немалый опыт в разработке ядра Linux и использовании Solaris), несмотря на то, что в ядре есть поддержка нескольких типов ramdisk-модулей, они примитивны и не могут конкурировать с аналогами из Solaris или FreeBSD, и RapidDisk, осуществляющий динамическое постраничное выделение оперативной памяти в качестве блочных устройств, должен восполнить этот пробел.
Особенности:
динамическое подключение/отключение и изменение размеров RAM-дисков;
чтение/запись из блочного устройства на высоких скоростях (в 20-30 раз быстрее работы SATA-дисков);
создание и управление размерами от нескольких мегабайт до 1 терабайта (через CLI или GUI);
сжатие/распаковка и восстановление данных по мере необходимости;
привязка к кэшу физического диска для повышения производительности операций ввода/вывода, вследствие чего увеличивается его срок службы.
Изменения в этой версии:
очистка кода;
удаление неиспользуемых и нереализованных функций кэширования;
Eric — интегрированная среда разработки для Python и Ruby написанная в свою очередь на Python с пользовательским интерфейсом на Qt4 и использующая для редактирования исходных текстов компонент Scintilla.
Существуют две стабильные ветки: Eric4 на Python2 и Eric5 на Python3.
Особенности:
менеджер проектов;
графический отладчик с поддержкой интерактивного исследования во время приостановки и автоостановки на критических исключениях;
профайлер;
опции при запуске кода Python;
модульное тестирование;
отслеживание выполняемых задач (автообновляемый TODO-лист);
расширяемость за счёт плагинов (для Django, TurboGears, wxPython, PyLint и др.).
OpenEMM — веб-приложение для email-маркетинга (рассылки писем с маркетинговой информацией с согласия получателей, от которой, в свою очередь, в любой момент можно отказаться) с многофункциональным пользовательским интерфейсом, множеством графической статистики в режиме реального времени, системой управления контентом, сценариями для реализации отдельных задач и т.п.
OpenEMM, разработка которого начата ещё в 1999 году — первое приложение с открытым исходным кодом подобного рода.
Основное отличие от коммерческих аналогов автоматизации маркетинга (EMM), которые функционируют на нескольких серверах или «ПО как услуга» (SaaS), заключается в том, что OpenEMM можно установить на один сервер.
Используется такими компаниями, как IBM, Daimler, Siemens и Deutsche Telekom.
Особенности:
набор форм и шаблонов;
импорт/экспорт бизнес-процессов с помощью мастеров;
Editra — мощный и гибкий мультиплатформенный текстовый редактор, целью создания которого является простой в использовании интерфейс и функции помогающие в разработке ПО. В настоящее время поддерживает подсветку синтаксиса и множество других полезных функций для более чем 60 языков программирования. Проект находится в стадии разработки, но для загрузки доступны и стабильные версии. Лицензирован и находится в свободном доступе для использования в соответствии с WxWindows License.
Возможности редактора расширяются с помощью плагинов.
В этой версии:
Расширена поддержка подсветки каскадных таблиц стилей (CSS) и практически готова поддержка CSS3;
Аналитики Ars Technica проанализировали IT-стратегии кандидатов на пост президента США: команда Обамы собрала большой штат IT-сотрудников, а также вложила крупные средства в применение технологических инноваций — облачных технологий и открытых программных платформ, на основе которых строились приложения.
Техническое обеспечение кампании Обамы обошлось участникам на $14,5 млн дешевле: команда Ромни потратила $23,6 млн на консалтинг и аутсорсинг IT-услуг. В то же время, команда Обамы (на оплату работы которой ушло около $2 млн) потратила на технологии и консалтинг всего $9,3 млн. Причина этого в том, что многие программные продукты, применявшиеся в предвыборной гонке, были бесплатными.
Ядром операционной системы для серверов, развертываемых в ходе гонки, стал Linux. Команда применяла различные дистрибутивы, однако стандартом была Ubuntu. Обработкой данных компании занимались около 10 DBMS/NoSQL-систем. За время компании разработчики создали более 200 приложений для различных целей с использованием открытых языков программирования и фреймворков: Python, Ruby, PHP, Java и Node.js. Часть написанного кода, по словам разработчиков, вскоре будет выложена в открытый доступ.
Кроме того, открытые технологии применялись вместе с облачными: ИТ-инфраструктура кампании почти полностью была вынесена в облака Amazon EC2. Централизованное управление конфигурацией операционных систем и программ, установленных в облаке, осуществлялось при помощи Puppet. Настройки облака находились в виде deb-пакетов в apt-репозитории, созданном для хранения внутренних и сторонних приложений. Позже, когда инфраструктура расширилась, команда взяла на вооружение конфигуратор Asgard — открытый веб-интерфейс для управления облаками, разработанный Netflix.
Представлен очередной релиз экспериментальной среды проектирования для языка Python. Конечной целью проекта является поддержка проектирования используя не только традиционный текстовый формат представления программы, но и графическое представление потока управления, похожее на блок-схемы алгоритма. Разработчик сможет переключаться между текстом и графикой и редактировать или читать программу в том виде, который лучше подходит данному моменту.
Блок-схемы пока не реализованы, но для работы с текстовым представлением среда вполне пригодна. Вот далеко не полный список возможностей, не включающий базовые:
генерация интерактивной диаграммы зависимостей;
быстрый парсер питона и иерархическое представление различных сущностей проекта;
интеграция с pylint, pymetrics и PythonTidy;
анализ проекта на неиспользуемые функции, классы и глобальные переменные;
представление результатов профилировки в интерактивной графической и табличной форме;