DevBrain – Telegram
DevBrain
3.04K subscribers
28 photos
2 videos
9 files
711 links
Автор @adilkhash

Веду блог https://khashtamov.com/
Download Telegram
Django 5.2 beta 1 has been released: https://www.djangoproject.com/weblog/2025/feb/19/django-52-beta-1-released/

Django 5.2 это LTS версия релиз которой намечен на апрель 2025 года.
🔥8👎3
Релиз Django 5.2

Сегодня вышла LTS версия любимого веб-фреймворка Django — Django 5.2: https://www.djangoproject.com/weblog/2025/apr/02/django-52-released/

Из новых фич:

композитный первичный ключ
— новый тег simple_blog_tag

Да и ещё много всякого мелкого, ознакомиться можно тут.
🔥6👍2
Нашел полезную статью про migration squashing в Django: https://jacklinke.com/squashing-django-migrations-the-easy-way
Не часто приходится удалять django apps из проектов, но когда приходится, то схлопывать миграций это база.

Узнал про полезный django-app django-model-info
👍5
Forwarded from DataEng
Доклады с PyCon US 2025 🐍🐍🐍

Когда я был на PyCon US в 2016 году в Портленде, то записи докладов в сети появлялись в тот же день, но последние года 4 организаторы решили на этом зарабатывать, и записи с конференций появляются со значительной задержкой (несколько месяцев и больше). В этот раз ситуация немного лучше, и на официальном Ютуб канале уже доступны спонсорские доклады для просмотра:

High-Performance Python: Faster Type Checking and Free Threaded Execution

Building AI Applications the Pydantic Way

Building Scalable AI Tool Servers with Model Context Protocol (MCP) and Heroku

Evolving Django: What We Learned by Integrating MongoDB

Accelerated Python: The Community and Ecosystem

Полный список можно посмотреть в плейлисте (сейчас доступно 11 докладов)

Я так понимаю, что все записи уже доступны, но скрыты от нежелательных глаз. Когда именно появятся все доклады неизвестно, но надеюсь в самое ближайшее время. В этот раз было много интересных тем.
👍9👎1
Ух, давненько я не писал в блог. Почти 2 года и ни одного поста за это время. Исправляюсь, держите: https://khashtamov.com/ru/django-orm-and-simplelazyobject/
Недавно столкнулся с задачей, где мне захотелось использовать "ленивые" вычисления и Django ORM. Что получилось, читайте в посте.
👍8
Forwarded from DataEng
На Ютуб-канале CultRepo вышел большой документальный фильм про наш любимый язык программирования — Python.

Python: The Documentary | An origin story

Сам ещё не смотрел, но уже в предвкушении!
👍2🔥2
Django 6.0 alpha 1

Вышла первая альфа версия Django 6.0. Релиз финальной версии предполагается 3 декабря 2025 года. Что нас ожидает в новом релизе:

— улучшена безопасность через CSP (Content-Security Policy)
Template Partials, появилась возможность использовать маленькие куски разметки между шаблонами
Фоновые задачи, наконец в Django завезли из коробки поддержку фоновых задач (выполнение вне цикла запрос-ответ)

Это основные фичи в предстоящем релизе, но есть ещё много всякого в том числе то, что ломает обратную совместимость. Более подробно читайте тут.
🔥6👍4
Python 3.14 уже здесь!

Пару часов назад вышел финальный релиз новой версии Python 3.14. Это, пожалуй, один из самых мощных релизов на моей памяти. Новая версия несёт в себе ряд крутых фич, а именно:
- полная поддержка Free-threaded Python
- T-strings, спорная фича, но на мой взгляд удобно иметь в стандартной библиотеке (синтаксис знакомых нам f-strings)
- zstd внутри стандартной либы, один из самых эффективных алгоритмов сжатия данных
- поддержка multiple interpreters из коробки
- uuid 6-8, на 40% быстрее

И многое другое, полный список изменений ловите по ссылке: https://pythoninsider.blogspot.com/2025/10/python-3140-final-is-here.html
🔥26👍2👎1
Паттерны и анти-паттерны использования паттерн-матчинга в Питоне

Наткнулся на доклад про паттерны паттерн-матчинга 😁 и мне он понравился: Patterns and Anti-Patterns in Python's Structural Pattern Matching
Доклад очень понравился, несмотря на то, что паттерн-матчингом я пользуюсь с самого его появления (кажется в 3.10), я подчерпнул полезное для себя. Что понравилось? Последний пример, где Brett показывает обработку semi-structured JSON. Я вспомнил, что часто внешние API могут возвращать разный формат JSON в зависимости от состояния, но мне в голову никогда не приходила идея обернуть обработку этого в match/case.

Элегантно! 💡
👍7
Вышла новая версия моего небольшой django аппа django-trix-editor для интеграции текстового редактор Trix в Django — 0.4.1, в ней исправлена проблема с тёмной темой Django Admin. Релиз состоялся благодаря неравнодушным контрибьюторам.
👍12🔥3
🤯 Браузер — кладбище открытых вкладок

Миллион открытых табов в браузере, знакомо? У меня до недавнего времени была такая же проблема. Периодически давал себе обещание, что буду следить за тем, что открываю, но спустя некоторое время снова сотня новых табов в браузере, и происходит это незаметно. В основном из-за желания сохранить что-то и прочитать/посмотреть позже, но "позже" не наступает, а FOMO растёт 😁

