⚡️ Вышел PyCharm 2025.3
В новом релизе JetBrains объединили пользователей Community с основным дистрибутивом, усилили инструменты для Data Science и удалённой разработки, а также расширили поддержку современных LSP-сервисов.
Коротко — самое важное:
— Community Edition переехал в единый дистрибутив PyCharm, вместе с полной поддержкой Jupyter.
— Полная работа с Jupyter-ноутбуками при удалённой разработке (Pro): интерактивные таблицы, графики, Variables, Data View.
— uv теперь менеджер окружений по умолчанию — быстрый старт и автоматическая установка нужной версии Python.
— Упреждающий анализ данных для pandas: пропуски, выбросы, дубликаты, корреляции + Fix with AI.
— Поддержка Ruff, Pyrefly, Pyright и ty через LSP — форматирование, типы, выводимые аннотации прямо в коде.
— Новое окно Process Output: вся диагностика команд IDE в одном месте, без модальных поп-апов.
— Новая тема интерфейса Islands по умолчанию.
— Обновлённый немодальный Welcome-экран с быстрым стартом проектов.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
В новом релизе JetBrains объединили пользователей Community с основным дистрибутивом, усилили инструменты для Data Science и удалённой разработки, а также расширили поддержку современных LSP-сервисов.
Коротко — самое важное:
— Community Edition переехал в единый дистрибутив PyCharm, вместе с полной поддержкой Jupyter.
— Полная работа с Jupyter-ноутбуками при удалённой разработке (Pro): интерактивные таблицы, графики, Variables, Data View.
— uv теперь менеджер окружений по умолчанию — быстрый старт и автоматическая установка нужной версии Python.
— Упреждающий анализ данных для pandas: пропуски, выбросы, дубликаты, корреляции + Fix with AI.
— Поддержка Ruff, Pyrefly, Pyright и ty через LSP — форматирование, типы, выводимые аннотации прямо в коде.
— Новое окно Process Output: вся диагностика команд IDE в одном месте, без модальных поп-апов.
— Новая тема интерфейса Islands по умолчанию.
— Обновлённый немодальный Welcome-экран с быстрым стартом проектов.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
👍7❤4🔥4
В свежем релизе фреймворк усиливает совместимость между СУБД, упрощает работу с email, улучшает ORM, добавляет удобства в шаблонах и снижает риск «выгорания» первичных ключей.
По сути эта статья – практическое руководство по миграции с пояснениями «почему именно так».
📚 Читайте и комментируйте на Хабр.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥4👍3
⚔️ Pyrefly & ty — два новых Rust-анализатора типов для Python
Оба работают инкрементально, используют Ruff для AST и показывают отличную скорость. В бенчмарках на PyTorch и pyrefly и ty оказываются в 10–20 раз быстрее классических анализаторов, причём ty в тестах стабильно обгоняет pyrefly ещё в 2–3 раза.
Pyrefly идёт по пути агрессивного вывода типов — пытается вывести максимум даже из полностью неаннотированного кода и за счёт этого ловит тонкие ошибки, которые mypy и pyright пропускают. Минус такой стратегии — иногда появляются ошибки там, где Python-программа вообще-то работает. Зато дженерики, перегрузки и сложные контейнеры pyrefly уже сейчас обрабатывает весьма уверенно.
ty, наоборот, придерживается принципа gradual guarantee: если код рабочий, анализатор не должен превращать его в «кладбище ошибок». Он реже делает жёсткие выводы, выдаёт значительно более читабельные ошибки и вводит крутые новые возможности вроде intersection types и negation types — единственная реализация таких типов в Python-анализаторах на сегодня.
Пощупать можно уже сейчас: у pyrefly есть sandbox, у ty — playground.
@python_for_devs
Оба работают инкрементально, используют Ruff для AST и показывают отличную скорость. В бенчмарках на PyTorch и pyrefly и ty оказываются в 10–20 раз быстрее классических анализаторов, причём ty в тестах стабильно обгоняет pyrefly ещё в 2–3 раза.
Pyrefly идёт по пути агрессивного вывода типов — пытается вывести максимум даже из полностью неаннотированного кода и за счёт этого ловит тонкие ошибки, которые mypy и pyright пропускают. Минус такой стратегии — иногда появляются ошибки там, где Python-программа вообще-то работает. Зато дженерики, перегрузки и сложные контейнеры pyrefly уже сейчас обрабатывает весьма уверенно.
ty, наоборот, придерживается принципа gradual guarantee: если код рабочий, анализатор не должен превращать его в «кладбище ошибок». Он реже делает жёсткие выводы, выдаёт значительно более читабельные ошибки и вводит крутые новые возможности вроде intersection types и negation types — единственная реализация таких типов в Python-анализаторах на сегодня.
Пощупать можно уже сейчас: у pyrefly есть sandbox, у ty — playground.
@python_for_devs
❤6👍4🔥2
🎓 Нашли бесплатный курс Introduction to LangChain (Python)
Внутри:
— 28 уроков
— 1.5+ часа видео
— практические проекты
Для тех, кто хочет уверенно войти в агентные системы: https://academy.langchain.com/courses/foundation-introduction-to-langchain-python
@python_for_devs
Внутри:
— 28 уроков
— 1.5+ часа видео
— практические проекты
Для тех, кто хочет уверенно войти в агентные системы: https://academy.langchain.com/courses/foundation-introduction-to-langchain-python
@python_for_devs
👍8🔥4❤3
This media is not supported in your browser
VIEW IN TELEGRAM
🎥 Manim — математические анимации уровня 3Blue1Brown на Python
Статичные формулы и графики плохо объясняют сложные идеи. Manim решает эту проблему, позволяя создавать математические анимации кодом — в том самом стиле, который сделал 3Blue1Brown эталоном визуальных объяснений.
Через Python можно управлять всем: фигурами, LaTeX-формулами, их пошаговыми преобразованиями, движением камеры и траекториями. Manim особенно хорош там, где важно показать процесс рассуждения, а не просто финальный результат — выводы формул, геометрию, графики функций.
📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
Статичные формулы и графики плохо объясняют сложные идеи. Manim решает эту проблему, позволяя создавать математические анимации кодом — в том самом стиле, который сделал 3Blue1Brown эталоном визуальных объяснений.
Через Python можно управлять всем: фигурами, LaTeX-формулами, их пошаговыми преобразованиями, движением камеры и траекториями. Manim особенно хорош там, где важно показать процесс рассуждения, а не просто финальный результат — выводы формул, геометрию, графики функций.
📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
👍7❤3🔥3
⚡️ Опубликована предварительная страница What’s new in Python 3.15
До релиза ещё далеко, документ в статусе draft и будет заметно меняться, но часть ключевых направлений уже видна.
Коротко, что уже заявлено:
— PEP 799: отдельный пакет для профилирования и организации profiling-инструментов
— PEP 799: Tachyon — высокочастотный статистический sampling-профайлер
— PEP 686: UTF-8 становится кодировкой по умолчанию
— PEP 782: новый C API PyBytesWriter для создания bytes-объектов
— Существенные обновления JIT-компилятора
— Улучшенные сообщения об ошибках
Полный список изменений и детали в официальном changelog.
@python_for_devs
До релиза ещё далеко, документ в статусе draft и будет заметно меняться, но часть ключевых направлений уже видна.
Коротко, что уже заявлено:
— PEP 799: отдельный пакет для профилирования и организации profiling-инструментов
— PEP 799: Tachyon — высокочастотный статистический sampling-профайлер
— PEP 686: UTF-8 становится кодировкой по умолчанию
— PEP 782: новый C API PyBytesWriter для создания bytes-объектов
— Существенные обновления JIT-компилятора
— Улучшенные сообщения об ошибках
Полный список изменений и детали в официальном changelog.
@python_for_devs
Python documentation
What’s new in Python 3.15
Editor, Hugo van Kemenade,. This article explains the new features in Python 3.15, compared to 3.14. For full details, see the changelog. Summary – Release highlights: PEP 799: A dedicated profilin...
👍8⚡3🔥2❤1
В новой статье рассматриваем релиз через призму внутреннего устройства интерпретатора и производительности:
– свободная многопоточность
– конкурентные интерпретаторы
– удалённая отладка
– инкрементальная сборка мусора
– и новый Tail Calling интерпретатор
Это взгляд инженера на то, как Python становится быстрее, масштабируемее и взрослее.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3🔥2
🤔 Почему Python иногда «течёт» по памяти — и при чём тут weakref
В Python управление памятью в основном держится на подсчёте ссылок: объект живёт, пока на него есть хотя бы одна сильная ссылка. В большинстве случаев это работает прозрачно, но есть коварные сценарии — циклические ссылки, кэши и списки подписчиков — где объекты начинают жить дольше, чем нужно.
Да, в CPython есть GC, который умеет разрывать циклы. Но он запускается не сразу, работает не бесплатно и не спасает от логических утечек, когда вы сами «держите» объект через кэш или реестр.
Здесь на сцену выходят слабые ссылки (
На практике это даёт несколько очень полезных паттернов:
— автоочищающиеся кэши через
— реестры и singleton-подобные структуры, которые не держат объекты насильно
— списки подписчиков (`WeakSet`), где не нужно вручную отписывать «умершие» объекты
— аккуратную работу с долгоживущими менеджерами и короткоживущими сущностями
Отдельный бонус — callbacks у
📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
В Python управление памятью в основном держится на подсчёте ссылок: объект живёт, пока на него есть хотя бы одна сильная ссылка. В большинстве случаев это работает прозрачно, но есть коварные сценарии — циклические ссылки, кэши и списки подписчиков — где объекты начинают жить дольше, чем нужно.
Да, в CPython есть GC, который умеет разрывать циклы. Но он запускается не сразу, работает не бесплатно и не спасает от логических утечек, когда вы сами «держите» объект через кэш или реестр.
Здесь на сцену выходят слабые ссылки (
weakref). Они позволяют ссылаться на объект, не продлевая его жизнь. Как только пропадают сильные ссылки — объект удаляется, даже если на него кто-то «смотрит» через weakref.На практике это даёт несколько очень полезных паттернов:
— автоочищающиеся кэши через
WeakValueDictionary— реестры и singleton-подобные структуры, которые не держат объекты насильно
— списки подписчиков (`WeakSet`), где не нужно вручную отписывать «умершие» объекты
— аккуратную работу с долгоживущими менеджерами и короткоживущими сущностями
Отдельный бонус — callbacks у
weakref: можно повесить логику очистки, которая сработает ровно в момент сборки объекта.📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
Хабр
Как устроено управление памятью в Python и какую роль в нём играют слабые ссылки
Команда Python for Devs подготовила перевод статьи о слабых ссылках в Python и управлении памятью. В материале разбирается, как работает подсчёт ссылок, почему циклические зависимости приводят к...
👍6❤2🔥2
Forwarded from AI for Devs
На прошлой неделе Habr опубликовал итоги года — и наш проект попал в ТОП-2 среди UGC-авторов (независимых, не аффилированных с компаниями) и в ТОП-8 overall!
Учитывая, что активно публиковаться мы начали только в сентябре, результат за один квартал, на мой взгляд, более чем достойный. Проект изначально запускался как эксперимент — и теперь уже можно уверенно сказать, что эксперимент удался.
В следующем году постараемся как минимум сохранить текущие темпы, а как максимум — заметно их преумножить. Если вы следите только за одним из каналов проекта, напоминаю полный список наших ресурсов:
— @ai_for_devs — флагман проекта. Неудивительно, учитывая взрывной рост прикладного ИИ именно для разработчиков
— @go_for_devs — второй по популярности, но самый активный по вовлечённости
— @python_for_devs — канал, с которого всё началось, и этим он прекрасен
— @js_for_devs — здесь всё ещё впереди. Если вы из frontend-мира — добро пожаловать, догоним остальных 🙂
Суммарно за проектом уже следит более 6.5 тысяч человек!
Поздравляю всех с наступающим Новым годом и желаю профессионального роста и сильных результатов в 2026!
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Хабр — Итоги 2025
Привет, Хабр! Ну, как настроение? Кажется, что мир начинает вращаться с какой-то практически неуловимой для человеческого внимания скоростью: ИИ, нейрослоп, мошенники, зоопарк хакеров найма, утечки,...
👍7🔥6❤3
⚡️ DuckDB разрушает мифы: 1 ТБ данных — за секунды, без Spark
Принято считать, что терабайты аналитики – это всегда Spark, кластеры и сложная инфраструктура. Но свежий бенчмарк показывает обратное: DuckDB спокойно агрегирует 1 ТБ данных на одном движке — и делает это менее чем за 30 секунд.
Запрос самый обычный: группировка по дате,
Финальный буст даёт сортировка данных при загрузке. Благодаря zonemap-индексам одна из итераций укладывается меньше чем в 10 секунд. Просто потому что данные лежат «правильно».
Полный разбор, бенчмарки и код — читайте целиком на Хабре.
Принято считать, что терабайты аналитики – это всегда Spark, кластеры и сложная инфраструктура. Но свежий бенчмарк показывает обратное: DuckDB спокойно агрегирует 1 ТБ данных на одном движке — и делает это менее чем за 30 секунд.
Запрос самый обычный: группировка по дате,
count(*) и sum(value). Никаких синтетических трюков. Локально на MacBook M2 Pro — около 1,5 минуты. В облачном MotherDuck — в среднем ~17 секунд.Финальный буст даёт сортировка данных при загрузке. Благодаря zonemap-индексам одна из итераций укладывается меньше чем в 10 секунд. Просто потому что данные лежат «правильно».
Полный разбор, бенчмарки и код — читайте целиком на Хабре.
👍6🔥2❤1
🔥 Anthropic инвестируют $1.5 млн в Python — и делают ставку на безопасность open source
Anthropic объявили о двухлетнем партнёрстве с Python Software Foundation и инвестируют $1.5 млн в развитие Python-экосистемы. Ключевой фокус — безопасность цепочки поставок и защита PyPI.
Деньги пойдут на конкретные инженерные изменения:
– разработку проактивных инструментов анализа всех пакетов, загружаемых в Python Package Index, вместо текущей в основном реактивной модели
– создание датасета известного malware для анализа поведения и capability-based детекта
– улучшения, которые потенциально можно будет перенести и на другие open source репозитории, не только Python
@python_for_devs
Anthropic объявили о двухлетнем партнёрстве с Python Software Foundation и инвестируют $1.5 млн в развитие Python-экосистемы. Ключевой фокус — безопасность цепочки поставок и защита PyPI.
Деньги пойдут на конкретные инженерные изменения:
– разработку проактивных инструментов анализа всех пакетов, загружаемых в Python Package Index, вместо текущей в основном реактивной модели
– создание датасета известного malware для анализа поведения и capability-based детекта
– улучшения, которые потенциально можно будет перенести и на другие open source репозитории, не только Python
@python_for_devs
🔥15👍5⚡3👏1
В новой статье разбираем попытку превратить Python в формат распространения уровня «один бинарник»
Идея простая: вместо Docker-образов с интерпретатором и зависимостями компилировать обычные Python-функции в кроссплатформенные исполняемые файлы, которые запускаются вообще без Python.
Работает это следующим образом: Python-код разбирают в AST, строят промежуточное представление, затем "понижают" его до C++ и компилируют под нужную платформу — от серверов до мобилок и WebAssembly.
Интересная часть — оптимизация. Из одной Python-функции генерируют сразу много эквивалентных C++-программ с разными библиотеками, алгоритмами и ускорителями. Все варианты тестируются на реальном железе, собирается телеметрия, и дальше система эмпирически выбирает самый быстрый путь.
LLM используют утилитарно: для генерации и поддержки большого количества C++-операторов под разные библиотеки.
Для пользователя всё сводится к декоратору
Идея простая: вместо Docker-образов с интерпретатором и зависимостями компилировать обычные Python-функции в кроссплатформенные исполняемые файлы, которые запускаются вообще без Python.
Работает это следующим образом: Python-код разбирают в AST, строят промежуточное представление, затем "понижают" его до C++ и компилируют под нужную платформу — от серверов до мобилок и WebAssembly.
Интересная часть — оптимизация. Из одной Python-функции генерируют сразу много эквивалентных C++-программ с разными библиотеками, алгоритмами и ускорителями. Все варианты тестируются на реальном железе, собирается телеметрия, и дальше система эмпирически выбирает самый быстрый путь.
LLM используют утилитарно: для генерации и поддержки большого количества C++-операторов под разные библиотеки.
Для пользователя всё сводится к декоратору
@compile и CLI.Хабр
Python без Python: как запускать код где угодно
Команда Python for Devs подготовила перевод статьи о том, как можно компилировать Python в быстрые, кроссплатформенные исполняемые файлы без изменения исходного кода. Автор подробно...
🔥8👍6😱5⚡2
За год вышло всего два патч-релиза к версии 3.1.0, без новых minor-версий и без заметных изменений для пользователей.
Активность на GitHub это подтверждает: в Flask и Werkzeug за год замёржено 43 PR против 131 в 2024. При этом доля PR, закрытых без мерджа, выросла до 72% — исторически она держалась около 30%. Вероятные причины: проект всё чаще воспринимается как «завершённый» и рост низкокачественных PR, сгенерированных AI-инструментами.
На фоне этого FastAPI резко ускорился. В 2025 году Flask и FastAPI почти сравнялись по загрузкам с PyPI, а в опросах разработчиков FastAPI уже вышел вперёд. Flask остаётся массовым и стабильным, но темп развития ядра и экосистемы заметно снизился.
Подробнее в новой статье на Хабр.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8😢2❤1🔥1😁1😱1