zen_of_python | Unsorted

Telegram-канал zen_of_python - Zen of Python

20070

Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL

Subscribe to a channel

Zen of Python

Weekend Offer Multitrack: быстрый найм для опытных специалистов

Яндекс приглашает бэкенд-разработчиков с опытом от 5 лет на C++, Python, Go или Java/Kotlin получить офер за 2 дня и поработать в трёх командах на выбор.

Приходите, если вам важно видеть результат своей работы в живых системах и метриках, а не только в merged PR.

Как всё проходит:

🟢 До 6 марта — регистрация на сайте.
🟢 14 марта — технические секции.
🟢 15 марта — финальная секция и офер.

После получения офера у вас будет возможность выбрать три команды и в течение нескольких недель поочерёдно поработать в каждой. Такой формат позволит не только познакомиться с коллегами и технологическим стеком, но и оценить задачи и рабочие процессы в каждой команде.

Подробности и форма регистрации — по ссылке.

Это #партнёрский пост

Читать полностью…

Zen of Python

Вышел Starlette 1.0.0rc1, первый релиз-кандидат после 8 лет разработки

Напомню, Starlette — легковесный ASGI-фреймворк для Python. Поддерживает WebSocket, HTTP/2, фоновые задачи, middleware и маршрутизацию. На нём построен FastAPI, Starlette отвечает за всю сетевую часть, а FastAPI добавляет сверху валидацию через Pydantic и автогенерацию OpenAPI-схемы.

Том Кристи создал Starlette в июне 2018, а сейчас Марсело Трилесинский (Kludex) выпустил первый RC версии 1.0. Почти 10 млн скачиваний в день, а с недавних пор ещё и зависимость Python MCP SDK.

Что в релизе. Удаление deprecated-фич, помеченных для удаления в 1.0.0, плюс финальные баг-фиксы. Никаких крупных новых API, акцент на стабильности.

Реакция сообщества. «Starlette работала настолько стабильно, что казалось, будто 1.0 уже давно вышла». Несколько человек отметили, что узнали о Starlette как о зависимости, только когда начали копаться в MCP-серверах.

Установка: pip install starlette==1.0.0rc1

@zen_of_python, также в Max

Читать полностью…

Zen of Python

МФТИ запускает онлайн-школу «Предпринимательское планирование»

Преподаватели с кафедры Технологического предпринимательства, а окончание школы даёт поступление в магистратуру на эту кафедру без экзаменов.

В школе основы и работа мини-группах: разработка бизнес-модели, фокус на рынке, стратегия роста. А в магистратуре приоритет на запуске бизнеса, в том числе работа с реальными успешными предпринимателями.

@neuro_channel, также в Max

Читать полностью…

Zen of Python

Кейсы из номинации «Дизайн года» ждут ваших голосов

Осталась ровно неделя до конца голосования в премии Tproger. Уже дико хочется узнать, кто в лидерах! Но даже мы в команде стараемся держать интригу. И чтобы скоротать время, давайте посмотрим на дизайнерские кейсы компаний:

— AcademiaDev представила интерактивную инсталляцию, которая разлетелась по СМИ и собрала 48 млн охвата.


— ИИ-платформа Сократик рассказала, как устроена их система по генерации готовых презентаций.


— Островок поделился, как они сделали отдельную айдентику для Ostrovok! Tech.


Закидайте их своими голосами: https://tprg.ru/WLvk

Читать полностью…

Zen of Python

Какой кейс станет облачным продуктом года?

Давайте думать, подсказывайте голосовать! В этой номинации Tproger Awards также участвуют пять компаний. Вот статьи про их продукты:

👍ПАК виртуализации от Гравитона, который построен по гиперконвергентной архитектуре, что предусматривает простое и предсказуемое масштабирование.


👍ИИ-ассистент от Рунити, который начинался как внутренний продукт, но уже вышел на внешний рынок.


👍VPS от SmartApe, который помог онлайн-школе выдержать рост нагрузки в 5 раз.


👍Контейнерная платформа «Штурвал» от Лаборатории Числитель, благодаря которой система стала устойчива к высоким нагрузкам.


