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

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

     07.06.2017       Выпуск 181 (05.06.2017 - 11.06.2017)       Видео

Питонизация стартапа

Python хороший язык для бэкэнда. Но почему его нельзя применить и на frontend? Или можно? Я покажу как на практике можно писать Python код и на frontend (с Rapydscript) и на бэкэнд (Web.py).

     06.06.2017       Выпуск 181 (05.06.2017 - 11.06.2017)       Видео

QaAPI или какое API нужно вашим тестировщикам

Жизнь тестировщика насыщена экспериментами и рутиной. Чем больше рутины и меньше экспериментов, тем тестировщик сильнее грустит. Как разработчики ПО мы можем сделать тестировщика счастливым — написать софт, который автоматизирует рутину. В докладе расскажу об инструменте QaAPI — реализации API для применения в тестировании. Поделюсь опытом разработки такого инструмента в Welltory.

     05.06.2017       Выпуск 181 (05.06.2017 - 11.06.2017)       Видео

Прицельная регрессия, или запускаем только релевантные автотесты

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

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

     03.06.2017       Выпуск 180 (29.05.2017 - 04.06.2017)       Видео

Создание desktop-приложений на Python

Евгений Ильин (МАИ, доцент, инженер)

"Создание GUI на Python".

Слайды: http://www.moscowpython.ru/meetup/45/sozdanie-desktop-prilozhenij-na-python/

     02.06.2017       Выпуск 180 (29.05.2017 - 04.06.2017)       Видео

Promises and service worker for pythonist

Александр Хаёров

"Миры frontend и backend неразделимы и порой важно понимать ключевые вещи в смежных областях. В докладе поговорим о двух важных вещах из мира frontend — промисах и сервис воркерах. Чтобы было веселее — попробуем изучить эти штуки на примере аналогий".

Слайды: http://www.moscowpython.ru/meetup/45/promises-and-service-worker-for-pythonist/

     02.06.2017       Выпуск 180 (29.05.2017 - 04.06.2017)       Видео

Python Opcodes

Артём Апалько (RedMadRobot backend-dev)

"Обзорный доклад по опкодам в питоне. Изменения в Python 3.6 (изменение размера, оптимизация branch-prediction)".

Слайды: http://www.moscowpython.ru/meetup/45/python-opcodes/

     23.05.2017       Выпуск 179 (22.05.2017 - 28.05.2017)       Видео

Lightning Talk: Сергей Архипов - Правильная демонизация

Слайды: https://speakerdeck.com/9seconds/daemonize

Небольшой рассказ о том, как правильно демонизировались процессы до прихода systemd.

     23.05.2017       Выпуск 179 (22.05.2017 - 28.05.2017)       Видео

Lightning Talk: Никита Ладошкин - gRPC

Слайды: https://nikiladonya.github.io/#/4

Небольшой обзор gRPC как дополнение к докладу про Protocol Buffers.

     23.05.2017       Выпуск 179 (22.05.2017 - 28.05.2017)       Видео

Александр Мокров - Protobuf it!

Слайды: https://www.slideshare.net/AleksandrMokrov/protobuf-it

Поговорим о том, что за зверь этот Protocol Buffers и зачем он вообще нужен. Рассмотрим где он может быть полезен, что может дать и с какими проблемами может познакомить. Посравниваем с конкурентами.

     23.05.2017       Выпуск 179 (22.05.2017 - 28.05.2017)       Видео

Артём Малышев - Ни RESТа себе! GraphQL is Coming

Слайды: https://proofit404.github.io/talks/graphql-is-coming/slides/

Уже очень давно стандартом де-факто для дизайна web API стал REST. Но вот GitHub и Facebook анонсировали поддержку GraphQL API. Зачем они это сделали? Стоит ли нам сделать тоже самое? Какие инструменты для этого предоставляет экосистема Python? Хорошо ли они спроектированы? REST уже всё? Ответы на эти вопросы и не только вы узнаете из моего доклада.

     23.05.2017       Выпуск 179 (22.05.2017 - 28.05.2017)       Видео

Сергей Архипов - Свой Mustache за 40 минут

Слайды: https://speakerdeck.com/9seconds/own-mustache

Давайте просто возьмем и напишем свой игрушечный шаблонизатор Curly, который функционально примерно равен Mustache за 40 минут. За эти 40 минут я попытаюсь рассказать все-все детали так, чтобы люди, которые умеют строить регулярные выражения, поняли бы, как реализуются такие шаблонизаторы в принципе.

     05.05.2017       Выпуск 176 (01.05.2017 - 07.05.2017)       Видео

Монады. Экспликация

Павел Петлинский (Rambler&Co)

 "В докладе мы разберемся, что за зверь такой эта "Монада", и где прекрасный чистый мир математики ломается об особенности языков программирования".
Слайды: http://www.moscowpython.ru/meetup/44/monady-eksplikacija/

     05.05.2017       Выпуск 176 (01.05.2017 - 07.05.2017)       Видео

Authentication with JWT

Антон Егоров (Sabaka.io, CTO)
"Многие разработчики теряются, когда сталкиваются с таким, казалось бы простым, вопросом как авторизация. Все понятно, когда мы имеем дело с человеком на сайте, который вбивает свой логин и пароль. Но процедура становится в совсем другой, когда нужна аутентификация для API".
Слайды: http://www.moscowpython.ru/meetup/44/authentication-with-jwt/

     05.05.2017       Выпуск 176 (01.05.2017 - 07.05.2017)       Видео

Python и исследование операций

Сергей Сундуков (Borlas Consulting Group, Ведущий консультант)
"Хочу рассказать об успешном опыте применения питона и опен-сорсных библиотек при решении реальных бизнес-задач планирования и оптимизации".
Слайды: http://www.moscowpython.ru/meetup/44/python-i-issledovanie-operacij/

     19.04.2017       Выпуск 174 (17.04.2017 - 23.04.2017)       Видео

Юрий Половинкин о том, зачем Python сисадмину

Выпускник курсов Learn Python Юрий Половинкин рассказал о том, зачем он записался на курсы и что из этого получилось.

     12.04.2017       Выпуск 173 (10.04.2017 - 16.04.2017)       Видео

django-sitetree: навигация для сайта

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

     11.04.2017       Выпуск 173 (10.04.2017 - 16.04.2017)       Видео

Текстовые интерфейсы и зачем они нужны

Я расскажу про текстовые интерфейсы (TUI), области их применения и инструменты для создания таких интерфейсов под Python: curses, urwid и др.

     10.04.2017       Выпуск 173 (10.04.2017 - 16.04.2017)       Видео

Питон в малине

В докладе я расскажу об устройстве одноплатного компьютера и его периферии на примере Raspberry Pi.
Установку на него дистрибутива операционной системы, Python 3 и управление с помощью него периферией (i2c, spi, uart и отдельными pin). 
А ещё я это покажу вживую.

     24.03.2017       Выпуск 170 (20.03.2017 - 26.03.2017)       Видео

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

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

     24.03.2017       Выпуск 170 (20.03.2017 - 26.03.2017)       Видео

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

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

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