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

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

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

Как мы создали бота для честных розыгрышей

Было бы скучно использовать готового Telegram-бота для этого (дело не только в скуке, но об этом дальше по тексту). Тогда я решил сделать своего бота для проведения розыгрышей

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

Почему асинхронный Python не такой популярный?

Недавно на Youtube появилась документалка о Python. Примерно в середине ленты есть драматический эпизод о том, как переход от Python 2 к 3 разделил сообщество (спойлер: в конечном итоге этого не случилось).

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

uv vs pip: Managing Python Packages and Dependencies

Compare uv vs pip with benchmarks, speed tests, and dependency management tips. Learn which tool is best for your Python projects.

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

Двойное дно: реализуем свой формат шифрования .CHA на Python и прячем его в стеганографии

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

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

Самый быстрый способ читать Excel в Python

В статье результаты тестирования pandas, openpyxl, Tablib, DuckDB, LibreOffice и даже связки с Rust. Кто справился лучше всех и как за 4 секунды Python «проглотил» полмиллиона строк — читайте в статье.

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

Real-Time Reports With pytest

This article describes how you can use custom Pytest hooks to generate real-time reports.

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

5 Common Bottlenecks in pandas Workflows

Fan screaming? Laptop grinding to a halt? You’re probably running pandas on more data than your CPU wants to handle. This post breaks down five common bottlenecks in pandas (slow reads, memory-heavy joins, sluggish groupbys), typical CPU workarounds, and how a one-line cudf.pandas extension unlocks GPU acceleration—with example code and Colab links to try.

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

Как подружить MISP и Python? Мой опыт

Если вы работаете в сфере кибербезопасности или интересуетесь ей, то, скорее всего, знаете о существовании индикаторов компрометации. «Да, они есть, и что дальше?» — скажете вы. Ответ: их нужно где-то хранить. Для этой задачи есть различные платформы, одни платные, другие — нет. Сегодня мы сфокусируемся на MISP

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

40 млн GitHub-репозиториев: открытый датасет метаданных для анализа и обучения

Я собрал датасет метаданных по ~40 млн публичных репозиториев GitHub. Внутри — звёзды, форки, лицензии, язык, описание, размер, дата создания и др. Схема по смыслу максимально совместима с GH Archive/GitHub API.

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

Случаи из разработки на асинхронных фреймворках в Python. Часть 1. FastAPI

Асинхронность в Python кажется простой — добавил async/await, и всё летает. Но на практике синхронные вызовы внутри асинхронного кода превращаются в «бутылочное горлышко», блокируя event loop и приводя к непредсказуемым последствиям: от подвисших запросов до деградации производительности. Как разбираться в таком случае и почему важно знать особенности фреймворков в подкате...

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

Как НЕ нужно писать автотесты на Python

Разбираем самые странные антипаттерны в автотестах на Python: от sleep(0.1) и стрелочек вниз до глобальных курсоров и "фреймворков" на 3500 строк. Почему так делать не стоит и какие есть взрослые альтернативы.

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

Клик без промаха: комбинированный подход в автоматизации Windows-приложений на примере UWP

В мире web и тонких клиентов по-прежнему приходится тестировать классические приложения: Office apps, Explorer, Telegram, WhatsApp. Сегодня для примера мы возьмем WhatsApp. Погрузившись в автоматизацию ручных кликов в приложениях Windows с помощью Python, я попробовал несколько известных библиотек, каждая из которых поодиночке оставляла ощущение «чего-то не хватает».

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

Как локально и бесплатно распознать текст лекции или совещания и делать это регулярно

В новостях всё чаще говорят об «ИИ‑диктофонах» — гаджетах, которые записывают каждый ваш разговор в течение дня, отправляют аудио в облако, превращают его в текст и даже готовят краткую сводку по итогам. Звучит футуристично, но такие решения стоят дорого, требуют постоянной подписки и вызывают вопросы о приватности.

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

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

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

     31.08.2025       Выпуск 611 (25.08.2025 - 31.08.2025)       Статьи

Сводка от pythonz 24.08.2025 — 31.08.2025

А теперь о том, что происходило в последнее время на других ресурсах.

     31.08.2025       Выпуск 611 (25.08.2025 - 31.08.2025)       Статьи

Arch Linux на ZFS для людей: новый TUI-установщик archinstall_zfs

Установка Arch Linux на ZFS всегда была не очень тривиальным делом: нужно знать много тонкостей, прочитать кучу статей и различные вики, разобраться с флагами создания датасетов и пула, с конфигурацией initramfs и с тем, какие systemd сервисы стоит включать, с параметрами командной строки ядра и правильными конфигами. Если ставить вручную, то установка занимает целый вечер, с вдумчивым раскуриванием мануалов перед черной консолью. А можно ли проще?

     30.08.2025       Выпуск 611 (25.08.2025 - 31.08.2025)       Статьи

Паттерны проектирования в Python, о которых следует забыть. Часть вторая

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

     30.08.2025       Выпуск 611 (25.08.2025 - 31.08.2025)       Статьи

Обработка результатов моделирования Fire Dynamics Simulator на Python (часть 1)

В основном моделирование развития пожара провожу в специализированном программном обеспечении Fire Dynamics Simulator (FDS), оно используется от Японии до США при обосновании отступлений требований пожарной безопасности. При моделировании развития пожара очень много времени занимает обработка результатов моделирования.