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

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

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

А побыстрее можно?

Сколько существует python, столько все жалуются, что он медленный. Дошло до того, что даже автор языка признал, что так жить больше нельзя, и запустил проект по ускорению CPython. Но что именно можно (нужно?) ускорить в python? Какие изменения реализуются уже сейчас прямо на наших глазах? Нам предстоит погрузиться в некоторые аспекты работы интерпретатора, чтобы на примере одного из свежих изменений воочию увидеть, как же все-таки разгоняют python.

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Утечки памяти и дедлоки: как выстрелить себе в ногу

Есть устоявшееся выражение про «выстрелить себе в ногу», его интерпретация для языка Python гласит следующее: «Вы пытаетесь выстрелить себе в ногу, но то и дело попадаете промеж пальцев. А всё потому, что Питон настолько гибкий — что из пальцев выскальзывает». Оказывается, попасть в ногу намного проще. Минорным обновлением Python вполне реально дедлокнуть себе интерпретатор, а запуск подпроцесса с пользовательским кодом превращается в дебаг утечки памяти. В таких случаях поиск root cause проблемы чаще всего оказывается сильно сложнее, чем хотфикс. И без понимания что же все-таки произошло, можно наступать на те же грабли снова и снова. Посмотрим на пару таких случаев со стороны стандартной библиотеки: как диагностировали и что полезного из этого вынесли. Заодно разберем, чем плох системный вызов fork, и как им можно сделать себе очень больно. Послушать будет интересно всем сочувствующим, особенно тем, кто использует библиотеки subprocess, multiprocessing и concurrent.futures.

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Отладка на низком уровне

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

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Легковесный ЧПУ с EtherCAT на python и С

Эта история о том, как python разработчик и инженер-электронщик совместными усилиями сделали прототип промышленного ЧПУ. Мы использовали Python, Cython и язык С, чтобы разработать гибкую систему, способную управлять различными аппаратными конфигурациями для решения производственных задач. В рамках доклада мы рассмотрим следующие темы: Архитектура приложения ЧПУ: выбор дизайна, обеспечивающего гибкость и адаптивность системы Расчет точной траектории движения Интеграция аппаратного и программного обеспечения Достижение короткого цикла синхронизации для нескольких приводов (двигателей) Приглашаем вас принять участие в докладе, где мы поделимся опытом создания легковесного ЧПУ с поддержкой EtherCAT на Python и C.

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Как использовать serverless и не наломать дров

В этом докладе я расскажу о неожиданностях использования serverless по сравнению с server подходом. Зачем и почему serverless нужен Как делать версионирование, canary deployment, релизы в AWS Lambda и другие вещи для production ready бэкенд разработки Об особенностях python разработки под лямбды, о бесполезности асинхронности, сложности дебага ошибок, о поражающей скорости деплоймента кода в продакшен Как потратить сотни долларов на метрики и логи, которые никто не читает О том, как не сломать базу, если в нее ходят сразу 2–3 тысячи экземпляров лямбд

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Да кто такие эти ваши тайп-чекеры?

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

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео
     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Функциональщина в Python — это плохая идея?

Функциональное программирование — не самый популярный подход к написанию кода на Python. Но у ФП в Python есть активные сторонники. Они широко применяют и продвигают модули вроде functools, itertools из стандартной библиотеки и пакеты вроде toolz, funcy, returns и др. Мы рассмотрим, как идеи элегантного ФП кода и красивых математических абстракций сталкиваются с реальностью интерпретатора CPython и культуры pythonic кода. Доклад будет полезен программистам на Python, интересующимся функциональным программированием (уже применяющим его или заинтересованным в применении) и желающим обсудить, насколько ФП нужно и полезно им в Python. Предполагается знание основных концепций ФП (чистые функции, побочные эффекты, функции высшего порядка).

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Mojo — революция или хайп?

В мае разработчики движка Modular опубликовали публичную версию языка Mojo. Код на Mojo выглядит один-в-один, как код на питоне, и это не случайно. Mojo — это одновременно под- и надмножество питона, позволяющее выжимать адскую производительность в требовательных к CPU задачах — например, в задачах ML и AI. Подробностей пока мало: запустить Mojo локально нельзя, можно лишь воспользоваться специальной версией Jupyter Notebook, доступ к которой выдаётся через лист ожидания. Из материалов про Mojo пока доступны в основном только красивые презентации его авторов (показывающие, например, ускорение относительно CPython в тысячи раз на задаче умножения двух матриц). Я получил доступ к превью Mojo и немного в нём поковырялся. Так что теперь давайте вместе во время доклада попробуем разобраться, есть ли у этой разработки шансы на революцию, или это просто попытка выехать на хайпе вокруг AI?

     28.03.2024       Выпуск 537 (25.03.2024 - 31.03.2024)       Видео

Эволюция нового сервиса и типичные ошибки при его развитии

В рамках доклада я расскажу про возможные пути развития нового сервиса, а также поделюсь опытом, куда может завести недопроектирование и перепроектирование на разных этапах развития проекта. Затронем: - Общение с бизнесом - Проектирование - Тестирование и многое другое Доклад будет полезен тем, кто хочет запустить сервис, который будет поддерживаться и развиваться в условиях меняющихся требований.

     13.03.2024       Выпуск 535 (11.03.2024 - 17.03.2024)       Видео

Практическая сторона тестов

Поделюсь личным опытом болей и радостей жизни с тестами и без. Обсудим лучшие и худшие практики. Покурим вместе код.

     13.03.2024       Выпуск 535 (11.03.2024 - 17.03.2024)       Видео

Переход от Statsd к Prometheus

Про то, как структурировать метрики прометея в коде, выстроить удобные абстракции. Как меняется парадигма при переходе со statsd на прометей. Подводные камни при работе с прометеем.

     22.02.2024       Выпуск 532 (19.02.2024 - 25.02.2024)       Видео
     15.02.2024       Выпуск 531 (12.02.2024 - 18.02.2024)       Видео

Hatch для сборки и распространения Python пакетов

Сборка Python пакета через Hatch и публикация на PyPI и внутренних ресурсах. Почему нужно отказаться от setuptools и забыть про setup.py. Откуда взялся Hatch, нужен ли нам ещё один стандарт, а также почему мы остановились на Hatch.

     15.02.2024       Выпуск 531 (12.02.2024 - 18.02.2024)       Видео

INSTLD: зависимости на автомате

О библиотеке INSTLD, которая автоматизирует установку Python-пакетов. Вы просто пишете в коде "import" и библиотека ставится сама, а после остановки программы — удаляется. Доступны режимы интерактивной консоли и запуска скрипта.

     01.02.2024       Выпуск 529 (29.01.2024 - 04.02.2024)       Видео
     28.12.2023       Выпуск 523 (25.12.2023 - 31.12.2023)       Видео
     01.12.2023       Выпуск 519 (27.11.2023 - 03.12.2023)       Видео

Альтернативные питоны: что нового, и стоит ли оно того?

Всегда существовало множество альтернативных реализаций Python, и хотя cpython развивается, развиваются и альтернативы. В этом докладе мы пройдемся по самым популярным и современным из них, посмотрим, что они предлагают, какие проблемы решают и, наконец, для каждого из них найдем ответ на вопрос: "Стоит ли мне перейти с cpython на X прямо сейчас?"