Из неприятных последствий:

🐢 медленный запуск браузера
💾 повышенное потребление оперативки (с моими 128 Гб можно пару тысяч открыть),
🧠 снижение концентрации внимания

🚀 Моё решение

Внезапно мне в голову пришла идея написать плагин для ограничения количества открытых табов. Сейчас с помощью LLM и Agentic coding сделать это можно моментально. Придумал и спустя десять минут плагин готов — Tabooo

Пользуйтесь! Лично себе поставил ограничение в 12 табов.

💡А что делать с нужными ссылками?

Страх потерять важную ссылку — главная причина, по которой мы не закрываем вкладки. Я решил и эту проблему! Я создал специальный букмарк-сервис с удобным плагином и даже Telegram-ботом, чтобы вы могли сохранять ссылки в одно касание, не захламляя браузер! Оставьте комментарий под этим постом (или в личку)! Если наберется интерес, я поделюсь ссылкой на сервис с плагином в следующем посте. Он бесплатный.

А пока пользуйтесь плагином для ограничения табов: Установить Tabooo из Chrome Web Store
🔥10👍3👎1
Django 6.0 beta 1

Вышла первая бетка новой мажорной версии Django 6.0: https://www.djangoproject.com/weblog/2025/oct/22/django-60-beta-released/
👍2👎1🔥1
Зачем нужен новый REST API для Django?

Последний месяц я крайне увлечен созданием https://github.com/wemake-services/django-modern-rest
(Кстати, у нас уже >200 звезд и 26 контрибьюторов при 0 релизов)

Ключевой вопрос – зачем? Что будет нового?

Во-первых, я крайне сильно люблю Django. Основная причина – под него есть буквально любые библиотеки. Все то, что в FastAPI нужно героически писать руками – в джанге уже давно есть и работает.
Но, есть несколько основных причин, почему люди думают, что не любят джангу:
1. DRF, тут без лишних слов – он ужасен. Нет типизации, нет async, очень сложно работать с ним в сложных случаях
2. Многие считают, что джанга - сложная. Однако, она как FastAPI или Litestar может спокойно уместиться в один файл: https://django-modern-rest.readthedocs.io/en/latest/pages/micro-framework.html
3. Есть критика за архитектуру: тут нечего особо даже комментировать. На любом фреймворке можно писать хорошо, на любом можно писать плохо. Слой фреймворка очень тонкий
4. Медленный. А вот тут остановимся подробнее.

На скринах выше можно сравнить, что с django-modern-rest, без нескольких будущих оптимизаций (привет cython и rust!), голая джанга начинает выглядеть не так уж и медленнее FastAPI: бенчи.

Во-вторых, Django на длительный срок был в плену DRF. Который морально устарел еще в середине десятых.
Потом появилась django-ninja, которая хоть и намного лучше, но все равно не решает главную задачу: интеграция с существующими тулами. Конечно, если затащить FastAPI дизайн в чужой мир, то ничего не будет нормально работать 🌚️

Вот такие проблемы мы решаем.

Одной строкой:
- Супер строгая OpenAPI схема и валидация при разработке, что мы ее соблюдаем
- Полная типизация всего
- Нормальный способ создания АПИ, без god-functions a-la FastAPI
- async без sync_to_async
- Быстро: msgspec для парсинга json (самый быстрый способ в питоне), практически 0 работы в рантайме (все делаем при импорте), оптимизации роутера (быстрее дефолтного в 51 раз)
- Пидантик, msgspec, или любой другой способ выражать модели. Хоть adaptix
- Полная поддержка всего существующего в Django. От декораторов до миддлварь (с полной валидацией и OpenAPI схемой!)
- OpenAPI схема из коробки
- Удобное тестирование с polyfactory
- property-based тесты вашего АПИ одной командой благодаря schemathesis

Что еще будет:
- RSGI (да, на #rust скорее всего) под granian, в теории можем побить FastAPI после такого
- SSE с автоматической OpenAPI спекой и умной валидацией схемы
- JWT или любая другая аутентификация
- Какие-то части (скорее всего валидацию) мы компильнем cython, чтобы было еще быстрее

Modern? Modern!
Осталось дождаться. Релиз скоро!
И еще скоро будут несколько новых видео.

Мы регулярно постим задачки в @opensource_findings_python, так что можно нам помочь.
А если кто хочет мне закинуть на развитие опенсорса (за написание 32500 строк кода за 2 недели), то мой бусти открыт: https://boosty.to/sobolevn
Ну и звезды можно ставить, конечно же. Там посмотрите, какие люди нас уже советуют.

Большое спасибо Александру, Алексею, Роману, Максиму и всем остальным за неоценимую помощь. Пацаны, без вас никак! Лучшее сообщество!

Обсуждение: а чего бы вам хотелось в modern rest фреймворке? Чего сильно не хватает сейчас?
🔥17👎3👍1
Доклады DjangoCon US 2025

На официальном Ютуб канале уже доступны видео с прошедшей в этом году конференции DjangoCon US 2025 — плейлист.
👍6
Django 6.0 🥳

Состоялся долгожданный мною релиз Django 6.0: https://www.djangoproject.com/weblog/2025/dec/03/django-60-released/
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍1👎1