👍Облачная платформа от Selectel, которая позволяет компаниям самим управлять данными, подключать нужные сервисы в несколько кликов и иметь доступ к поддержке 24/7.


Что из этого достойно золотой мыши — решать вам. Переходите на сайт голосования и выбирайте тот самый кейс 👍

Читать полностью…

Zen of Python

25 лет на ORM, теперь — raw queries + dataclasses. И вот почему

Майкл Кеннеди (автор Talk Python to Me) отказался от ORM/ODM в пользу паттерна Raw+DC: сырые запросы к базе + Python dataclasses на границе слоя доступа к данным.

🔘Главный аргумент: ИИ-ассистенты пишут нативные запросы в разы лучше, чем ORM-код. У PyMongo в 53 раза больше загрузок, чем у Beanie, и нативный синтаксис MongoDB одинаковый в Node, PHP, Go. Разница в обучающих данных огромна.

🔘Паттерн простой: raw query → dict → from_doc() → dataclass. Type safety, автокомплит в IDE, поддержка mypy — всё на месте. Без магии ORM, без зависимости от фреймворка.

🔘В комментах согласны с ИИ-аргументом, но напоминают: ORM — это не только запросы, но и миграции, валидация, защита от SQL-инъекций. Raw SQL повышает порог ответственности за безопасность.

📎 Тред на r/Python

А вы как обычно кодите?

@zen_of_python

Telegram | Max

Читать полностью…

Zen of Python

Бенчмарк 8 Python-библиотек для извлечения текста из документов

Авторы Kreuzberg выложили обновлённое сравнение 8 open source инструментов для text extraction: Kreuzberg, Apache Tika, Docling, Unstructured, PDFPlumber, Pandoc, PyMuPDF4LLM, MarkItDown, Mineru. 56 типов файлов, p50/p95/p99 по скорости и памяти, quality score против ground truth.

Методика: бенчмарк-харнес на Rust, запускается в GitHub Actions CI. Замеряют extraction duration, throughput, memory, success rate. Качество измеряют через сравнение извлечённого текста с эталоном.

И что бы вы думали, кто победил? Конечно же сам Kreuzberg. Он покрывает больше всего форматов (49/56), success rate 99,1%. Docling и Unstructured надёжны, но в разы медленнее. Docling на сложных файлах может считать 60+ минут на файл.

​Но бенчмарк открытый и воспроизводимый, так что в целом как будто Kreuzberg реально можно пробовать.

@zen_of_python

Читать полностью…

Zen of Python

Премия Tproger объявляется открытой! 🐀

Каждый год команды разработки фиксят баги, выкатывают редизайн, добавляют фичи или создают совершенно новые продукты внутри известных нам брендов. Какие-то результаты работы мы видим, но чаще внутрянка не доступна и оценить по достоинству ее не получается.

Отсюда родилась идея Премии Tproger. В ней ИТ-компании делятся успешными кейсами разработки, а аудитория решает, какой проект заслуживает награды — золотой мыши 🐀

В премии участвуют 16 компаний в 4 номинациях:
Продукт года

Здесь представлены платформенные решения, направленные на комплексную автоматизацию ключевых направлений деятельности: от контроля безопасности разработки ПО и ИТ-инфраструктуры до управления ресурсами компании.

Облачный продукт года
В этом разделе вас ждут платформы виртуализации, облачные среды для AI/ML, инструменты управления кластерами и микросервисами, обеспечивающие высокую производительность и быстрый запуск цифровых сервисов.

IT-ивент года
Участники рассказывают о профессиональных конференциях и хакатонах, объединяющих тысячи разработчиков и инженеров.

Дизайн года
В номинации представлены проекты, где дизайн встречается с инженерией: нейросети, создающие презентации за секунды; инсталляции, собравшие десятки миллионов контактов; и визуальные стратегии, транслирующие ценности разработки.

Теперь они в ваших руках 👍
1. Переходите на сайт премии.
2. Выбирайте понравившиеся кейсы в каждой категории.
3. И вручайте им золотую мышь.

