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

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     23.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Статьи

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

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

     22.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Учебные материалы

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

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

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

     22.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Статьи

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

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

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

     22.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Статьи

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

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

     20.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Статьи

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

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

 

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

     19.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Статьи

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

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

     18.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Видео

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

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

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

     18.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Видео

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

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

     18.06.2018       Выпуск 235 (18.06.2018 - 24.06.2018)       Видео

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

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

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

     17.06.2018       Выпуск 234 (11.06.2018 - 17.06.2018)       Статьи

Kivy. От создания до production — один шаг. Часть 2 Kivy

Сегодня, как всегда, поговорим о создании мобильных приложений с фреймворком Kivy и Python. В частности речь пойдет о создании мобильного клиента для одного Интернет ресурса и публикации его в Google Play. Я расскажу, с какими проблемами может столкнуться новичок и опытный разработчик, которые решили попробовать себя в кроссплатформенной разработке с Kivy, что можно и чего лучше не делать в программировании с Python for Android.

     17.06.2018       Выпуск 234 (11.06.2018 - 17.06.2018)       Интересные проекты, инструменты, библиотеки

Анонс pytest-djangoapp

О новом плагине для pytest, который упростит вам написание и исполнение тестов для подключаемых приложений Django.

     17.06.2018       Выпуск 234 (11.06.2018 - 17.06.2018)       Статьи

Kaggle: Amazon from Space — трюки и хаки при обучении нейросетей

Летом прошлого года закончилось соревнование на площадке kaggle, которое было посвящено классификации спутниковых снимков лесов Амазонки. Наша команда заняла 7 место из 900+ участников. Не смотря на то, что соревнование закончилось давно, почти все приемы нашего решения применимы до сих пор, причём не только для соревнований, но и для обучения нейросетей для прода.

     17.06.2018       Выпуск 234 (11.06.2018 - 17.06.2018)       Статьи

Обзор Ubuntu DSVM: алхимия ни при чём

В течение последних месяцев в нескольких проектах наш партнер использовал виртуальную машину для обработки и анализа данных (DSVM) на базе Ubuntu от Microsoft. Он решил попробовать ее в деле уже используя продукт Amazon. Рассмотрим все плюсы и минусы, а также сравним наш инструмент с похожими решениями.

     17.06.2018       Выпуск 234 (11.06.2018 - 17.06.2018)       Статьи

Анализ таблиц маршрутизации, или зачем ещё сетевому инженеру Python

  • Имеется набор текстовых файлов, содержащих вывод таблиц маршрутизации с различных сетевых устройств;
  • Каждый файл содержит информацию с одного устройства;
  • Устройства могут иметь различный формат вывода таблицы маршрутизации;
  • Необходимо на основании имеющихся данных по запросу выводить путь до произвольной подсети или IP-адреса с каждого из устройств;
  • Вывод должен включать на каждом участке пути информацию о записи из таблицы маршрутизации, по которой будет смаршрутизирован пакет.

     11.06.2018       Выпуск 234 (11.06.2018 - 17.06.2018)       Статьи

Стеганография в IP-пакетах

Однажды, перед защитой очередной лабораторной работы мне задали вопрос: какие поля IP-пакета можно использовать для стегано? Я не знал и лишь пожал плечами. Но вскоре я всё же решил изучить этот вопрос.

Под катом вас ждёт изучение заголовков IP-пакетов, собственная утилита ping на Python и несколько способов передать данные, не привлекая внимания.

     11.06.2018       Выпуск 234 (11.06.2018 - 17.06.2018)       Видео

Trio: Асинхронная конкурентность для простых смертных

Конкурентные программы весьма полезны: в веб-приложениях, обслуживающих запросы и вебсокет-подключения; чат-боты, участвующие во множестве обсуждений одновременно; пауки, собирающие данные сразу с нескольких страниц. А вот писать конкурентные приложения непросто — они пугают новичков и бросают вызов бывалым.
Но так ли должно быть? Питон известен своей простотой и однозначностью; может ли он привнести в конкурентное программирование эти черты? Думаю, да.

     10.06.2018       Выпуск 233 (04.06.2018 - 10.06.2018)       Статьи

Состязательные атаки (adversarial attacks) в соревновании Machines Can See 2018

Или как я оказался в команде победителей соревнования Machines Can See 2018 adversarial competition.

     10.06.2018       Выпуск 233 (04.06.2018 - 10.06.2018)       Статьи

Как я писал логин по протоколу SRP6a на Python, а получил… JavaScript и Python в одной коробке

Большое и увлекательное путешествие начинается с простого и банального шага. Когда мне на работе понадобилось реализовывать процесс логина для набора автоматизированных тестов, я даже не представлял, куда это приведет.

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

     09.06.2018       Выпуск 233 (04.06.2018 - 10.06.2018)       Учебные материалы

NumPy в Python. Часть 3

Продолжаем наш цикл статей по переводу мана о numpy. Приятного чтения.