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

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

     04.09.2025       Выпуск 612 (01.09.2025 - 07.09.2025)       Статьи

Мониторинг Celery. Pull-модель

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

     01.09.2025       Выпуск 612 (01.09.2025 - 07.09.2025)       Статьи

Эволюция ForeignKey в Django: от наивной модели до продакшена

Как легко «сломать» внешние ключи в Django и что с этим делать. Если кратко, то unique_together больше не нужен, индексы на ForeignKey работают не так, как вы думаете, миграции могут блокировать продакшен, а правильный порядок операций и частичные индексы экономят гигабайты и спасают нервы.

     15.08.2025       Выпуск 609 (11.08.2025 - 17.08.2025)       Статьи

Combining Django signals with in-memory LRU cache

It's easy to combine functools.lru_cache with Django signals to get a good memoization pattern on Django ORM queries.

     10.08.2025       Выпуск 608 (04.08.2025 - 10.08.2025)       Статьи

Combining Django signals with in-memory LRU cache

It's easy to combine functools.lru_cache with Django signals to get a good memoization pattern on Django ORM queries.

     03.08.2025       Выпуск 607 (28.07.2025 - 03.08.2025)       Статьи

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

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

     02.08.2025       Выпуск 607 (28.07.2025 - 03.08.2025)       Статьи
     03.08.2025       Выпуск 607 (28.07.2025 - 03.08.2025)       Статьи

Как устроен пакет Django-Leaflet-Admin-List

Попросили рассказать про этот пакет, чем я и займусь.Пакет Django-Leaflet-Admin-List позволяет добавить карту со всеми географическими объектами на странице в отображение списка в админке Django.

     31.07.2025       Выпуск 607 (28.07.2025 - 03.08.2025)       Статьи
     29.07.2025       Выпуск 607 (28.07.2025 - 03.08.2025)       Статьи
     28.07.2025       Выпуск 607 (28.07.2025 - 03.08.2025)       Статьи
     23.07.2025       Выпуск 606 (21.07.2025 - 27.07.2025)       Статьи

Меньше нагрузки — больше запросов: искусство кеширования API

В этой статье расскажу про кеширование API (на примере Django Ninja): чем оно полезно бизнесу и когда его стоит внедрять.Когда ваш продукт начинает расти, а пользователей становится всё больше, любой повторяющийся запрос к серверу — это лишняя нагрузка. Даже если человек просто обновил страницу или несколько пользователей задали один и тот же вопрос приложению, сервер отвечает заново — и тратит на это ресурсы

     23.07.2025       Выпуск 606 (21.07.2025 - 27.07.2025)       Статьи
     15.07.2025       Выпуск 605 (14.07.2025 - 20.07.2025)       Статьи

How to Get Foreign Keys Horribly Wrong

Распространённые ошибки и возможности оптимизации в Django c Внешними ключами

     30.06.2025       Выпуск 603 (30.06.2025 - 06.07.2025)       Статьи

Как в Django реализовать заполнение профиля пользователя через Google

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

     28.06.2025       Выпуск 602 (23.06.2025 - 29.06.2025)       Статьи

Мой набор для Django

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

     27.06.2025       Выпуск 602 (23.06.2025 - 29.06.2025)       Статьи
     27.06.2025       Выпуск 602 (23.06.2025 - 29.06.2025)       Статьи

How to Enjoy Debugging in Production - Karen Tracey

Доклад с DjangoCon Europe 2025

     26.06.2025       Выпуск 602 (23.06.2025 - 29.06.2025)       Статьи

Peter Bengtsson: Native connection pooling in Django 5 with PostgreSQL

Enabling native connection pooling in Django 5 gives me a 5.4x speedup.

     25.06.2025       Выпуск 602 (23.06.2025 - 29.06.2025)       Статьи
     24.06.2025       Выпуск 602 (23.06.2025 - 29.06.2025)       Статьи

Круговой импорт в Python: как он ломает проекты и как его победить

Сегодня говорим о том, что в какой‑то момент словит почти каждый разработчик, особенно если вы не просто пишете скрипты, а строите проекты — будь то Django, Flask или кастомная архитектура с бизнес‑логикой в отдельных слоях. Речь про круговые импорты: они не объявляют о себе заранее, не фейлят весь проект громко и сразу, но подкрадываются исподтишка.