Голосование продлится до конца февраля и уже в марте мы объявим победителей. Stay tuned!

Читать полностью…

Zen of Python

Ну и еще немного про ИИ! 😁

Одни компании недолюбливают нейросети за риск утечки конфиденциальной информации. Судя по комменту к предыдущему посту вы тоже от него устали 🤪 Но каким-то образом у разных компаний получается приручить эту химеру и выуживать из нее пользу.

Как, например, у этих ребят. Команда хотела облегчить работу коллег и создала то, что стало ключом к корпоративному ИИ. Они хотели доступ к мощным нейросетям, но так, чтобы ни байта данных не вышло за порог компании. И чтобы запускал это не только технарь, но и обычный менеджер.

Главный стоппер был предсказуем: как заставить прожорливые модели стабильно работать в облаке под нагрузкой? Решение оказалось элегантным.

Это девятый артефакт — для тех, кто побаивается нейросетей, но явно на них облизывается. Покажите вашему начальнику, скажите, что все не так страшно 👻

Читать полностью…

Zen of Python

Нашёл прекрасное: memory_graph — визуализация того, что реально происходит в памяти Python. Либа рисует граф объектов: переменные, ссылки, алиасы, копии. Сразу видно почему b += [1] и b = b + [1] — это разные вещи.

Вот примеры: Hash Map, Binary Tree, Copying, Recursion.

Установка: pip install --upgrade memory_graph

Для изучения питона — очень круто, рекомендую.

@zen_of_python

Читать полностью…

Zen of Python

И ещё один свежий релиз: вышел Python 3.14.3 с несколькими крупными фичами.

🔘Free-threading (PEP 779)

Официальная поддержка потоков без GIL. Теперь можно собрать Python без глобальной блокировки интерпретатора и получить настоящую многопоточность. Для большинства это пока не актуально — требует пересборки и совместимых библиотек. Но направление задано.

🔘T-strings (PEP 750)

Новый синтаксис t"..." — как f-strings, но без автоматической интерполяции. Возвращает шаблон, который можно обработать отдельно. Полезно для безопасной работы со строками в SQL, HTML, логах.

query = t"SELECT * FROM users WHERE id = {user_id}"
# query — не строка, а Template объект


🔘Отложенная оценка аннотаций (PEP 649)

Аннотации типов теперь вычисляются лениво. Можно писать def foo() -> Bar до определения класса Bar. Это упрощает работу с циклическими импортами и forward references.

Практический совет

Если у вас 3.14 на продакшене — обновляйтесь осторожно. А вот для экспериментов с free-threading — самое время попробовать.

@zen_of_python

Читать полностью…

Zen of Python

Мелочь, но приятно: copier-astral — шаблон, который генерит для нового проекта настройки для ruff, uv, pytest, CI/CD одной командой. Как вы поняли, всё для любителей Astral-стека (а кто сейчас не такой?).

Что внутри:
🔘uv — пакетный менеджер
🔘ruff — линтер + форматтер (замена black/isort/flake8)
🔘ty — новый тайпчекер от Astral на Rust
🔘pytest + hatch — тесты с матрицей версий
🔘MkDocs Material — документация
🔘prek — Rust-альтернатива pre-commit (быстрее)
🔘GitHub Actions — CI/CD из коробки
🔘git-cliff — changelog по Conventional Commits

Опционально: Typer CLI scaffold, Docker

Установка:

pip install copier copier-template-extensions
copier copy --trust gh:ritwiktiwari/copier-astral my-project


Почему Copier, а не cookiecutter?


Copier умеет обновлять уже созданные проекты при изменении шаблона — не нужно руками мержить новые best practices.

📎 Код в репо, доки, пример проекта

@zen_of_python

Читать полностью…

Zen of Python

🔄 Артефакт №1. Категория: «Город» 🔄

От кого только не прилетает самокатчикам. Иногда за дело, иногда нет. Не нам судить, но мы обсудим, что делать, например, с явными нарушителями? Как их контролировать, если операторы кикшеринга не пускают в свои данные? Закрывать глаза на хаос на тротуарах или тотально запрещать?

