Учим LLM работать с файлами локально
На Тпрогер вышла пошаговая инструкция о том, как поднять локальную агентную AI‑систему из трёх компонентов:
— LibreChat — удобный UI для общения с LLM
— MCP‑сервер — стандартный доступ к файлам и инструментам
— Langflow — визуальный конструктор для многоступенчатых сценариев (с валидацией и расчётами)
Всё работает в изолированной Docker‑сети. Данные никуда не уходят.
В статье готовые docker-compose.yml, конфиги librechat.yaml, пример кастомного Python‑компонента для расчётов и таблиц, а также схемы работы каждого этапа.
@tproger
Читайте также в VK, Max и Дзен
На Тпрогер вышла пошаговая инструкция о том, как поднять локальную агентную AI‑систему из трёх компонентов:
— LibreChat — удобный UI для общения с LLM
— MCP‑сервер — стандартный доступ к файлам и инструментам
— Langflow — визуальный конструктор для многоступенчатых сценариев (с валидацией и расчётами)
Всё работает в изолированной Docker‑сети. Данные никуда не уходят.
В статье готовые docker-compose.yml, конфиги librechat.yaml, пример кастомного Python‑компонента для расчётов и таблиц, а также схемы работы каждого этапа.
@tproger
Читайте также в VK, Max и Дзен
❤21👍9✍4👏3🔥2🌭2💯1🤣1
🤯96😁48❤3👍3🔥2🎉2🌚2👻2🥰1💋1😎1
Как джуниору доказать, что в него нужно вкладываться
В комьюнити вот уже который год живет стандартная присказка: «Джунов больше не берут». Да и вы сами замечаете, что на ваше резюме с уникальными сопроводительными письмами тоже никто не отвечает. Получается, в ИТ путь закрыт?
На самом деле, нет. Компании продолжают нанимать новичков, платить им, тратить время на их обучение. Только делают они это осторожно, потому что боятся, что:
— вы накрутите опыт и сольетесь за полгода,
— из-за этого они потеряют время и деньги на ваш и будущий наём.
Поэтому задача джунов трансформируется: теперь нужно доказать, что вы стоите инвестиций. Как это делать, читайте в статье на сайте Тпрогер.
Один из важных и непростых инсайдов — сразу на добротную зарплату претендовать не получится. Нужно будет принять, что первый год придется работать за минимальную сумму, которая покрывает ваши базовые потребности. Зато дальше — больше. Но об этом в материале.
@tproger
Читайте также в VK, Max и Дзен
В комьюнити вот уже который год живет стандартная присказка: «Джунов больше не берут». Да и вы сами замечаете, что на ваше резюме с уникальными сопроводительными письмами тоже никто не отвечает. Получается, в ИТ путь закрыт?
На самом деле, нет. Компании продолжают нанимать новичков, платить им, тратить время на их обучение. Только делают они это осторожно, потому что боятся, что:
— вы накрутите опыт и сольетесь за полгода,
— из-за этого они потеряют время и деньги на ваш и будущий наём.
Поэтому задача джунов трансформируется: теперь нужно доказать, что вы стоите инвестиций. Как это делать, читайте в статье на сайте Тпрогер.
Один из важных и непростых инсайдов — сразу на добротную зарплату претендовать не получится. Нужно будет принять, что первый год придется работать за минимальную сумму, которая покрывает ваши базовые потребности. Зато дальше — больше. Но об этом в материале.
@tproger
Читайте также в VK, Max и Дзен
🤣14👍7❤5👀4🎉1💯1🍌1💘1💊1
Открыл NYT почитать новости — браузер скачал 49 МБ и сделал 422 сетевых запроса
Разработчик залогировал загрузку нескольких страниц крупных новостных сайтов. Результат NYT: 49 МБ данных, 422 запроса, две минуты до полной загрузки. Для сравнения — Windows 95 весила 28 дискет, то есть меньше этой одной страницы.
Большая часть веса — не текст и не картинки. Пока пользователь читает заголовок, браузер параллельно скачивает и выполняет несколько мегабайт трекинг-JS, проводит программатик-аукцион среди рекламных бирж и отправляет поведенческие POST-маяки на десятки эндпоинтов. Именно эти скрипты греют телефон и разряжают батарею.
Автор называет это «архитектурой враждебности»: viewability и time-on-page — ключевые метрики для CPM, поэтому каждое UX-решение оптимизирует задержку пользователя на странице, а не его удобство. Cookie-баннеры с намеренно блёклыми кнопками закрытия, два одновременных модала, запрос на пуш-уведомления — всё это не баги, а фичи монетизации.
Полный разбор можно прочитать по ссылке.
#безопасность
Разработчик залогировал загрузку нескольких страниц крупных новостных сайтов. Результат NYT: 49 МБ данных, 422 запроса, две минуты до полной загрузки. Для сравнения — Windows 95 весила 28 дискет, то есть меньше этой одной страницы.
Большая часть веса — не текст и не картинки. Пока пользователь читает заголовок, браузер параллельно скачивает и выполняет несколько мегабайт трекинг-JS, проводит программатик-аукцион среди рекламных бирж и отправляет поведенческие POST-маяки на десятки эндпоинтов. Именно эти скрипты греют телефон и разряжают батарею.
Автор называет это «архитектурой враждебности»: viewability и time-on-page — ключевые метрики для CPM, поэтому каждое UX-решение оптимизирует задержку пользователя на странице, а не его удобство. Cookie-баннеры с намеренно блёклыми кнопками закрытия, два одновременных модала, запрос на пуш-уведомления — всё это не баги, а фичи монетизации.
Полный разбор можно прочитать по ссылке.
#безопасность
👍42🤯24🤣7❤3⚡2🫡2🔥1👏1🌚1🍌1🤪1
Черновик: надо спросить у пользователей какого контента им не хватает и чего хочется видеть больше. А то мы стараемся ищем, а реакций и комментариев мало
2😁151❤66✍31💊15🗿11💯5🫡5⚡3🌭3💅3👻2
Устали от уймы API-ключей и танцев с бубном вокруг OpenAI, Claude и Gemini?
Снять эту головную боль может один API-роутер.
Разбираемся на Tproger, почему три разных API могут тормозить ваш проект и как подключить GPT-5.4, Claude Sonnet 4.6 и Gemini 3.1 Pro через единую точку входа без переписывания кода.
Кратко о содержании:
— Что умеет хороший роутер: fallback, балансировка, кеш, единый биллинг.
— Пошаговый гайд подключения через одни API на Python и Node.js.
— Реальный кейс: мультимодельный бот с авто-переключением за 30 минут.
— Подводные камни: контекстные окна, latency, rate limits (и как их обойти).
Читать материал: https://tprg.ru/YWhU
@tproger
Читайте также в VK, Max и Дзен
Снять эту головную боль может один API-роутер.
Разбираемся на Tproger, почему три разных API могут тормозить ваш проект и как подключить GPT-5.4, Claude Sonnet 4.6 и Gemini 3.1 Pro через единую точку входа без переписывания кода.
Кратко о содержании:
— Что умеет хороший роутер: fallback, балансировка, кеш, единый биллинг.
— Пошаговый гайд подключения через одни API на Python и Node.js.
— Реальный кейс: мультимодельный бот с авто-переключением за 30 минут.
— Подводные камни: контекстные окна, latency, rate limits (и как их обойти).
Читать материал: https://tprg.ru/YWhU
@tproger
Читайте также в VK, Max и Дзен
🔥6👍4❤3👏3😍2🤪2🤯1🎉1👌1💯1🍾1
Типичный программист
Это ж сколько можно было программистов нанять на эти деньги @tproger Читайте также в VK, Max и Дзен
Я тут в комментариях увидел интересную идею от нашего подписчика.
Предлагаю вам придумать название для такой премии, а самый крутой вариант возьмем в качестве названия рубрики и будем рассказывать вам об интересных случаях.
Вы в деле? Тогда пишите в комментарии 👇
@tproger
Читайте также в VK, Max и Дзен
Предлагаю вам придумать название для такой премии, а самый крутой вариант возьмем в качестве названия рубрики и будем рассказывать вам об интересных случаях.
Вы в деле? Тогда пишите в комментарии 👇
@tproger
Читайте также в VK, Max и Дзен
👍39😁16💯5🔥4❤3💊3👏2👎1💔1🤨1🗿1
Типичный программист
Думали я забыл? Ни в коем случае! Пора хвастаться, коллеги Вот чем в прошлый раз вы хвастались: — убийца Power Point; — отреставрированный Вконтакте образца 2013 года; — опенсорс курсы для программистов; — стеганографический «швейцарский нож» для изображений;…
Вот и прошла неделя... Пора снова хвастаться!
Это проекты, про которые вы рассказали на в прошлый раз:
— движок для ведения личного блога;
— голосовой помощник для автомобилей с Android Automotive;
— система автоматизированной проверки строительной документации;
— проект для криптоторговли;
— два приложения уже доступных в AppStore.
Не стесняйтесь и продолжайте хвастаться даже незначительным прогрессом. Это помогает сохранять мотивацию. И лайкать чужие успехи не забывайте!
Это проекты, про которые вы рассказали на в прошлый раз:
— движок для ведения личного блога;
— голосовой помощник для автомобилей с Android Automotive;
— система автоматизированной проверки строительной документации;
— проект для криптоторговли;
— два приложения уже доступных в AppStore.
Не стесняйтесь и продолжайте хвастаться даже незначительным прогрессом. Это помогает сохранять мотивацию. И лайкать чужие успехи не забывайте!
👍17❤5🔥4👏3⚡2👾2🤔1🤨1🍓1😇1🤝1
Zig наконец решил проблему раскраски функций — ту самую, которая мучает разработчиков асинхронного Rust
В версии 0.16.0 (вышла 14 апреля) синхронный и асинхронный код имеют одинаковую сигнатуру — отличается только переданный I/O-интерфейс. Никаких
Второе крупное изменение — «Juicy Main». Точка входа теперь получает готовые зависимости через параметр
Релиз ломает API стандартной библиотеки — придётся переписывать проекты. Но если это означает, что асинхронный код перестанет быть отдельным языком внутри языка, оно того стоит.
@tproger
Читайте также в VK, Max и Дзен
В версии 0.16.0 (вышла 14 апреля) синхронный и асинхронный код имеют одинаковую сигнатуру — отличается только переданный I/O-интерфейс. Никаких
async fn, никакого заражения кодовой базы маркерами асинхронности. Если вы писали async Rust и упирались в то, что половина экосистемы живёт в параллельной реальности — посмотрите, как это решено здесь.Второе крупное изменение — «Juicy Main». Точка входа теперь получает готовые зависимости через параметр
std.process.Init: аллокаторы, I/O, переменные окружения. Раньше каждая программа начиналась с одного и того же бойлерплейта — создать аллокатор, дёрнуть env, получить аргументы. Теперь это подаётся снаружи.Релиз ломает API стандартной библиотеки — придётся переписывать проекты. Но если это означает, что асинхронный код перестанет быть отдельным языком внутри языка, оно того стоит.
@tproger
Читайте также в VK, Max и Дзен
👍21🤣14❤6🔥5🎉1🍓1🙊1
Три ИТ-события, которые вы могли пропустить (а зря)
Пока все гонятся за хайповыми новостями, мы вместе с коллегой Андреем Дмитриевым из JUG.ru собрали события, которые уже повлияли на мир разработки.
В пилотном выпуске нового подкаста:
— Хакеры стерли десятки тысяч ПК через Microsoft Intune
— Дефицит оперативной памяти до 2030 года
— Оптимизация glibc под x86_64
О других событиях вы можете узнать, послушав подкаст.
Особое внимание предлагаем уделить рефлексии. В выпуске мы подсветили, почему те или иные истории важны для ИТ-сообщества. А теперь призываем вас в комменты под видео: что уже вошло в вашу жизнь из этих кейсов? И как думаете, что из этого не производит резонанса?
Смотрите подкаст и присоединяйтесь к дискуссии: https://tprg.ru/S7jD
@tproger
Читайте также в VK, Max и Дзен
Пока все гонятся за хайповыми новостями, мы вместе с коллегой Андреем Дмитриевым из JUG.ru собрали события, которые уже повлияли на мир разработки.
В пилотном выпуске нового подкаста:
— Хакеры стерли десятки тысяч ПК через Microsoft Intune
— Дефицит оперативной памяти до 2030 года
— Оптимизация glibc под x86_64
О других событиях вы можете узнать, послушав подкаст.
Особое внимание предлагаем уделить рефлексии. В выпуске мы подсветили, почему те или иные истории важны для ИТ-сообщества. А теперь призываем вас в комменты под видео: что уже вошло в вашу жизнь из этих кейсов? И как думаете, что из этого не производит резонанса?
Смотрите подкаст и присоединяйтесь к дискуссии: https://tprg.ru/S7jD
@tproger
Читайте также в VK, Max и Дзен
❤5👍5🔥2🎉2😍2😐2🎄2🦄2🥰1👏1🆒1
jj — CLI поверх Git, где конфликты решаются автоматически, а любую операцию можно откатить
Представьте Git без staging area, где rebase не останавливается на конфликтах, а любую ошибку можно отменить одной командой. Это не фантазия — это jj, CLI для Jujutsu, который работает поверх вашего .git/ и не требует от коллег ничего менять.
Ключевые отличия: рабочая копия — это коммит (любое изменение файла формирует новую версию с тем же change ID). Конфликты хранятся в истории как часть коммита, а не как маркеры в файле — rebase продолжается, потомки перестраиваются автоматически. И главное:
Стив Клабник (автор «The Rust Programming Language») написал учебник по jj — с объяснением концепций и тем, чем они отличаются от Git.
@tproger
Читайте также в VK, Max и Дзен
Представьте Git без staging area, где rebase не останавливается на конфликтах, а любую ошибку можно отменить одной командой. Это не фантазия — это jj, CLI для Jujutsu, который работает поверх вашего .git/ и не требует от коллег ничего менять.
Ключевые отличия: рабочая копия — это коммит (любое изменение файла формирует новую версию с тем же change ID). Конфликты хранятся в истории как часть коммита, а не как маркеры в файле — rebase продолжается, потомки перестраиваются автоматически. И главное:
jj undo откатывает любую операцию. Потерять работу в jj сложнее, чем в Git.Стив Клабник (автор «The Rust Programming Language») написал учебник по jj — с объяснением концепций и тем, чем они отличаются от Git.
@tproger
Читайте также в VK, Max и Дзен
❤🔥17👍11❤5🔥4👏3👀3💯2⚡1🎉1🍓1😇1
Постоянный доступ в Kubernetes: как атакующие закрепляются в кластере и остаются незамеченными
Вы думаете, что если злоумышленник получил доступ к ноутбуку администратора на пять минут — это не страшно? А зря.
Чтобы изменить мнение, советуем почитать перевод статьи Рори Маккьюна «Beyond the Surface» — детальный разбор одного реального вектора атаки на Kubernetes. Автор показывает, как с помощью встроенных механизмов (kubectl debug, containerd, статические манифесты, CSR API, Token Request API) можно:
— получить root-доступ к узлу;
— запустить скрытый контейнер в обход API;
— организовать удалённое управление через Tailscale;
— создать вечные учётные данные, которые невозможно отозвать без ротации корневого сертификата.
В статье — не только техники атак, но и чёткие признаки обнаружения, а главное — меры защиты: изоляция API-сервера от интернета, минимальные привилегии RBAC, централизованные логи узлов.
Полный текст: https://tprg.ru/gfJ6
@tproger
Читайте также в VK, Max и Дзен
Вы думаете, что если злоумышленник получил доступ к ноутбуку администратора на пять минут — это не страшно? А зря.
Чтобы изменить мнение, советуем почитать перевод статьи Рори Маккьюна «Beyond the Surface» — детальный разбор одного реального вектора атаки на Kubernetes. Автор показывает, как с помощью встроенных механизмов (kubectl debug, containerd, статические манифесты, CSR API, Token Request API) можно:
— получить root-доступ к узлу;
— запустить скрытый контейнер в обход API;
— организовать удалённое управление через Tailscale;
— создать вечные учётные данные, которые невозможно отозвать без ротации корневого сертификата.
В статье — не только техники атак, но и чёткие признаки обнаружения, а главное — меры защиты: изоляция API-сервера от интернета, минимальные привилегии RBAC, централизованные логи узлов.
Полный текст: https://tprg.ru/gfJ6
@tproger
Читайте также в VK, Max и Дзен
❤14💯5🔥3🙏2✍1😱1😐1😈1😇1🤗1🤪1
GitHub запустил нативные Stacked PRs — альтернатива Graphite
Если ваши пулл-реквесты разрастаются до 2000 строк и ревьюеры тонут в диффе — у GitHub теперь есть родной способ разбить большую задачу на стэк маленьких PR. Stacked PRs пока в Private Preview, но CLI-клиент gh stack уже опубликован (правда, работает только если вас пустили в preview).
Stacked PR — это цепочка пулл-реквестов, где каждый нацелен не на main, а на ветку PR ниже. Вместо одного огромного реквеста с пятью разными по смыслу изменениями вы делаете пять маленьких, которые читаются независимо и строятся один на другом.
Раньше стэки делали сторонними инструментами: облачный Graphite, консольные ghstack от Meta или spr. Все они симулировали стэки поверх обычного GitHub и ломались на ребейзах, merge queue и branch protection. Нативная реализация разобрали на Tproger — теперь можно не объяснять джунам, почему у команды три CLI для одного пулл-реквеста.
@tproger
Читайте также в VK, Max и Дзен
Если ваши пулл-реквесты разрастаются до 2000 строк и ревьюеры тонут в диффе — у GitHub теперь есть родной способ разбить большую задачу на стэк маленьких PR. Stacked PRs пока в Private Preview, но CLI-клиент gh stack уже опубликован (правда, работает только если вас пустили в preview).
Stacked PR — это цепочка пулл-реквестов, где каждый нацелен не на main, а на ветку PR ниже. Вместо одного огромного реквеста с пятью разными по смыслу изменениями вы делаете пять маленьких, которые читаются независимо и строятся один на другом.
Раньше стэки делали сторонними инструментами: облачный Graphite, консольные ghstack от Meta или spr. Все они симулировали стэки поверх обычного GitHub и ломались на ребейзах, merge queue и branch protection. Нативная реализация разобрали на Tproger — теперь можно не объяснять джунам, почему у команды три CLI для одного пулл-реквеста.
@tproger
Читайте также в VK, Max и Дзен
👍11❤8😍3⚡1🤯1🌚1😇1🗿1
Тренды разработки ПО в 2026 году
Разработчику сегодня приходится разбираться в ИИ, знать несколько ЯП, ориентироваться в 3-4 стеках.
На первый взгляд кажется, что все эти тренды появились буквально недавно. Но на самом деле, индустрия подталкивает к этому развитию уже не первый год.
Сейчас активно меняются архитектурные подходы, место безопасности в процессе разработки усиливается. Какие еще направления уже сейчас влияют на нашу работу и будут актуальны в ближайшем будущем — читайте в этом материале.
@tproger
Читайте также в VK, Max и Дзен
Разработчику сегодня приходится разбираться в ИИ, знать несколько ЯП, ориентироваться в 3-4 стеках.
На первый взгляд кажется, что все эти тренды появились буквально недавно. Но на самом деле, индустрия подталкивает к этому развитию уже не первый год.
Сейчас активно меняются архитектурные подходы, место безопасности в процессе разработки усиливается. Какие еще направления уже сейчас влияют на нашу работу и будут актуальны в ближайшем будущем — читайте в этом материале.
@tproger
Читайте также в VK, Max и Дзен
1😴8🌚6💯4💊3👻2👍1🔥1😭1👨💻1🙊1👾1
Keychron открыли исходники своих клавиатур — и теперь вы можете напечатать корпус любимой механики на 3D-принтере
Производитель выложил на GitHub больше 100 CAD-моделей: корпуса, платы, стабилизаторы, энкодеры, кейкапы. Серии Q, K, V, P и мыши M1–M7 — в форматах STEP, DXF и PDF.
Формально это source-available: смотреть, модифицировать под себя — можно, продавать — нельзя. Но для тех, кто хочет сделать кастомный корпус, поменять раскладку платы или просто разобраться, как устроен любимый кейборд изнутри — это подарок.
Сообщество кастомных клавиатур уже потирает руки.
#новости
@tproger
Читайте также в VK, Max и Дзен
Производитель выложил на GitHub больше 100 CAD-моделей: корпуса, платы, стабилизаторы, энкодеры, кейкапы. Серии Q, K, V, P и мыши M1–M7 — в форматах STEP, DXF и PDF.
Формально это source-available: смотреть, модифицировать под себя — можно, продавать — нельзя. Но для тех, кто хочет сделать кастомный корпус, поменять раскладку платы или просто разобраться, как устроен любимый кейборд изнутри — это подарок.
Сообщество кастомных клавиатур уже потирает руки.
#новости
@tproger
Читайте также в VK, Max и Дзен
1👍39🔥14❤3🦄3✍2👏2😭2🗿2💯1😐1
Как сделать развертывание в Kubernetes умным
Helm, Kustomize, Argo CD работают, пока ваше приложение простой stateless-сервис. А если нужен строгий порядок запуска, готовая база данных, последовательный пайплайн?
Тут либо приходится писать своего оператора (дорого, сложно, долго), либо надеяться на итоговую согласованность и молиться.
Есть и третий путь. Yoke + Air Traffic Controller (ATC) предлагают логику приложения как код, скомпилированный в WASM.
Вот что вы узнаете из перевода статьи Дэвида Демаре-Мишо:
— как построить пайплайн из трёх задач, где каждая следующая стартует только после успешного завершения предыдущей.
— как организовать координацию с внешними ресурсами.
Если вы еще не знакомы с Yoke и Air Traffic Controller самое время познакомиться.
@tproger
Читайте также в VK, Max и Дзен
Helm, Kustomize, Argo CD работают, пока ваше приложение простой stateless-сервис. А если нужен строгий порядок запуска, готовая база данных, последовательный пайплайн?
Тут либо приходится писать своего оператора (дорого, сложно, долго), либо надеяться на итоговую согласованность и молиться.
Есть и третий путь. Yoke + Air Traffic Controller (ATC) предлагают логику приложения как код, скомпилированный в WASM.
Вот что вы узнаете из перевода статьи Дэвида Демаре-Мишо:
— как построить пайплайн из трёх задач, где каждая следующая стартует только после успешного завершения предыдущей.
— как организовать координацию с внешними ресурсами.
Если вы еще не знакомы с Yoke и Air Traffic Controller самое время познакомиться.
@tproger
Читайте также в VK, Max и Дзен
1🔥4❤2👍2❤🔥1🤯1🎉1😍1👀1🙈1💘1🤷1