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

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

     13.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Видео

Rolling upgrades на примере OpenStack Keystone

Большинству разработчиков сервисов на Python приходилось менять схему базы данных в какой-то момент жизни сервиса. Эта задача настолько типична, что для неё есть отдельный подмодуль для Django. Всё становится сложнее, если приложение, как типичный микросервис, работает в нескольких экземплярах. И ещё сложнее, если допускать даунтайма сервиса нельзя. В докладе будет рассказано, как эта проблема была решена в Keystone -- сервисе аутентификации и авторизации в OpenStack

     11.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Статьи

Метод оптимизации Trust-Region DOGLEG. Пример реализации на Python


Trust-region метод (TRM) является одним из самых важных численных методов оптимизации в решении проблем нелинейного программирования (nonlinear programming problems). Метод базируется на определении региона вокруг лучшего решения, в котором квадратичная модель аппроксимирует целевую функцию. 

     11.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Статьи

Учим робота готовить пиццу. Часть 1: Получаем данные

Не так давно, после завершения очередного конкурса на Kaggle — вдруг возникла идея попробовать сделать тестовое ML-приложение.
Например, такое: "помоги роботу сделать пиццу".

Разумеется, основная цель этого ровно та же — изучение нового.

     09.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Статьи

Как реализовать систему лайков в Django Django

Реализуем систему лайков через GenericForeignKey и пишем для нее API силами Django Rest Framework.

     08.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Статьи

Начало работы с Wagtail и GraphQL

Если у вас появилась потребность добавить React в Wagtail CMS, да еще и с использованием GraphQL, то это руководство должно помочь вам в этом.

     07.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Статьи

Основы работы с LongPoll сервером ВКонтакте

Недавно я решил познакомиться с API крупнейшей социальной сети Европы — ВКонтакте. В разделе «Для разработчиков» содержится довольно подробная документация, а в интернете существует немалое количество статей, помогающих освоиться с VK API, поэтому я решил, что серьезных проблем в изучении быть не должно. Однако, когда я добрался до LongPoll сервера, обнаружилось, что статей по работе с ним практически нет, а официальная документация не настолько полна, чтобы полностью понять изучаемый материал. Пришлось методом проб и ошибок пытаться понять принцип работы LongPoll-а, что через некоторое время мне сделать все-таки удалось. Я решил поделиться изученным материалом с другими людьми, чтобы сократить их время изучения нового. Ниже вы можете ознакомиться с разделами, про которые мне удалось написать.

     07.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Статьи

Решение закрытой транспортной задачи с дополнительными условиями средствами Python

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

     07.08.2017       Выпуск 190 (07.08.2017 - 13.08.2017)       Статьи

Ограничения глубинного обучения и будущее

Эта статья представляет собой адаптацию разделов 2 и 3 из главы 9 моей книги «Глубинное обучение с Python» (Manning Publications).

     06.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Visual Studio Code как универсальный редактор кода

Visual Studio Code (далее — VS Code) – сравнительно молодой редактор кода (первый выпуск – весна 2015 г.) с открытым исходным кодом, распространяемый бесплатно и способный составить реальную конкуренцию таким признанным лидерам отрасли как Sublime Text, Atom, Notepad++.
Ниже перечислены те особенности VS Code, которые меня заинтересовали и заставили попробовать в действии.

     06.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Интересные проекты, инструменты, библиотеки

uwsgiconf — конфигуратор для uWSGI

uwsgiconf — пакет, позволяющий вам конфигурировать uWSGI в терминах языка Python.

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

     06.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Распределенное обучение нейронных сетей с MXNet. Часть 1

Сегодня мы дадим ответ на простой вопрос: "Как работает распределённое обучение (в контексте MXNet)?"

Все примеры кода протестированные на MXNet v0.10.0 и могут не работать (или работать по-другому) в других версиях, однако полагаю, что общие концепции будут неизменимы еще долго.

     05.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Создаем массу асинхронных запросов при помощи Grequests

Requests хорошо, но grequests лучше. Я не знаю лучше, эффективней библиотеку, которая умеет быстро и элегантно выполнять HTTP-запросы нежели requests, данная библиотека — несомненный лидер, в данном плане. 

     04.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Пишем бота для Slack на Python Slack

Небольшой туториал, как сделать простого слэк-бота на Python, развернуть его на Heroku, подключить Travis CI за двадцать минут и начать делать что-то полезное.

     03.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Карта самоорганизации (Self-orginizing map) на TensorFlow

Недавно начал свое знакомство с библиотекой глубокого обучения (Deep Learning) от Google под названием TensorFlow. И захотелось в качестве эксперимента написать карту самоорганизации Кохонена. Поэтому решил заняться ее созданием используя стандартный функционал данной библиотеки. В статье описано что из себя представляет карта самоорганизации Кохонена и алгоритм ее обучения. А также приведен пример ее реализации и что из этого всего вышло.

     03.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Как я сделал самый быстрый ресайз изображений. Часть 3, числа с фиксированной точкой

Я продолжаю подробно рассказывать о приемах оптимизации, позволивших мне написать самый быстрый ресайз изображений на современных x86 процессорах. На этот раз речь пойдет о преобразовании вычислений с плавающей точкой в вычисления с целыми числами. Сперва я расскажу немного теории, как это работает. Затем вернусь к реальному коду, в том числе SIMD-версии.

     03.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Генератор кликов на Python для программы Data Engineer

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

     01.08.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Тематическое моделирование средствами BigARTM

Обратил внимание на перевод публикации под названием «Тематическое моделирование репозиториев на GitHub» [1]. В публикации много теоретических данных и очень хорошо описаны темы, понятия, использование естественных языков и многие другие приложения модели BigARTM.

Однако, обычному пользователю без знаний в области тематического моделирования для практического использования достаточно знаний интерфейса и чёткой последовательности действий при подготовке текстовых исходных данных.Разработке прогамного обеспечения для подготовки текстовых данных и выбору среды разработки и посвящена данная публикация.

     31.07.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Машинное обучение для страховой компании: Оптимизация модели

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

     31.07.2017       Выпуск 189 (31.07.2017 - 06.08.2017)       Статьи

Интерфейс vs interface

Одним из принципов объектно-ориентированного проектирования является программирование на уровне интерфейса, а не на уровне реализации. Видимо, из-за того что код в книгах и статьях по проектированию представлен преимущественно на Java, программисты на других языках, особенно с динамической типизацией, испытывают трудности с переносом знаний из этих книг и статей на свой рабочий язык программирования.

     27.07.2017       Выпуск 188 (24.07.2017 - 30.07.2017)       Статьи

Призрак локомотива или биржевой рынок через призму корреляций

В этой статье будет продемонстрирована техника обработки информации по биржевым котировкам с помощью пакета pandas (python), а также изучены некоторые «мифы и легенды» биржевой торговли посредством применения методов математической статистики. Попутно кратко рассмотрим особенности использования библиотеки plotly