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

Собрали в одном месте самые важные ссылки
консультируем про IT, Python

     10.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Успеть за 48 часа: мой опыт участия в гейм-джемах

В этой статье я хочу поделиться своим опытом создания визуальных новелл за ограниченное время, а также полезными ресурсами. Что у нас имеется: соло-разработчик, 48 часа, движок ren’py и сомнительные знания питона. Что вы узнаете: как это было, полезные плагины для ren’py, полезные ресурсы, как распределять время и другое.

     10.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Контроль времени в Python-тестах: freeze, mock и архитектура Clock

Время — это одна из самых нестабильных переменных в коде (и не только). Оно безжалостно к CI, случайным багам и здравому смыслу. Особенно если вы пишете логику, где участвует datetime.now(), time.time() или utcnow(): TTL, крон-задачи, дедлайны, отложенные события, idempotency-окна, подписки, отложенная отправка писем, повторная авторизация — всё это работает с временными сдвигами. И всё это будет ломаться, если не заморозить время в тестах.В этой статье рассмотрим, как выстроить адекватную архитектуру контроля времени: от простых фиксаций до внедрения Clock-абстракции.

     09.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Гайд по overload: как написать один код на Python для разных бэкендов

В статье разберемся, как работает перегрузка в статических и динамических языках программирования. В конце покажу, как и зачем мы реализовали перегрузку на Python своим собственным способом.

     09.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Hi-Fi с Wi-Fi. Часть вторая: хочется помощнее, ватт на сто

В прошлой статье я делился опытом создания портативной мини-акустики с передачей аудио по Wi-Fi вместо Bluetooth. В этой — представляю её более мощную версию. Мы напечатаем корпус, усовершенствуем скрипты, разработаем фирменное приложение для Hi-Fi трансляции звука и добавим эквалайзер в систему.

     09.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Тонкости работы с логгированием в Python: краткий гайд для разработчиков

Логирование является одним из ключевых и важнейших элементов разработки и эксплуатации приложений. Оно дает ценную информацию всей цепочке заинтересованных лиц: от разработчиков и системных администраторов (отладка, мониторинг и т.д.) до руководителей бизнеса в целом (поведение пользователей, соблюдение нормативных требований и т.д.).

     11.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Релизы

django-extensions - 4.1

Набор пользовательских расширений для Django-проектов. Скачать можно по ссылке: https://pypi.python.org/pypi/django-extensions/

     09.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Три разные единицы измерения на одном графике с библиотекой Plotly

Будучи сторонницей минимализма во всем, в том числе и в визуализации данных, я избегаю попыток "впихнуть невпихуемое" в одну визуализацию. Лучше построю группу графиков. Но иногда попадается интересный визуал и хочется его воспроизвести.

     09.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Создаем игрушечный оконный менеджер в ретро-стиле Windows 3.x на Python

Знакомо, правда? Да, да - это "рабочий стол" Windows 3.1, которая вышла в 1992 году. И даже если вы не из того поколения, у которого сейчас свело олдскулы, вы, я думаю, все равно хоть раз в жизни видели эту ОС (хотя бы на картинке) и не остались к ней равнодушны.В этой статье мы напишем простенький игрушечный оконный псевдо-менеджер в стиле Windows 3.x.

     11.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Релизы

django-phonenumber-field - 8.1.0

Добавляет в модели Django дополнительное поле PhoneNumberField которое будет автоматически валидировать телефонный номер.. Скачать можно по ссылке: https://pypi.python.org/pypi/django-phonenumber-field/

     09.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи
     09.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Algorithms for High Performance Terminal Apps

This post by one of the creators of Textual talks about how to write high performing terminal applications. You may also be interested in the Talk Python interview on the same topic.

     08.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Как мы используем ML и нейромаркетинг для роста бизнеса: технический разбор

Согласно нашему исследованию на выборке 1,200 интернет-магазинов, 87% потенциальных клиентов действительно не находят нужные товары из-за фундаментальных маркетинговых ошибок.

     08.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Tail-calling: разбираемся в новом интерпретаторе в CPython

В последнее время в моём инфополе появилось много шума вокруг нового типа интерпретатора в Python: tail-calling. Я посмотрел PR на Github, из которого понял, что [[clang::musttail]] должен ускорить рантайм на 5%. Ещё я почитал Соболева, но понял только то, что эта инструкция генерирует вызов метода в asm-коде как jmp, а не call, то есть экономит один стэк-фрейм — посмотреть можно тут. Но почему эти инструкции в данном случае эквивалентны и сработают в CPython — непонятно. Так что давайте разбираться вместе!

     08.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи
     07.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи
     07.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

«Клюква» — автоматизация документации проектов на Python

Сегодня хочу рассказать вам о своем сервисе «Клюква».«Развесистая клюква» или просто «Клюква» в общем виде означает ложные или искаженные представления о чем‑либо. Как раз здесь мы приходим к написанию документации. К сожалению, составить и поддерживать документацию в актуальном состоянии — это проблема. Скорее всего проблема в том числе и в вашей компании.

     08.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Релизы

pymongo - 4.12.0

Python интерфейс для MongoDB. Скачать можно по ссылке: https://pypi.python.org/pypi/pymongo/

     08.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Релизы

celery - 5.5.1

Распределенная очередь задач. Скачать можно по ссылке: https://pypi.python.org/pypi/celery/

     07.04.2025       Выпуск 591 (07.04.2025 - 13.04.2025)       Статьи

Геопространственная обработка признаков

Основная задача обработки признаков — преобразовать данные в числовой вид, потому что ML-модели могут работать только с числами. Геопространственный контекст добавляет слои смысла: например, расположение кафе в центре города или на окраине может влиять на посещаемость сильнее, чем его меню. Представьте, что моделируете спрос на такси — координаты точек подачи станут важнее времени суток, если рядом метро закрывается на ремонт.