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

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


Новый материал в ленте
  tornado - 6.4.2

Масштабируемый, не блокирующий web-сервер. Скачать можно по ссылке: https://pypi.python.org/pypi/tornado/


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

(18.06.2018 - 24.06.2018)

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

Статьи

  Celery + Channels = <3. Создаем реал-тайм приложение с бэкграунд тасками

В статье создадим веб-приложение, которое в бэкграунде делает запросы к API со случайными шутками каждые 15 секунд, затем отправляет шутку пользователю через WebSocket. Для реализации приложения будем использовать: django, celery и channels. Celery для бэкграунд задач. Channels для передачи сообщений через WebSocket.

  iMaterialist Furniture Challenge или 50 оттенков стульев

Недавно на Kaggle закончилось соревнование iMaterialist Challenge (Furniture), задачей в котором было классифицировать изображения на 128 видов мебели и предметов быта (так называемая fine-grained classification, где классы очень близки друг к другу).

В этой статье я опишу подход, который принес нам с m0rtido третье место, но прежде, чем переходить к сути, предлагаю воспользоваться для решения этой задачи естественной нейросетью в голове и разделить стулья на фото ниже на три класса.

  Соревнование Kaggle Home Credit Default Risk — анализ данных и простые предсказательные модели

Цель соревнования — создать методику оценки кредитоспособности заемщиков, не имеющих кредитной истории. Что выглядит довольно благородно — заемщики этой категории часто не могут получить никакой кредит в банке и вынуждены обращаться к мошенникам и микрозаймам. Интересно, что заказчик не выставляет требований по прозрачности и интерпретируемости модели (как это обычно бывает в банках), можно использовать что угодно, хоть нейросети.

  Сортировки обменами

Если описать в паре предложений по какому принципу работают сортировки обменами, то:

 

  1. Попарно сравниваются элементы массива
  2. Если элемент слева* больше элемента справа, то элементы меняются местами
  3. Повторяем пункты 1-2 до тех пор, пока массив не отсортируется

  Narrow — кто быстрее в веб

Измеряем пропускную способность веб-серверов и каркасов приложений на Python.

  Допинг для аналитики: почему стоит обратить внимание на Apache Zeppelin

Все рано или поздно приходят к аналитике за данными. В больших многопользовательских играх (да и синглплеере) без этого уже вообще никуда. Сколько пользователей предпочитают новый режим; где слабые места монетизации; куда смотреть геймдизайнерам, чтобы повысить вовлеченность игроков; и еще миллион вещей — подсчитывается вообще всё. И всё это влияет на решения, которые потом принимают разработчики.

А вот внедряют аналитику все по-разному: кто-то покупает сторонние решения (просто, но негибко), кто-то пишет под себя (долго и дорого), а кто-то пока просто считает несколько базовых метрик силами программистов и не заморачивается.

  Создание management commands в Django

Management commands — команды, выполняемые из командной строки с помощью скрипта manage.py.

Наиболее частые сферы применения — это действия, выполняемые разово или периодически, но для которых почему-либо недоступен запуск через планировщик. Например, отправка пользователям разовых сообщений, получение выборки данных из БД, проверка наличия необходимых файлов и папок перед накатыванием обновлений, быстрое создание объектов модели при разработке и т.д.

Видео

  Сборка приложений на Python

Евгений Ильин (МАИ)
Использование Fabric в качестве замены Makefile. Совместное использование Fabric, Ansible и Vagrant".
Слайды: http://www.moscowpython.ru/meetup/56/python-apps-build/

  Python для микроконтроллеров

Виктор Паперно (МТУ МИРЭА, студент)

Зачем нужен Python для МК. Как начать с ним работать
Слайды: http://www.moscowpython.ru/meetup/56/python-for-mc/

  Централизованная система управления настройками в ЦИАН

Дмитрий Жильцов (ЦИАН)

В этом докладе я расскажу о том, как у нас в ЦИАН устроена централизованная система динамического конфигурирования приложений, в том числе и на Python, как она используется в различных окружениях и для разного рода задач (от сугубо технических до продуктовых). Основной упор будет делаться на реализацию этого механизма в Python.
Слайды: http://www.moscowpython.ru/meetup/56/cian-options-management/

  Проверка типов в Питоне, как реальность (rus)

Слышали про аннотации типов в Питоне, но не знаете насколько они полезны? Беспокоитесь, что кода слишком много и не можете себе позволить его аннотировать?
Проверка типов в Питоне существует, она не миф, она может помочь вам в отлове ошибок и сделать ваш код проще для понимания.
И сейчас мы поделимся с вами своим опытом поэтапной типизации реального приложения на миллион строк!

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

Мы даже продемонстрируем, как проверка типов может сочетаться с утиной типизацией! Готовьтесь окунуться в проверку типов в Питоне.

Учебные материалы

  Подборка свежих книг по Python для тех, кто только собрался его изучать

Всегда есть множество поводов выпустить книгу про IT и программирование. Взлетел курс биткоина — на рынке появляется десяток блокбастеров про технологию блокчейна и майнинг. Машина на Go обыграла человека в какую-нибудь интеллектуальную игру — получите кипу «самых полных руководств» по гугловскому языку.

Но есть темы вечные. Одна из них — Python. Оно и понятно, язык прекрасно подойдёт тем, кто с программированием не знаком вовсе; изучить все основные библиотеки можно за пару недель, а возможности практически не ограничены. Автор блога GeekBrains Илья Бубнов заглянул на электронные полки магазина Amazon, чтобы посмотреть, что полезного было выпущено или перевыпущено по Python в первой половине 2018 года.