Библиотека программиста
77.7K subscribers
4.78K photos
295 videos
98 files
7.93K links
Все самое полезное для программиста в одном канале.

Наши курсы: https://clc.to/Jil6fg

По рекламе: @tproger_sales_bot

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
👀 Как вы смотрите видео?

Разбираете урок, слушаете интервью фоном или начинаете на телефоне, а продолжаете на большом экране?

Хотим узнать, что делает просмотр удобным для вас. Вспомните последнее видео — ролик, урок, фильм или серию сериала — и расскажите о своём опыте. Если детали не запомнились, можно так и ответить.

🕰️ Опрос займёт около 3 минут.

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

🔗 Поделиться опытом

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤21
🖥 Больше реплик — медленнее git push

На GitHub копии репозитория одновременно обеспечивают надёжность хранения и обслуживают чтение. Но каждая дополнительная копия участвует и в записи: расширили возможности для clone — добавили работы при push.

С параллельными ИИ-агентами этот компромисс стал заметнее. Они часто создают коммиты, а CI многократно читает одни и те же ветки. В инженерном разборе GitHub объясняют, почему быстрый clone решает только часть задачи.

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

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8⚡6👏5🔥4🤔4
🔐 JWT есть. Проверки прав может не быть

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

В разборе механизмов защиты API сравнивают API keys, JWT и OAuth и показывают, как рабочая на вид схема превращается в уязвимость: токен без срока действия, ключ в репозитории, слишком свободный redirect URI.

Для ревью разделите два вопроса: как сервис проверяет личность и где проверяет право на конкретную операцию. У JWT проверьте подпись, срок действия, издателя и получателя. У эндпоинта — доступ к запрошенному объекту. Успешный вход ещё не означает доступ ко всем данным.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10👍7👾5
🧠 Агент снова «починил». Баг остался

После нескольких «попробуй ещё раз» исправлений становится больше, а воспроизвести исходную ошибку — сложнее. Агент меняет код, но из повторяющейся жалобы не узнаёт ничего нового.

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

Дальше — одна правка за раз и проверка исходного сценария в приложении. Если сбой воспроизводится тестом, сначала зафиксируйте его тестом. Так у следующей попытки появится критерий успеха. Сообщение «готово» в чате агента проверку не заменяет.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
😁8🎉6👍5🌚5
Какими ИИ-ассистентами и агентами вы пользуетесь? Можно выбрать несколько
Anonymous Poll
8%
GitHub Copilot
1%
Codeium
46%
Claude Code
23%
Gemini
48%
ChatGPT
4%
GigaCode (Сбер)
2%
Yandex Code Assistant
29%
DeepSeek
5%
Hermes Agent
12%
Другое (напишу в комментариях)
👍11⚡8👏3
Read. Write. Edit. Bash.

Это базовый набор операций Pi — агента, на котором построен OpenClaw. Дополнительные возможности появляются через расширения: агент может написать их по запросу пользователя, перезагрузить и проверить в работе.

У такого устройства есть полезные детали:
• состояние расширений хранится в сессии;
• беседу можно разветвить для отладки и вернуться с кратким пересказом;
• инструкции и примеры помогают агенту создавать новые функции.

Армин Ронахер разбирает Pi на собственных примерах: среди расширений, созданных по его запросам, есть список задач и ревью изменений кода. Получается взгляд на выбор ИИ-инструмента через то, что пользователь может настроить в нём под свою работу.

#ии #инструменты
❤14👍6🤔2
⌨️ 150 карточек на странице. Видны только пять

Браузер может тратить время на содержимое далеко за пределами экрана. content-visibility: auto позволяет отложить часть этой работы до момента, когда блок понадобится для отображения.

В эксперименте со 150 карточками автор измеряет рендеринг в DevTools и разбирает следующий вопрос: как сохранить геометрию страницы, пока содержимое пропущено. Для этого пригодится contain-intrinsic-size с примерной высотой блока.

Значение auto позволяет повторно использовать уже измеренный размер. Начальную оценку подбирайте по своим карточкам: слишком большая или маленькая меняет положение контента при прокрутке. Проверяйте и загрузку, и скролл — часть работы вы переносите на потом.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍11
🔐 Данные зашифрованы. Как найти нужную запись?

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

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

Если исходное значение восстанавливать не нужно, рассмотрите HMAC для сопоставления. Если нужно — отдельно продумайте доступ к расшифровке и ключам. Начните с операций, которые нужны потребителям данных: точное совпадение, диапазон и поиск по префиксу требуют разных решений.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🤩9🔥5
🦀 Почему dbg! всё ещё удобнее отладчика

Команда Rust опубликовала результаты опроса более 2300 участников. Самыми популярными подходами оказались вывод в консоль и dbg!: для небольшого сбоя они часто проще настройки отладчика.

В результатах опроса видно, что мешает работе: значения enum и коллекций отображаются неудобно, переменные не всегда доступны, а пошаговая отладка async-кода вызывает сложности. Это ответы участников опроса, а не статистика всех разработчиков Rust.