Мы получили кейс, где за 4 месяца команда из 7 человек создала платформу мониторинга, которая фиксирует самокатовские нарушения. Их задачей было сделать инструмент для структурирования данных, чтобы чиновники и операторы нашли общий язык.

🤩 Что скрывает этот артефакт? 🤩
🤩 Смекалистый метод охоты за данными, когда реальные видео с камер недоступны.
🤩 Принципы, которые помогли сделать мониторинг более объективным.
🤩 Гибридный R&D: тактика, которая помогла запустить MVP за четыре месяца, вместо шести.

Планируем поделиться с вами целой пачкой интересных артефактов. Ставьте 👀, если любопытно узнать их все.

Читать полностью…

Zen of Python

Вышел packaging 26.0 — тот самый релиз с ускорением в три раза, о котором писал пару недель назад.

Напомню контекст: packaging — библиотека для работы с версиями и зависимостями. Встроена в pip, а pip — в Python. 650+ миллионов скачиваний в месяц.

➡️ Что в релизе

Обещанные оптимизации: регулярки больше не перекомпилируются каждый раз, добавлены __slots__ для Version и Specifier, улучшено кэширование. Результат — парсинг версий стал в три раза быстрее, количество создаваемых объектов в pip упало с 4,8 млн до 400 тыс.

➡️ Новые фичи

PEP 751 — поддержка pylock-файлов для воспроизводимых установок. PEP 794 — импорт метаданных имён пакетов. Positional pattern matching для Version и Specifier — теперь работает match version:

from packaging.version import Version

match Version("3.14.0"):
case Version(major=3, minor=14):
print("Python 3.14!")


➡️ Breaking changes

.contains() теперь возвращает False вместо исключения для невалидных версий. Если ловили InvalidVersion — проверьте код.

Обновление подтянется автоматически с новыми версиями pip.

📎 Changelog, PyPI

@zen_of_python

Читать полностью…

Zen of Python

Вышел pandas 3.0: строки теперь хранятся через PyArrow (до 70% экономии памяти, до 13x быстрее), а Copy-on-Write стал обязательным.

Что сломается

🔘Цепочечное присваивание больше не работает:

# Было: работало с warning'ом
df["foo"][df["bar"] > 5] = 100

# Стало: молча НЕ работает
# Правильно:
df.loc[df["bar"] > 5, "foo"] = 100


🔘Проверки dtype:
# Было
if df['col'].dtype == object: ...

# Стало
if pd.api.types.is_string_dtype(df['col']): ...


Как мигрировать
1️⃣Обновитесь до pandas 2.3, уберите warnings
3️⃣Включите в тестах: pd.options.future.infer_string = True
3️⃣Найдите dtype == object и цепочечные присваивания
4️⃣Обновляйтесь до 3.0

Требования: Python 3.11+, NumPy 1.26.0+, PyArrow 13.0.0+

Для production лучше подождать пару недель — релиз свежий.

📎 Changelog, GitHub

@zen_of_python

Читать полностью…

Zen of Python

PEP 747 принят. В typing добавится TypeForm[T] — способ аннотировать аргументы, которые принимают не значения, а сами типы: int | str, list[int], TypedDict и другие.

Раньше функции вроде trycast() или is_match() из библиотек beartype, pydantic, typeguard приходилось аннотировать через object, слишком широко, без проверки типов.

Теперь можно так:

def trycast[T](typx: TypeForm[T], value: object) -> T | None: ...
def is_match[T](value: object, typx: TypeForm[T]) -> TypeGuard[T]: ...

# Или просто переменная:
int_form: TypeForm = int | None


В Python приедет с версии 3.15. Уже сейчас доступно через typing_extensions. Экспериментальная поддержка есть в Pyright

@zen_of_python

Telegram | Max

Читать полностью…

Zen of Python

Как вам формат TOON (Token-Oriented Object Notation) вместо JSON?

