IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте авторский блог


Новый материал в ленте
  IPython - 8.24.0

Интерактивная оболочка для языка программирования Python. Скачать можно по ссылке: https://pypi.python.org/pypi/IPython


Python Дайджест. Выпуск 170

(20.03.2017 - 26.03.2017)

поделиться выпуском 
Дайджест python,

Статьи

  Обзор uniset2-testsuite — небольшого велосипеда для функционального тестирования. Часть 2

В первой части был обзор возможностей. А в этой части рассмотрим, какие уже реализованы интерфейсы тестирования и как добавить свой…

  Нерегулярные ошибки в импортах

Сегодня я поделюсь очередной болью в поддержке проекта на 0.7 милионов строчек кода на Python'е. Кажется, с этим багом в разных формах мы сталкиваемся уже несколько лет, и он приводит в совершенное замешательство даже опытных разработчиков.

  Yapf — причесываем код Python автокорректором

В эпоху все большей популярности различных js и css linter'ов, не удивительно появление удобного линтера с автокоррекцией для Python.

Приветствуйте, Yapf — готовое решение, для превращения каши из строк во вполне читаемый код. И поверьте, он вам пригодится.

  Python функции как объекты первого рода

Автор показывает, что функции это тоже объекты и их можно модифицировать, передавать в функции, дергать внутренние методы и тд

  Как использовать generic relations для одного поля в разных моделях Django

В Django есть интересная функциональность - Generic Relation и Generic Foreign Key. В статье автор покажет, как использовать эти конструкции, чтобы добавить одинаковое поле в совершенно разные модели, а потом делать выборки по этому полю.

  Переводы документации Python

О новом предложении по улучшению Питона.

  Molotov - нагрузочное тестирование в Mozilla

В статье вы найдете описание пакета для нагрузочного тестирования - Molotov

  Переработка авто-подстановки для Django Django

Автор рассказывает, как можно реализовать авто-подстановку элементов из БД для Django.
 

  Как я SQLAlchemy удобной сделал SQLAlchemy

Не секрет, что SQLAlchemy — самая популярная ORM на Python. Она позволяет писать куда более продвинутые вещи, чем большинство Active Record собратьев. Но плата за это — более сложный код, и в простых задачах вроде CRUD это напрягает.

О том, как я сделал Алхимию удобной, воспользовавшись опытом лучших Active Record ORM, читайте под катом.

  Открытый курс машинного обучения. Тема 4. Линейные модели классификации и регрессии

Сегодня мы детально обсудим очень важный класс моделей машинного обучения – линейных.
Ключевое отличие нашей подачи материала от аналогичного в курсах эконометрики и статистики – это акцент на практическом применении линейных моделей в реальных задачах (хотя и математики тоже будет немало).

  Вызов функций Go из других языков

 

В статье мы рассмотрим компилирование пакетов Go в библиотеки Си. В этом режиме сборки компилятор генерирует стандартный бинарный файл объекта (shared object) (.so), передавая функции Go в качестве API в стиле Си. Мы поговорим о том, как создавать библиотеки Go, которые можно вызывать из C, Python, Ruby, Node и Java.

  Использование ArcGIS API for Python в Jupiter Notebook

 

Я работаю в департаменте Больших Данных, где занимаюсь разработкой высоконагруженных геоинформационных систем и сервисов на базе движков для распределенных вычислений. О высоких материях мы еще поговорим, а сегодня плавно начнем погружение в ГИС.

  Как получить координаты маршрута между двумя городами в Python

Представим, что нам нужно получить координаты маршрута между Винницей и Одессой. Для этого воспользуемся Google Directions API и модулем googlemaps.

  Предсказываем будущее с помощью библиотеки Facebook Prophet

Прогнозирование временных рядов — это достаточно популярная аналитическая задача. Прогнозы используются, например, для понимания, сколько серверов понадобится online-сервису через год, каков будет спрос на каждый товар в гипермаркете, или для постановки целей и оценки работы команды (для этого можно построить baseline прогноз и сравнить фактическое значение с прогнозируемым).

  Соревнование mlbootcamp от mail.ru, кратко о рецепте второго места

Добрый день, читатель! Данная статья расскажет о пути получения второго места на соревновании MLBootCamp III. Для тех, кто не в курсе — это соревнование по машинному обучению и анализу данных от Mail.Ru Group, проходило с 15 февраля по 15 марта.

В статье будет коротко про историю построения решения, немного советов про то, на чем набил шишек и благодарности) Итак, поехали. 

Вопросы и обсуждения

  Podcast.__init__ Episode 101 - Crossbar.io с Tobias Oberstein и Alexander Gödde

Подкаст.
Crossbar.io - платформа для распределенных и микросервисных приложений. Реализует протокол  Web Application Messaging Protocol (WAMP).

Видео

  Артем Малышев - Правильные пчёлы

Артем Малышев - Правильные пчёлы
Слайды: http://proofit404.github.io/talks/the-right-bees/slides/