Для авторов библиотек есть полезная деталь: атрибут debugger_visualizer позволяет включить визуализаторы в отладочную информацию. Поддерживаются Natvis и GDB pretty printers. Пользователю вашей структуры данных будет проще увидеть её содержимое, чем разбирать внутренние поля.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥9👾8
🛠 Инструмент деплоя сменили. Что считать успехом?

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

Автор руководства на TypeScript выносит эти условия в отдельную спецификацию. Два исполнителя получают один контракт и возвращают данные для проверки: версию, доступные реплики, долю ошибок и задержку.

Сравнивать можно результат операции, даже если шаги внутри различаются. Примеры учебные, в памяти, но вопрос для своего CI/CD вполне практический: при смене инструмента вы переносите команды или сохраняете условия, при которых деплой считается успешным?

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍9🙏4
Почему разработчик планирует отдавать больше задач Claude

Винсент Шмальбах описал план перераспределить расходы на ИИ: больше работы отдавать Claude, а Codex сохранить для части задач.

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

В личном разборе Шмальбах связывает эти эпизоды с условиями подписки и затратами на собственные проекты.

#ии #инструменты

🐸 Библиотека ИИ для айтишников
Please open Telegram to view this post
VIEW IN TELEGRAM
👏8👾7❤5💯5👍4😍3
📊 API тормозит. В логах ошибок нет

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

В руководстве по NestJS Observe разбирают наблюдаемость с контекстом фреймворка: контроллеры, провайдеры, guards и interceptors помогают понять, где выполнялась работа и куда ушло время.

Логи описывают события, метрики показывают тенденции, трассировка связывает этапы операции. При выборе инструмента учитывайте весь стек: глубокий контекст NestJS полезен его командам, а для сервисов на разных языках может быть важнее общая архитектура на OpenTelemetry.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👏6🥰2
🧠 Ответ короче. Задача дороже

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

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

Часть экономии дала уборка лишнего форматирования, которое агент уже не использовал. Если оптимизируете своего агента, считайте стоимость завершённой задачи, число повторных действий и качество результата. Минимальный ответ инструмента может оказаться не самым выгодным.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
👾16❤13
📊 Архитектурную схему тоже можно отправить на ревью

Добавили очередь, разделили сервис, поменяли базу — а в документации всё ещё старая картинка. Если схема описана кодом, её изменения можно обсуждать в том же PR.

В руководстве по Python Diagrams показывают, как собрать схему из узлов, связей и кластеров. Graphviz отвечает за отрисовку, а в Python вы задаёте компоненты и направление потока данных.

Исходник можно хранить рядом с проектом и генерировать изображение при сборке документации. Схема сама не узнает, что вы добавили сервис: обновлять её всё равно придётся. Зато у изменений появятся история и ревью.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤21
📊 Индекс есть. Запрос стал медленнее

В архивном треде r/PostgreSQL автор отключил последовательное сканирование, чтобы база использовала индексы. По его замерам, запрос стал выполняться около 80 секунд вместо 18.

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

Сравнивайте планы на своей нагрузке через EXPLAIN (ANALYZE, BUFFERS): оценки и фактические строки, время узлов и чтение страниц. Отключение Seq Scan годится для сравнения планов, но не как универсальная настройка ускорения.

🔗 Разбор запроса и обсуждение

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍11
Вебинар в прямом эфире уже идёт десять минут. Вы только открыли трансляцию. Что для вас важнее всего?
Anonymous Poll
13%
Минимальная задержка от живого момента.
10%
Стабильное разрешение картинки.
15%
Ровный звук.
62%
Возможность отмотать назад и вернуться в эфир.
👍9👾8❤7
🖥 Песочница есть. Файлы проекта всё ещё можно удалить

В Docker Sandboxes агент работает внутри отдельной microVM. Но доступ к проекту зависит от режима: direct разрешает сразу менять исходную папку, clone даёт отдельную копию для работы.

Автор эксперимента с Claude Code проверил это на Mac: в direct агент удалил файл и создал Git hook. Удаление попало в обычный diff, а hook в .git/hooks — нет. Его не запускали.

В clone изменения остались в копии. При этом агент мог читать файлы проекта и отправить тестовое значение на разрешённый сервер. Перед запуском проверьте доступные папки и сеть; после работы в direct может понадобиться проверить больше, чем diff.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍5🤔5
Forwarded from Типичный программист
Общая папка для работы Claude Code и Codex

Луи-Франсуа Бушар собрал заметки, инструкции-скиллы, скрипты и итоги встреч в Obsidian. Его связка устроена так:

Папка хранит исходные материалы и решения
↓
Индекс указывает, где искать данные для задачи
↓
Claude Code планирует работу
↓
Codex выполняет задачи по его вызову

В описании этого рабочего процесса Бушар объясняет, зачем даёт агенту сведения для конкретной задачи. Начать предлагает с общей папки, короткого индекса и одного повторно используемого скилла.

#ии #инструменты
👾8❤7🔥3😁3👍2