Массивы объектов объявляются один раз в заголовке users[2]{id,name,role}:, а дальше идут только данные через запятую без лишних скобок и ключей. Это сокращает объём данных на 30–60%.

Для Python уже есть готовые библиотеки, например python-toon и toons. Для промтов в ИИ экономия токенов. Для людей на глаз вроде тоже проще читается.

С другой стороны это просто CSV с дополнением, вложенности не очень удобно делать. Что думаете?

@neuro_channel, также в Max

Читать полностью…

Zen of Python

Где лучшие тусовки? На тех-ивентах!

Последняя по очереди, но не по значимости — номинация «IT-ивент года». Здесь тоже собрались три компании, и если вы еще не добрались до чтения их кейсов, то давайте сделаем это вместе.

— Лаборатория Числитель собрала конференцию, на которой обсуждают строго только K8s.

Мероприятие Selectel, которое стало уже традицией, делали полностью in-house.

— Специально для своего хакатона Островок создал платформу, чтобы участвовать могли разработчики из любой точки мира.

Выбирайте компанию-фаворита и вручайте ей золотую мышь — голосование доступно на сайте.

Telegram | Max

Читать полностью…

Zen of Python

Анализ датасета QUT-DV25 (14 000 семплов малвари из PyPI) показал, что больше половины пакетов запускают reverse shell или крадут env-переменные прямо в setup.py т.е. достаточно pip install, даже без импорта.

Проблема: sdist-пакеты требуют выполнения setup.py при сборке. Это обычный Python-скрипт, он может делать что угодно — от сборки C-расширения до отправки ~/.ssh/id_rsa на C2-сервер.

Есть такой инструмент KEIP — eBPF-тул на LSM-хуках, который ставит сетевой whitelist на время pip install. Если setup.py или дочерний процесс лезет на сервер не из белого списка — весь процесс убивается

Вообще, в 2026 setup.py — это красный флаг. Если пакет без pyproject.toml и без wheel, то может он и не нужен вам?

@zen_of_python

Читать полностью…

Zen of Python

Вот ещё новость прошедшей недели: PyTorch перевёл тайпчекинг основного репозитория с MyPy на Pyrefly. Проверка всего проекта: MyPy — 50,6 сек, Pyrefly — 5,5 сек.

Вроде здорово, молодцы, но ведь есть ty. Ещё и пост в блоге написали, как будто одна известная большая корпорация повлияла.

А вы чем в 2026 тайп-чекаете?

(Да, как вы поняли, очень хочется пообщаться с вами, дайте каких-то комментариев, пожалуйста.)

Читать полностью…

Zen of Python

Выбираем лучший продукт года🐀

У нас в разгаре премия Tproger — в ней мы выбираем лучшие ИТ-разработки среди 16 компаний. Сегодня ближе знакомимся с участниками номинации «Продукт года».

В ней участвуют пять компаний. Изучаем:

👍ОТП Банк представляет ASOC-сканер, который спроектировал один разработчик за месяц.

👍Гравитон делится кейсом создания ПО мониторинга без агентов, который можно затестить бесплатно.

👍NetVision борется с недобросовестными самокатчиками с помощью платформы интеллектуального мониторинга СИМ.

👍Solar показывает appScreener, который вырос из стартапа до стандарта рынка; при работе над ним сотрудники получили научные степени.

👍Reksoft рассказывает о платформе Brain ERM, который помогает компаниям экономить до 70% времени на рутинных HR-операциях.

Если вы еще не проголосовали за понравившийся продукт — самое время это сделать. Переходите на сайт премии и выбирайте свой релиз года. Пусть золотая мышь достанется команде лучших 🔥

Читать полностью…

Zen of Python

Пять платформ, где дети учат Python через игры — от простых песочниц до олимпиадных задач. Trinket, Tynker, CodeCombat, Minecraft, CheckiO — разобрано для кого что подходит по возрасту и уровню.

@zen_of_python

Читать полностью…

Zen of Python

Документация для нейросетей — как получать нормальный код от LLM