Доклад о многообещающем проекте BeeWare, который находится в стадии интенсивной разработки. Если у вашей программы есть пользователи, то они скорее всего хотят графический интерфейс. Причём хотят они его в родном для платформы исполнении, будь то десктоп, браузер, телефон или умные часы. Целью проекта BeeWare и является эта самая возможность написания изоморфных приложений на Python, используя предоставленные системой возможности. О том как и почему устроен проект и пойдёт речь.

  Алексей Кутепов - 18 Оттенков I18N

Алексей Кутепов (Revel Systems) - 18 Оттенков I18N
Слайды: https://www.slideshare.net/AlekseyKutepov/18-i18n

Проекты становятся глобальными, когда этого никто не ждёт. Проблема перевода возникает не только у переводчиков, но и у инженеров. Разговор об основных трудностях перевода с точки зрения Web разработчика. Усвоенные уроки, инструменты и life hacks.
 

  «А какой на самом деле этот Python?», Сергей Матвеенко

За последние несколько лет Python, как язык программирования и технология, шагнул так далеко, что люди, которые видели его лет 5 назад, уже безнадежно отстали. Возможности использования Python сейчас сильно преобразились. Senior Developer DataArt Сергей Матвеенко на встрече IT talk в Петербурге рассказывает об эволюции от Python 2 к Python 3.6, статической типизации в разных вариантах и о других современных возможностях разработки на Python. Получилось "с юморком":)

  Антон Шрамко - Обзор Tarantool и его использования в приложениях

Антон Шрамко - Обзор Tarantool и его использования в приложениях
Слайды: http://slides.com/friktor/tarantool

Мы все давно привыкли использовать Redis в качестве основной in-memory базы для наших приложений. В этом докладе будет рассказано о удобной и практичной альтернативе Redis и том, как это можно использовать в Python, а так же зачем это может быть нужно.
 

  Александр Мокров - Асинхронный RPC с помощью Gevent и RabbitMQ gevent

Александр Мокров (Positive Technologies) - Асинхронный RPC с помощью Gevent и RabbitMQ
Слайды: https://www.slideshare.net/AleksandrMokrov/gevent-rabbit-rpc

Я расскажу о том, как мы начали путь постепенного ухода от Celery и о причинах такого решения. Поведаю о первом шаге, в котором мы для более гибкого управления задачами отказались от встроенного workflow и отвязались от БД, используемой для обмена данными между задачами. Более подробно остановлюсь на библиотеке gevent и RabbitMQ, как на их основе построить асинхронный RPC и долгоживущие управляющие задачи, которые помогли нам на этом этапе.

  Нагрузочное тестирование сервиса на Python инструментами Яндекса

Дмитрий Кузнецов (Яндекс) @ MoscowPython 43

"Я расскажу о возможностях Tank и Overload — общедоступных инструментов нагрузочного тестирования от Яндекса. Также поговорим о базовых методиках нагрузочного тестирования на примере известных фреймворков".

Слайды: http://www.moscowpython.ru/meetup/43/nagruzochnoe-testirovanie-servisa-na-python-instru/

  Docker swarm mode — как с этим жить

Ринат Хабибиев (Zvooq.com) @ MoscowPython 43

"Версия 1.12 подарила адептам Docker возможность разрабатывать автоматически масштабируемые и отказоустойчивые сервисы. Давайте разберём, как это работает, и научимся при помощи Fabricio быстро разворачивать сервисы Docker на произвольной инфраструктуре".

Слайды: http://www.moscowpython.ru/meetup/43/docker-swarm-mode-kak-s-etim-zhit/

  Проектирование абстрактной архитектуры приложения на Python

Александр Ковалёв (Positive Technologies) @ MoscowPython 43

"На материале одного из открытых проектов нашей компании расскажу, как абстрагироваться от конкретных параметров задачи и окружения, чтобы создать универсальный инструмент. Покажу конкретные примеры и поделюсь мыслями".

Слайды: http://www.moscowpython.ru/meetup/43/proektirovanie-abstraktnoj-konfiguriruemoj-arhitek/

Релизы

  pgcli - 1.5.1

REPL для Postgres. Изменения описаны по ссылке https://allmychanges.com/p/python/pgcli/#1.5.1. Скачать можно по ссылке: https://pypi.python.org/pypi/pgcli/

  lxml - 3.7.4

Мощный и быстрый модуль для обработки XML/HTML. Изменения описаны по ссылке https://allmychanges.com/p/python/lxml/#3.7.4. Скачать можно по ссылке: http://pypi.python.org/pypi/lxml/

  PyDev 5.6.0

Повышена скорость работы отладчика, улучшено выведение типов для методов super() 

  Новые релизы PyPy2 и PyPy3 (Python 3.5) PyPy

Были выложены новые версии PyPy2 5.7 и PyPy3 5.7 (с поддержкой Python 3.5 и f строками)

  aiohttp - 1.3.5

http клиент/сервер для asyncio. Изменения описаны по ссылке https://allmychanges.com/p/python/aiohttp/#1.3.5. Скачать можно по ссылке: https://pypi.python.org/pypi/aiohttp