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

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

     26.07.2018       Выпуск 240 (23.07.2018 - 29.07.2018)       Видео

Ваш вклад в сообщество Python

Если вы хотите принести пользу сообществу, но не знаете, как это сделать, или с чего начать, приходите послушать — в этом выступлении я опишу несколько направлений, по которым можно следовать. Вы узнаете, о том, что сообществу можно помочь не только делом, но и словом. О том, что не обязательно быть семи пядей во лбу, чтобы участвовать. И о многом другом. Добро пожаловать!

     25.07.2018       Выпуск 240 (23.07.2018 - 29.07.2018)       Видео

Мониторинг в Python проекте

Разработка новой функциональности не заканчивается на коммите в master, когда CI/CD/разработчик выкатит на Production... и там всё сломается. "Зеленые" тесты не гарантия работы Production. Следите за картиной в целом - как изменяются системные, технические, продуктовые метрики.

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

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

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

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

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

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

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

     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/

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

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

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

     03.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Видео

Type-checked Python in the real world

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

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

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

     03.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Видео
     03.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Видео

A Bit about Bytes: Understanding Python Bytecode

Рано или поздно любой питонист сталкивается с файлами байткода Питона — теми самыми .pyc файлами, которые Питон любит оставлять за собой после запуска.

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

     03.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Видео

Trio: Async concurrency for mere mortals

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

Тщательно изучив промахи других библиотек, и воспользовавшись новыми возможностями Python 3, я создал новый набор примитивов, позволяющих существенно облегчить написание правильных конкурентных программ, и оформил их в новую библиотеку под названием Trio.

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

Выступление предполагает наличие базовых знаний о Питоне, но не требует какого-либо опыта в конкурентности, async/await или сетевом программировании.

     03.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Видео

Big-O: How Code Slows as Data Grows

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

Из этого выступления вы узнаете всё, что вам нужно знать о большой О и о том, как ею пользоваться, чтобы ваши приложения отлично работали. «О большая» поможет вам выбирать структуры данных и алгоритмы так, чтобы ваш код эффективно справлялся даже с большими объёмами данных.

Чтобы понять «О» вам не нужно быть ботаном от теоретической информатики. Она не так загадочна, как кажется. Она окружена математическими препонами, но не потребует от вас ничего кроме здравого смысла, чтобы позволить понять, как поведёт себя код в ходе исполнения.

     02.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Видео

Dataclasses: The code generator to end all code generators

Модуль dataclasses, описанный в PEP 557, доступен в Питоне начиная с версии 3.7. Скоро он станет важным инструментом для каждого питониста.

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

Классы данных представляются очередным шагом в развитии инструментов для работы с данными: кортежи, словари, обычные классы, классы-пачки, именованные кортежи, records, attrs и, наконец, классы данных. Каждый из инструментов базируется на предшественнике, добавляя выразительность в обмен на сложность.

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

И классы данных и typing.NamedTuple используют аннотации переменных, введённые в Python 3.6.

     02.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Видео

Building a cross-platform native app with BeeWare

Хотели ли вы написать приложение с графическим интерфейсом для своего ноутбука? А как на счёт телефона? Это всегда была задача трудно решаемая Питоном, и нерешаемая без знания различных программных интерфейсов на разных платформах. Но не теперь.

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

Это выступление познакомит вас с инструментарием BeeWare, и поможет разобраться в том, как вы можете использовать его для того, чтобы с нуля создать программу ChatBot, которое можно будет запустить как самостоятельное приложение и на компьютере, и на телефоне, и как одностраничное веб-приложение, при этом используя единую кодовую базу.

     20.05.2018       Выпуск 230 (14.05.2018 - 20.05.2018)       Видео
     08.05.2018       Выпуск 229 (07.05.2018 - 13.05.2018)       Видео

Стэк для машинного обучения на исходном коде

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

     08.05.2018       Выпуск 229 (07.05.2018 - 13.05.2018)       Видео

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

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

     08.05.2018       Выпуск 229 (07.05.2018 - 13.05.2018)       Видео

SimplePEG и Tchaikovsky - универсальная валидация

Как создать универсальную валидацию для Backend и Frontend и как валидировать сложные текстовые поля