Основная идея: вайбкодинг работает плохо не из-за моделей, а из-за отсутствия контекста. Если LLM не знает структуру проекта, стек и ограничения — она додумывает сама.

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

@zen_of_python

Читать полностью…

Zen of Python

«У Python только один реальный конкурент» — и это не Rust, не Go, не Julia

Это Clojure. Автор (Ethan McCue) объясняет логику:

Для реальной конкуренции с Python в Data Science нужно два условия:
1️⃣Иметь аналогичную экосистему
3️⃣Превосходить Python в чём-то важном

Экосистема: У Clojure есть полные аналоги numpy (dtype-next), pandas (tech.ml.dataset), ML-пайплайны (metamorph.ml), плоттинг (Tableplot), ноутбуки (Clay). А чего нет — можно вызвать Python напрямую через libpython-clj.

Превосходство: Python медленный, и это не починить. CPython не может оптимизироваться, потому что детали его реализации стали частью API — сломаешь numpy/pandas. Отсюда вечное «есть быстрый способ и медленный способ» делать одно и то же.

Clojure работает на JVM, которая агрессивно оптимизирует рантайм. Можно писать логику на самом языке, а не убегать в C. Поясню тут логику автора: Python структурно не может стать быстрым — его внутренности (reference counting, GIL, C API) стали частью контракта с экосистемой. У JVM таких ограничений нет.

Станет ли Clojure массовым — вопрос удачи, но по набору характеристик это единственный язык, у которого есть шанс.

@zen_of_python

Читать полностью…

Zen of Python

PEP 822 предлагает d-строки — новый способ работы с многострочным текстом в Python 3.15.

Проблема: при использовании тройных кавычек внутри функций приходится либо ломать отступы кода, либо получать лишние пробелы в строке. d-строки автоматически удаляют общий ведущий отступ.

def example():
query = d"""
SELECT *
FROM users
WHERE active = true
"""
# query не содержит лишних пробелов слева


Работает аналогично textwrap.dedent(), но на уровне синтаксиса — без вызова функции и накладных расходов в рантайме.

Можно комбинировать с f-строками: df"""...""" для шаблонов с подстановкой переменных.

PEP пока в статусе Draft, целевая версия — Python 3.15.

@zen_of_python

Читать полностью…

Zen of Python

⚡️ Вышли критические обновления безопасности Django — 6.0.2, 5.2.11 и 4.2.28.

Закрыты три SQL-инъекции высокой критичности:

CVE-2026-1207 — инъекция через raster lookups в PostGIS при использовании пользовательских данных как индексов band.

CVE-2026-1287 — инъекция через управляющие символы в алиасах колонок при использовании FilteredRelation со специально сформированными словарями.

CVE-2026-1312 — инъекция через order_by() и FilteredRelation при использовании точки в алиасах колонок.

Также исправлены: DoS через повторяющиеся заголовки в ASGI (CVE-2025-14550), DoS через незакрытые HTML-теги в Truncator (CVE-2026-1285), timing-атака для перечисления пользователей в mod_wsgi (CVE-2025-13473).

Если используете PostGIS или FilteredRelation — обновляйтесь срочно.

@zen_of_python

Читать полностью…

Zen of Python

Bandit — SAST-сканер для Python от PyCQA (те же люди, что делают pylint и flake8). Парсит AST, ищет типичные дыры: eval(), хардкод паролей, слабая криптография, небезопасные temp-файлы.

➡️ Как работает

Каждый файл → AST → прогон плагинов по нодам → отчёт. У каждой находки два атрибута: severity (критичность) и confidence (уверенность, что это реальная проблема). Это помогает расставить приоритеты — сначала High/High, потом остальное.

Интеграция:

# .pre-commit-config.yaml
repos:
- repo: https://github.com/PyCQA/bandit
rev: 1.7.5
hooks:
- id: bandit
args: ['-ll', '-ii']

Есть официальный GitHub Action (PyCQA/bandit-action@v1) и расширение для VS Code.

Для легаси-проектов: сохраняешь текущие находки в baseline, дальше CI показывает только новые. Старые никуда не деваются, но не блокируют билд.

