Собрали в одном месте самые важные ссылки
читайте нас в Telegram
Спецвыпуск с Positive Hack Days! Гости у Moscow Python Podcast на сей раз тоже необычные — всамделишные, но сугубо «белые» хакеры: Ярослав и Анатолий из Positive Technologies. Вместе с ними мы вникаем в особенности работы white hat хакеров, в логику действий взломщиков, находящихся на светлой стороне силы, в специфику хака веб-приложений, а также в отдельные потенциальные уязвимости в технологическом стеке вокруг Python.
«Большая О» в информатике используется при анализе того, как ведёт себя код с увеличением объёма данных. И это полезный инструмент, который зачастую преподносится при помощи отталкивающих математических концепций.
В этом выступлении я расскажу вам о большой О то, что действительно важно знать разработчику: как использовать этот инструмент во благо программ. Большая О поможет вам подобрать нужные структуры данных и алгоритмы, таким образом, чтобы производительность не терялась даже на больших объёмах данных.
Не нужно быть математиком или зубрить информатику, чтобы освоить большую О — она не так загадочна, как может показаться.
Про тонкости, расширенные возможности, про цепочки подписей x.509, как можно организовать свои цепочки подписей. Ну и в общем, как устроить защищённое общение между своими/сторонними сервисами по стандартам RFC. Ну и конечно, как это все использовать на Python
Сталкивались ли вы с проблемой: как быть с разделяемыми данными для приложения с микросервисной архитектурой? Как держать их в консистентом состоянии? Как сделать так, чтобы API для работы с этими данными не тормозили? Расскажу, какой подход мы выбрали в рамках нашего продукта и почему
Что вам от ещё одного выступления про ГБИ (это глобальная блокировка интерпретатора, из-за которой код на Питоне не может быть распараллелен по ядрам)?
Конечно мы посвятим часть времени описанию того, что это такое, того на что она влияет и на что не влияет, и того как её можно обойти. Но главное — мы поговорим о возможном будущем. И вероятно даже о будущем после ГБИ. Будущем, к которому ведут нас изыскания, производимые нами в настоящем. Будущем Питона, исполняемого на многих ядрах.
Должны ли программисты по умолчанию писать качественный код? Как системно формировать для разработки условия, которые не дадут членам команды «проваливаться» в несчастье?
Как Kubernetes улучшает жизненный цикл Python-приложений? Есть ли сложности в организации оркестровки, с которыми могут столкнуться команды, ведущие разработку на Python? Как вся эта благодать вписывается в концепцию cloud native applications?
Предлагаем вашему вниманию «выездной» выпуск Moscow Python Podcast, записанный на Knowledge Conference 2019. Учитывая тематику конференции, на сей раз мы сосредоточились не только на культуре кодинга и подходах к разработке, но и на том, как различные практики закрепляются (или не закрепляются) в Python-сообществе.
Как развивалось пакетирование в Python, что в нём на текущий момент оставляет желать лучшего, какие системы для управления зависимостями актуальны и в какую сторону они развиваются?
Как джуниору сориентироваться в хитросплетениях IT-индустрии? Какая мотивация лучше всего помогает начинающему программисту не капитулировать перед первыми трудностями? Как эффективнее искать вакансии — через рекрутинговые сервисы или через знакомых? Как пробиваться через «HR-заслон» в компанию мечты?
* Видео в низком разрешении.
Беглый обзор некоторых нововведений в Python 3.7: встроенная breakpoint(), классы данных, функции с разрешением в наносекунды, компактные словари, __getattr__ уровня модуля.
С тех пор как в Питоне появилась поддержка аннотаций прошло уже немало времени. И сегодня можно с уверенностью говорить о том, что эта функциональность прижилась. Так давайте же посмотрим, как и для чего используются аннотации стандартной библиотекой и сторонними приложениями.
Цель доклада - познакомить слушателей с инструментами построения batch processing задач в экосистеме Python. В презентации я рассказал про две наиболее популярных тулзы: Luigi и Apache Airflow.
Новая серия code review от нашей команды дотошных питонистов. На сей раз разбору подвергся код предназначенного для организации волонтёрских активностей Telegram-бота GoLocal (написан на базе фреймворка Telegram Bot API). Операцию ведут тимлид NVIDIA Злата Обуховская, сооснователь W12 и соорганизатор Moscow Python Conf++ Михаил Осипов, соорганизатор Moscow Python Conf++ и сооснователь Itcanfly Владимир Филонов. Они объясняют, зачем код даже простого бота целесообразно разносить по разным модулям, в чём ужас хардкод-логирования ошибок, как без лишних манипуляций реализовать многоязычность в программе на Python, чем полезен middleware и как всё-таки называть переменные правильно
Доклад о том зачем начинающему (и не очень) разработчику участвовать в развитии OSS-проектов. Поговорим про PyPI, pip и Poetry, а также о не совсем очевидном следствии создания своего проекта.
В ЦИАН мы постоянно пользуемся линтером для проверки качества кода. Но случаются моменты, когда хочется проверять код на соответствие внутренним соглашениям, про которые линтер ничего не знает. Разработчикам приходится держать все соглашения в голове и самостоятельно проверять качество кода. Это усложняет и затягивает код-ревью. Я расскажу о том, как мы решили эту проблему с помощью Pylint, который имеет мощную систему создания плагинов. Покажу на примерах как плагины могут упростить процесс код-ревью. Рассмотрим процесс написания плагинов и попутно разберемся как работает сам Pylint изнутри.
* Какие мотивы стояли за созданием библиотеки asyncio?
* Как в ней реализовано асинхронное выполнение кода? * Почему это полезно знать, если пишешь код с её использованием?
В Питоне всё прекрасно, кроме одного „фатального недостатка“, и имя ему — GIL. Эти три буквы превращают любое многопоточное приложение в кошмар. Поговорим о том, что это, почему он всё ещё живёт в интерпретаторе, как его можно выключить и ускорить код. Разберём несколько реальных примеров, в которых оптимизированный код на тредах на Питоне работает так же быстро, как версия на C, или даже быстрее.