gram news
Павлин Шарит channel avatar

Павлин Шарит

@pavlin_share

Разбираемся в ИТ, строим продукты, менторим новичков. YT - youtube.com/@nikolaypavlin Группа для общения и вопросов - @share_it_group Для связи - @NikolayPavlin

ProjectsRUProgramming

2,440subscribers

Open the Channel

Latest posts

  • Павлин Шарит

    16 Jun, 07:02

    Как связаны мониторинг и репликация postgresМожно связать по-разному, но в данном случае это последние ролики на бусти, которые вы могли пропуститьglances собирает все ключевые метрики в одно окно - cpu, ram, диски, сеть и docker-контейнеры с их потреблением Написан на python, а вы уже знаете, что я люблю утилиты, у которых могу легко прочитать исходный код Из коробки web-режим и экспорт в prometheus/influxdb, так что из дев-утилиты при желании вырастает полноценный мониторингВторая тема куда глубже - это цикл роликов про репликацию postgres, тему, которую долго просили на ютубе, а я всё откладывалВ первой части зашёл с фундамента - разобрал WAL (write-ahead log), механизм, который гарантирует, что запись в БД не потеряется Прогнал бенчмарк - сколько вывозит одна урезанная postgres в докере (1/2 CPU + 256 mb RAM). Это точка отсчёта, чтобы дальше смотреть, как меняется картина с
    1,55013321Open in Telegram
  • Павлин Шарит

    14 Jun, 17:43

    На реддите ожидают новую подписку в клоде
    Image from a post by Павлин ШаритImage from a post by Павлин Шарит
    1,58014221Open in Telegram
  • Павлин Шарит

    8 Jun, 09:29

    Прошел школу CTO от Стратоплана - мысли по итогамПолгода обучения в школе CTO от Стратоплана пролетели незаметно - время подвести итогиС точки зрения контента курс сделал главное - помог систематизировать то, что раньше делал интуитивно Управление ожиданиями, метрики, делегирование, оптимизация процессов - все эти темы я так или иначе встречал в работе, но курс дал общий каркас, в который они теперь укладываютсяСтруктурно курс состоит из трех частей. Еженедельные трехчасовые занятия по специализации - именно про работу CTO. Двухдневки - интенсивы по пять часов два дня подряд по конкретным базовым навыкам руководителя (постановка задач, делегирование, найм, метрики). И вебинары - дополнительные встречи с приглашенными спикерами на смежные темы. В сумме получается насыщенно, но не перегружено - примерно один-два вечера в неделюНо самым ценным оказался даже не контент. Каждое
    Школа менеджмента «Стратоплан»Технический директор. Управление технологиями и людьмиПрограмма для будущих и действующих технических директоров от Школы Стратоплан. Управление технологиями, командами и бизнесом: практика, AI-инструменты, работа с тренером.
    1,9102113732Open in Telegram
  • Павлин Шарит

    8 Jun, 09:04

    Адаптация телеграмма под ИИ-трендыПрошел уже месяц с крупного обновления телеграмма для поддержки ИИ прямо в мессенджере, и разработчики ботов получили сразу несколько нативных штук, которые раньше приходилось городить рукамиИз ключевого: - Guest Bots - бота можно вызвать по @username в любом чате, не добавляя его в участники. Один инстанс отвечает хоть в миллионе чатов, при этом видит только те сообщения, где его упомянули, и ответы на них - sendMessageDraft - нативный стриминг ответа, бот публикует черновик и докидывает в него токены по мере генерации - Bot-to-Bot - боты теперь отвечают не только людям, но и друг другуНастал момент, когда боты видят сообщения друг друга, хотя раньше это казалось табу, так как могло зациклить их Теперь можно собирать автономных агентов, которые дергают друг друга как сервисы и автоматизируют процессыИ отдельно радует sendMessageDraft - раньше
    TelegramГостевой режим для ИИ-ботов, общение ботов, автоматизация чатов, создание ИИ-стилей, поиск по 100+ млн эмодзи и стикеров и многое…Сегодня Telegram представляет более 10 нововведений: теперь пользователи могут обращаться к ИИ-сервисам из любого чата, автоматизировать обработку входящих сообщений с помощью ботов, создавать свои стили для ИИ-редактора текста, устанавливать ограничения…
    1,40010Open in Telegram
  • Павлин Шарит

    7 Jun, 14:07

    LLM gatewayПоймал себя на том, что в третьем по счету проекте копирую один и тот же кусок прокси для OpenAI - и понял, что пора это выноситьСейчас сложно найти продукт, в котором нет хотя бы одного обращения к LLM (или БЯМ - большая языковая модель, как же мне нравится эта аббревитура), и вместе с этим остро встает вопрос работы с ключамиПонятно, что секреты мы держим в переменных среды или в централизованном хранилище, но когда проектов становится много, этого уже мало - нет единого подсчета токенов, нет централизованного управления, и в каждом сервисе болтается свой кусок логики для общения с провайдеромРешается это через AI gateway - по сути как nginx, только стоит не перед бекендом, а перед LLM-провайдером и проксирует все запросы через себяLitellm - open source решение, которое умеет говорить со 100+ провайдерами (OpenAI, Anthropic, Gemini, Bedrock и тд) в едином
    GitHubGitHub - BerriAI/litellm: The fastest, litest AI Gateway. Rust core with Python SDK. Call 100+ LLM APIs in OpenAI (or native) format…The fastest, litest AI Gateway. Rust core with Python SDK. Call 100+ LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthr...
    1,3102411Open in Telegram
  • Павлин Шарит

    19 May, 08:08

    Мониторинг всех ИИ-лимитовНаткнулся на CodexBar - утилита для macOS, которая собирает лимиты всех провайдеров прямо в menu bar. Узнал про нее, когда увидел, что ей пользуется создатель openclaw, позволяет не прыгать в веб-морду для просмотра или спамить /usageЧто умеет: - 40+ провайдеров - claude, codex, cursor, copilot, gemini, openrouter, deepseek, warp и далее по списку - Окна сброса сессий, недельные и месячные лимиты с таймером обратного отсчета - не надо гадать, успеешь ли стартануть длинную задачу до сброса - Балансы кредитов и месячные расходы там, где провайдер их отдает - Локальное сканирование стоимости для codex и claude - Бесплатно и open sourceПриятный момент по приватности - утилита переиспользует существующие сессии провайдеров: oauth, device flow, api-ключи, cookies, локальные файлы. Никакие пароли нигде не хранятсяСтавится одной командой через homebrew:brew
    codexbar.appTrack usage windows, credits, and resets across 69 AI coding providers from your macOS menu bar.
    1,810852Open in Telegram
  • Павлин Шарит

    14 May, 10:02

    60% времени задачи - это ожидание, а не работаФинальный блок школы CTO от Стратоплана - шесть занятий про операционный менеджмент: оргструктуры, построение и оптимизация бизнес-процессов, метрики, инфраструктура и закупки. Этот блок не столько про новые концепции, сколько про то, как собрать уже знакомые вещи в систему более высокого уровняОргструктуры Нет одной правильной оргструктуры на всю компанию. Каждый вид решает свою задачу: функциональная дает специализацию и качество экспертизы, проектная фокусирует команду на delivery, матричная балансирует первое и второе, дивизионная позволяет масштабироваться и автономно развивать отдельные продукты. Внутри одной компании разные подразделения могут жить в разных структурах. И отдельно важно отделять роль от сотрудника - роль это набор функций, а закрывать ее может один человек, несколько или целая командаПостроение процессов Базовая
    Школа менеджмента «Стратоплан»Технический директор. Управление технологиями и людьмиПрограмма для будущих и действующих технических директоров от Школы Стратоплан. Управление технологиями, командами и бизнесом: практика, AI-инструменты, работа с тренером.
    1,7801511711Open in Telegram
  • Павлин Шарит

    12 May, 09:02

    Skills vs Commands vs Sub-agents - что выбратьВ Claude Code есть три способа упаковать переиспользуемый воркфлоу, и они начинают конкурировать друг с другом, как только проект вырастает за пределы пары файлов. Разбираем чем они реально отличаются и когда что братьSkills (.claude/skills/SKILL.md) Метаинформация загружается в контекст при старте сессии (см. прошлый пост про контекст) Тело SKILL.md грузится только когда Claude решит, что скилл релевантен задаче Может тащить с собой связанные файлы - доку, шаблоны, примеры Один и тот же скилл работает в Claude.ai, Claude Code и Claude Desktop Подходит для правил, которые должны всплывать сами в нужный момент - типа «когда пишешь миграцию - используй apps.get_model и не импортируй текущую модель»Commands (.claude/commands/.md) Запускаются явно через /command - это команда от пользователя, не от агента Детерминированный сценарий, ты сам
    Image from a post by Павлин ШаритImage from a post by Павлин Шарит
    1,49012221Open in Telegram
  • Павлин Шарит

    8 May, 12:03

    Кеширование на уровне Django ORM - где оно стреляет в ногуУ каждого QuerySet есть встроенный кеш результатов - _result_cache.QuerySet ленивый - в БД не идет, пока его не начнут вызывать. При первой полной итерации запрос выполняется, результат складывается в кеш инстанса. Вторая итерация того же инстанса - уже из памятиОдин и тот же запрос дважды это два разных QuerySet # два запроса в БД print([e.headline for e in Entry.objects.all()]) print([e.pub_date for e in Entry.objects.all()])# один запрос entries = Entry.objects.all() print([e.headline for e in entries]) print([e.pub_date for e in entries]) Кеш живет на инстансе QuerySet, не на запросе. Каждый вызов .all() создает новый инстанс с пустым кешем - даже если SQL идентичныйНе все обращения заполняют кеш qs = Entry.objects.all() print(qs) # __repr__ - НЕ кеширует
    1,5401731Open in Telegram
  • Павлин Шарит

    3 May, 07:00

    Как Claude Code собирает контекст и где это лежитКогда стартует сессия, в окно контекста уезжает заметно больше, чем кажется на первый взгляд. Полезно понимать, что туда попадает и из каких источниковДо того как ты вообще что-то напишешь, в контекст уже загружено: - Системный промпт и описания системных тулз Claude Code - Содержимое CLAUDE.md - из домашки (~/.claude/CLAUDE.md), из корня проекта (./CLAUDE.md) и из подпапок если они там есть. Все три уровня собираются в одну иерархию - Auto-memory - то, что Claude Code сам сохранил о проекте между сессиями - Имена и описания MCP-инструментов от подключенных серверов - Метаинформация скиллов. Сами тела SKILL.md не грузятся пока ты скилл не вызовешь, НО метаинфа с описанием каждого скилла загружается сразу, чтобы знать, что их можно вызвать. Если у тебя 30 скиллов, а используешь за сессию ты один - 30 описаний все равно сидят в контексте
    Image from a post by Павлин ШаритImage from a post by Павлин Шарит
    1,800322Open in Telegram
  • Павлин Шарит

    27 Apr, 13:05

    Делегирование - это про свободу, а не про избавление от задачВ Стратоплане есть формат "двухдневок" - два дня по 5 часов, одна из них была посвящена Regular Operations, а именно постановке задач, контролю и делегированию. Формат плотный - теория, индивидуальный кейс, обсуждение в группе, разбор. И так три раза за деньПервый день разбирали постановку и контроль задач. Казалось бы, базовая тема - SMART, OKR, виды контроля. Но дьявол в деталях. Есть четыре причины, почему человек не делает задачу - не понял, не умеет, не может, не хочет. И для каждой причины нужен свой подход. Звучит очевидно, но на практике большинство руководителей по умолчанию выбирают "не хочет" и начинают давить, хотя человек просто не понялОтдельно разбирали выбор контроля через модель DISC. Красные - не дослушивают задачу и могут сделать не то, им нужен периодический контроль. Желтые - фантазеры, придумают
    Школа менеджмента STRATOPLANСтратоплан - Лучшая школа для руководителейУчим умных людей работать с другими умными людьми
    2,0201412101Open in Telegram
  • Павлин Шарит

    20 Apr, 16:04edited

    Как отмечали в комментариях выше - opus 4.7 действительно может блокировать чаты, столкнулся лично
    Image from a post by Павлин ШаритImage from a post by Павлин Шарит
    2,17041Open in Telegram
  • Павлин Шарит

    16 Apr, 14:44

    Поднять продуктивность!
    Image from a post by Павлин ШаритImage from a post by Павлин Шарит
    2,870137Open in Telegram
  • Павлин Шарит

    14 Apr, 16:24

    Warp не перестает удивлятьРебята, которые начинали как просто красивый терминал, сделали пивот в сторону AI-агентов, а теперь пошли еще дальше - стали оберткой над другими агентами. И сделали это красивоТеперь Warp из коробки поддерживает Claude Code, Codex, OpenCode, Gemini CLI и вообще любой агентский CLI. То есть весь тулинг, который они построили для своего агента - код-ревью, нотификации, удобный ввод - теперь работает и с вашим любимым агентомЧто добавили:- Вертикальные табы - все агентские сессии в одном месте со статусом, веткой git и директорией. Запустил пять сессий Claude Code на рефакторинг - видишь состояние каждой и переключаешься в один клик - Нотификации - запустил агента, переключился на другую задачу, и Warp дергает тебя в момент, когда агенту нужно твое внимание. Это прям приятная вещь для тех, кто гоняет несколько агентов параллельно - Код-ревью прямо на
    2,9201021Open in Telegram
  • Павлин Шарит

    9 Apr, 09:55

    Устали сливать токены в AI-ассистентах на мусор?Когда работаешь с Claude Code или Codex, большАя часть контекста - это шум: портянки вывода тестов, многоэтажные ls, простыни docker logs. Модель это всё читает и тратит токены, которые вы оплатилиRTK (Rust Token Killer) - CLI-прокси, который фильтрует и сжимает вывод команд до того, как он попадает в контекст модели. Написан на Rust, добавляет меньше 10ms оверхедаОдин пример - pytest без и с RTK: # Обычный pytest (~2000 токенов) collected 47 itemstest_api.py::test_create_user PASSED test_api.py::test_get_user PASSED test_api.py::test_update_user PASSED ... ещё 40 строк зелёных тестов ... test_api.py::test_delete_user FAILED# rtk pytest (~200 токенов) FAILED: 1/47 tests test_delete_user: AssertionError at test_api.py:84
    GitHubGitHub - rtk-ai/rtk: CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependenciesCLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies - rtk-ai/rtk
    2,98021431Open in Telegram
  • Павлин Шарит

    6 Apr, 08:45

    CTO, который не говорит на языке денег - просто исполнительПродолжаю делиться впечатлениями от школы CTO от Стратоплана. Этот блок оказался более прикладным, чем первый. Четыре основных направления - информационная безопасность, финансы, управление продуктами и наймПро ИБ. Я далек от этой темы, но занятие зацепило не техническими деталями, а подходом к мышлению. Главный инсайт - не нужно пытаться защитить все. Нужно определить то, без чего бизнес перестанет существовать, и сфокусироваться на этом. Есть даже термин для этого - Digital Crown Jewels, "цифровые алмазы короны". Определил их - дальше строишь защиту вокруг приоритетов, а не пытаешься закрыть все 1000 уязвимостей разом. Сам фреймворк мышления - "не все, а главное" - работает далеко за пределами безопасностиФинансовый блок занял три занятия - от базовых отчетов до построения финансовых моделей и инвестиционного анализа.
    Школа менеджмента «Стратоплан»Технический директор. Управление технологиями и людьмиПрограмма для будущих и действующих технических директоров от Школы Стратоплан. Управление технологиями, командами и бизнесом: практика, AI-инструменты, работа с тренером.
    2,25015131Open in Telegram
  • Павлин Шарит

    2 Apr, 11:03

    Наконец-то LLM добрались и до ТГ
    Image from a post by Павлин ШаритImage from a post by Павлин Шарит
    2,1506541Open in Telegram
  • Павлин Шарит

    13 Mar, 09:44

    forwarded from @opensource_findings

    django-modern-rest@0.1.0 – первый публичный релиз!Исходники: https://github.com/wemake-services/django-modern-rest Подробнейшая документация: https://django-modern-rest.readthedocs.io Пример настоящего приложения: https://github.com/wemake-services/wemake-django-templateПервый анонс был уже какое-то время назад. Так что давайте повторять, что у нас тут происходит.Во-первых, у нас рекорд: еще нет ни одного релиза, а уже 560+ ⭐ на Гитхабе (сходите поставьте, кто еще не). Вижу, что люди ждут, вижу интерес. Спасибо!import uuid import msgspec from dmr import Body, Controller from dmr.plugins.msgspec import MsgspecSerializerclass UserCreateModel(msgspec.Struct): email: str
    GitHubGitHub - wemake-services/django-modern-rest: Modern REST framework for Django with types and async support!Modern REST framework for Django with types and async support! - wemake-services/django-modern-rest
    2,420371Open in Telegram
  • Павлин Шарит

    4 Mar, 14:48

    Если новый мак от 600$ не интересен, то зацените хотя бы их hero-секцию на обновленном сайте
    2,460video9221Open in Telegram
  • Павлин Шарит

    23 Feb, 08:04

    Опасность использования loaddata в миграцияхЕсть одна команда в Django, которая работает идеально - ровно до того момента, пока ты не попробуешь накатить миграции с нуляРечь о call_command("loaddata", ...) внутри миграцииВыглядит невинно: добавляешь начальные данные в базу прямо при создании схемы - удобно, лаконично. Но потом ты добавляешь новое поле в модель, и при прогоне миграций с нуля всё ломаетсяПочему?Когда ты пишешь RunPython и вызываешь apps.get_model() - ты получаешь историческую модель. Это не та модель, что у тебя сейчас в models.py, а её слепок на момент конкретной миграции. Django специально реконструирует её из цепочки миграций, чтобы INSERT и UPDATE содержали только те колонки, которые реально существуют в базе прямо сейчас - в процессе накаткиА вот loaddata на эту логику плевать хотел - он всегда импортирует модель напрямую из приложения, то есть берёт
    3,08014321Open in Telegram