➡️ Bandit vs Semgrep

🔘Правила из коробки — Bandit 68, Semgrep 166 для Python

🔘Скорость — Bandit быстрее на мелких репо, у Semgrep overhead на старте

🔘Кастомные правила — у Semgrep проще (YAML), у Bandit нужно писать плагин

🔘Точность — Bandit точнее на типовых паттернах, Semgrep гибче, но больше false positives

📎 Код на GitHub

@zen_of_python

Читать полностью…

Zen of Python

Django в продакшене на 500 000 пользователей в месяц — не стартап, а французское правительство.

La Suite — экосистема цифровых инструментов для госслужащих Франции. 15 министерств, 500 000 активных пользователей ежемесячно.

Что внутри:


🔘Tchap — мессенджер на Matrix, 375 000 активных пользователей ежемесячно
🔘Visio — видеозвонки с ИИ-транскрипцией на LiveKit
🔘Docs — совместное редактирование
🔘Grist — таблицы как база данных
🔘France Transfert — передача больших файлов

Бэкенд на Django. Весь код в открытом доступе.

Данные хранятся на SecNumCloud во Франции с полной портабельностью — экспорт в .ppt, .xls, .odt без vendor lock-in.

Это хороший пример того, как выглядит Django в govtech-продакшене уровня страны. Можно изучить архитектуру, посмотреть как они решают масштабирование, безопасность и интеграцию с legacy-системами.

📎 La Suite, GitHub

@zen_of_python

Читать полностью…

Zen of Python

Репозиторий anthropics/skills — самый популярный Python-репозиторий на GitHub прямо сейчас. +1400 звёзд в день, 50 тыс. уже набежало.

➡️ Что такое Skills

Skills — это папки с инструкциями и скриптами, которые Claude динамически подгружает для выполнения специализированных задач. По сути, плагины для ИИ: вместо того чтобы каждый раз объяснять модели, как работать с вашими процессами, вы описываете это один раз в файле.

Примеры: создание документов с учётом правил компании, анализ данных по специфическим воркфлоу, генерация MCP-серверов, тестирование веб-приложений.

➡️ Как устроено

Skill — это YAML с названием, описанием и markdown-инструкциями. Можно указать примеры использования и ограничения. Claude читает это при активации и следует описанным правилам.

---
name: my-skill-name
description: What this skill does
---
# Instructions for Claude...


➡️ Зачем это вам

Если используете Claude для повторяющихся задач — Skills позволяют один раз описать процесс и использовать повторно. Документные skills (PDF, DOCX, XLSX) уже готовы. Для собственных — есть шаблон и примеры.

📎 Репозиторий

@zen_of_python

Читать полностью…

Zen of Python

Один разработчик реализовал bytes.replace() из Python на CUDA — для обработки многогигабайтных файлов прямо на GPU без передачи данных на CPU.

Бенчмарки (RTX 3090)
🔘1 MB: 1,09x (почти одинаково)
🔘5 MB: 1,80x
🔘50 MB: 3,43x
🔘100 MB: 4,37x

Среднее ускорение: 3,45x, пропускная способность: 0,79 GB/s

Ключевые фичи
🔘Точная семантика Python (leftmost, non-overlapping replacements)
🔘Streaming mode — файлы больше VRAM обрабатываются чанками
🔘Session API — несколько замен подряд без переинициализации
🔘Thread-safe

Пример

from cuda_replace import CReplaceLib

lib = CReplaceLib()
result = lib.unified(data, b"pattern", b"replacement")

# Для больших файлов
cleaned = lib.gpu_streaming(huge_data, b"old", b"new", chunk_size=256*1024*1024)


➡️ Зачем это нужно

Автор делал GPU-компрессию и хотел убрать лишние трансферы между CPU и GPU. Другие применения: санитизация логов, обработка сетевых пакетов, любые задачи с поиском/заменой в больших бинарных данных.

И давайте признаем, это просто круто, search-replace на CUDA блин :)

📎 Код на GitHub

@zen_of_python

Читать полностью…
Subscribe to a channel