DevBrain
3.03K subscribers
28 photos
2 videos
9 files
712 links
Автор @adilkhash

Веду блог https://khashtamov.com/
Download Telegram
DjangoCon US 2023

В сети появились доклады с DjangoCon US 2023: https://bit.ly/3teUC3P
👍3
Forwarded from DataEng
Всем привет!

Я сделал курс по Luigi бесплатным для всех, велком изучать — Введение в Data Engineering: дата-пайплайны

Luigi это компактный инструмент для построения зависимых между собой задач на базе нескольких сущностей: Task, Target. Он идеально подойдёт там, где Airflow кажется избыточным инструментом. В далёком 2017 году я писал небольшой обзорный пост на Luigi у себя в блоге: Строим Data Pipeline на Python и Luigi. С тех пор мало что изменилось в концепции инструмента, он по прежнему компактный и простой, именно в этом вся его прелесть.
🔥9👍7
Forwarded from DataEng
Курс про Apache Airflow бесплатно

Решил выложить свой курс про Apache Airflow абсолютно бесплатно для всех: Apache Airflow 2.2: практический курс
За то время что существует курс, Apache Airflow успел обрасти множеством новых фич, которые только предстоит покрыть в будущем, возможно в виде отдельных роликов на Ютуб или в виде статей у себя в блоге.

В любом случае курс не потерял своей актуальности и может послужить неплохим введением для новичков и более опытных пользователей. Например, в курсе я подробно разбираю как развернуть у себя на сервере production-ready Airflow, а также настроить автодеплой дагов через GitHub Actions.

Велком!
🔥28👍3
Forwarded from DataEng
GIL и Python

Python, пожалуй, самый популярный язык программирования в дата инжиниринге несмотря на то, что его постоянно ругают за производительность и обжорство. Свои позиции он не сдал чего не скажешь, например, о Scala ☠️

Python своей "тормознутостью" отчасти обязан некогда архитектурному решению под названием GIL. Многие слышали эту аббревиатуру, но не все знают причину по которой появился GIL и как он работает под капотом. Если вам это интересно, то держите отличный доклад на русском языке: Зачем нужен GIL и как от него избавиться? от Евгения Афанасьева.

В Python версии 3.13, релиз которой будет уже в октябре, добавили опциональную возможность отключить GIL 😲, нюансы описаны в PEP-703. И про это есть в докладе у Евгения.

В общем, must watch
👍11👎1🔥1
Forwarded from Zig Programming
How To Get Started With Zig 🖼️

Zig is a modern, low-level programming language that prioritizes performance, safety, and simplicity—perfect for systems programming and beyond. If you're looking for an alternative to C with powerful compile-time execution and manual memory management, Zig is worth exploring!

Official website: https://ziglang.org/

Books 📖

Introduction to Zig a comprehensive introduction to Zig programming language, I would suggest starting your journey with this wonderful book.
Learning Zig by Karl Seguin, an introduction to Zig programming language without too much hassle.
Programming with Zig: From Basics to Mastery (still in progress)

Courses 🎓
Zig in Depth YouTube series about Zig programming

Practices 🛠️
Ziglings number of exercises to practice Zig programming

People 🫂
Andrew Kelley, the founder of Zig lang
Karl Seguin and his blog
Murat Genc
Zig SHOWTIME

Libraries 🏛️
Zigistry like PyPI but for Zig
Awesome Zig

Websites 🕸️
Zig News
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍1👎1
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