TGViewer
Channel Public Channel
Инструменты программиста

Инструменты программиста

@prog_tools

Полезные инструменты для программистов — бесплатные и платные

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Регистрация в перечне РКН: https://tprg.ru/mX0S
Subscribers
12.9K
Photos
1.7K
Videos
158
Links
2.1K

Showing posts older than #2833 · Back to latest

Older Posts 20 shown
Post #2832 1.27K

Forwarded from GameDev: разработка игр

80% корпоративных программ геймификации ломаются на одном и том же месте

По данным AmplifAI, игровые кампании дают в среднем вовлечённость на 100–150% выше, чем классические подходы, а геймифицированный контент шерится в 12 раз чаще. При этом примерно 80% корпоративных программ геймификации не достигают целей. Спрос огромный, качество — низкое, а причина проста: делать это берутся не те люди.

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

Forwarded from Zen of Python

Go-рутины в Python без async/await

Runloom экспериментально возвращает Python к простоте блокирующего кода: вызываете fiber(fn), пишете обычный recv/send или urlopen, а библиотека паркует задачу на сокете и переключает контекст. Никакого async def, никакого await — как до эпохи asyncio, но с миллионом лёгких потоков на всех ядрах.

Под капотом: hand-rolled ассемблерный context switch, work-stealing scheduler на C и netpoll. Цель: free-threaded Python 3.14t с выключенным GIL, когда один процесс действительно может загрузить все ядра, а не притворяться многопоточным.

Репозиторий на GitHub.
  • ✍ 2
Post #2830 1.38K

Forwarded from Типичный программист

mcpsnoop: Wireshark для MCP, который видит реальные вызовы инструментов

Официальный MCP Inspector подключается своим клиентом, поэтому он никогда не видит, что Cursor, Claude Code или Codex реально шлют серверу. Точка останова срабатывает только после прихода запроса, а значит не покажет вызов, который модель не сделала, или сделала с неправильными аргументами.

mcpsnoop сидит в настоящем пути данных. Оборачиваете команду сервера и наблюдаете каждый JSON-RPC кадр в терминале в реальном времени. Лично мне кажется, это удобнее, чем лазить по логам и гадать, почему инструмент молчит.

Репозиторий на GitHub.
  • ❤ 1
Post #2829 1.48K
Каждый раз, когда нужен ffmpeg, начинается один и тот же ритуал: гуглить флаги, собирать команду по кусочкам, молиться. Instagui превращает любой CLI-инструмент в локальную веб-форму одной командой.

Что внутри:

🔘 читает вывод --help инструмента, отправляет его Claude и получает JSON-схему опций, по которой рендерит форму на 127.0.0.1;
🔘 работает снаружи, без правок кода самого инструмента — в отличие от Gooey, которому нужен декоратор в Python-коде;
🔘 ffmpeg, yt-dlp и pandoc идут с готовыми схемами и работают сразу, без API-ключа;
🔘 схема кешируется после первого запуска, ключ нужен только на первое знакомство с новым CLI;
🔘 команды выполняются массивом аргументов без shell, поэтому инъекция через поля формы не проходит, а точная команда всегда показывается перед запуском.

Репозиторий появился 4 июля. Автор честно признаётся, что это его первый опенсорс-проект и основную работу под его наблюдением делал Claude Code.

Пригодится тем, кто раз в месяц вспоминает флаги ffmpeg или pandoc заново и хочет форму вместо man-страницы, не теряя видимости самой команды.

Язык: TypeScript. Лицензия: MIT.

@prog_tools
  • ✍ 2
Post #2828 1.7K
Когда MCP-сервер молча зависает или отдаёт агенту не то, смотреть некуда: стандартный MCP Inspector подключается к серверу как отдельный клиент и показывает свой трафик, а не тот, что реально шлёт ваш Cursor или Claude Code. mcpsnoop решает это как Wireshark: встаёт прозрачным прокси в настоящий канал и показывает живой поток JSON-RPC.

Что внутри:

🔘 оборачивает команду запуска сервера — mcpsnoop -- node build/index.js — и не вносит изменений в трафик;
🔘 подсвечивает зависшие и медленные вызовы и рассинхрон capabilities при хендшейке;
🔘 захваченный вызов можно переиграть против свежей копии сервера;
🔘 фильтры по инструменту, статусу, направлению и id, экспорт сессии в json, html или текст;
🔘 установка через go install, Homebrew или готовые бинарники, а команда mcpsnoop demo показывает всё без настройки.

Первый публичный релиз был в конце июня, версия v0.4.0 вышла 8 июля.

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

Язык: Go. Лицензия: MIT.

@prog_tools
  • ❤ 1
  • 👍 1
Post #2827 1.7K
Strix — ИИ-агенты, которые ищут и чинят уязвимости в коде

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

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

Если интересно посмотреть, как это работает на практике, загляните в репозиторий. Там примеры и документация.
GitHub GitHub - usestrix/strix: Open-source AI penetration testing tool to find and fix your app’s vulnerabilities. Open-source AI penetration testing tool to find and fix your app’s vulnerabilities. - usestrix/strix
  • 👍 2
Post #2826 1.62K
Если вы устали от бесконечных тасок и созвонов, то мы приготовили для вас игру, которая поможет отдохнуть

А заодно проверить вашу способность быстро запоминать новую инфу. Переходите по ссылке и играйте в нашу «Меморину». И делитесь результатами в комментариях!

Играть тут: https://tprg.ru/J9ZW
Post #2825 1.77K
Bumblebee — read-only сканер компрометаций цепочки поставок на машине разработчика

Bumblebee от Perplexity — один статический бинарник на Go под Apache 2.0, который проверяет, не попали ли ваши локальные зависимости в известные компрометации цепочки поставок. Он читает метаданные на диске из npm, pnpm, Yarn, Bun, PyPI, Go modules, RubyGems, Composer, конфигов MCP (Model Context Protocol) и расширений редактора или браузера, не запуская чужой код.

Bumblebee работает локально: он проверяет именно ту среду, в которой вы пишете код. Установить можно командой go install github.com/perplexityai/bumblebee@latest, затем запустите bumblebee.

Актуально на фоне роста атак на цепочку поставок.
GitHub GitHub - perplexityai/bumblebee: Read-only developer endpoint scanner for on-disk package, extension, and developer-tool metadata… Read-only developer endpoint scanner for on-disk package, extension, and developer-tool metadata, built to check exposure to known software supply-chain compromises. - perplexityai/bumblebee
Post #2824 1.86K
Когда параллельно работают несколько кодинг-агентов, каждый живёт в своей вкладке терминала, и непонятно, кто ждёт ответа, кто работает, а кто давно закончил. herdr собирает их в один терминал: как tmux, только с пониманием того, что в панелях сидят агенты.

Что внутри:

🔘 у каждого агента настоящий терминал, поэтому даже полноэкранные TUI рендерятся как надо;
🔘 сайдбар показывает состояние каждого: заблокирован, работает, закончил, простаивает — без хуков и настройки;
🔘 воркспейсы, вкладки и сплиты с полноценной поддержкой мыши;
🔘 фоновый сервер держит агентов живыми при отключении, переподключиться можно с другого терминала или с телефона по SSH;
🔘 локальный socket API и плагины на любом языке.

Один бинарник около 10 МБ, Linux и macOS, Windows в бете. 30 июня был первым в дневных трендах GitHub.

Пригодится тем, кто гоняет несколько Claude Code или Codex параллельно и устал от зоопарка вкладок.

Язык: Rust. Лицензия: AGPL-3.0 (двойное лицензирование).

@prog_tools
  • 👍 4
  • ❤ 2
  • 🙏 1
Post #2822 2.11K
Кодинг-агенты сжигают контекст на grep и чтение файлов, чтобы понять структуру чужого кода. codebase-memory-mcp подходит к задаче иначе: индексирует репозиторий в постоянный граф знаний и отдаёт агенту готовые структурные ответы через MCP.

Что внутри:

🔘 парсинг через tree-sitter для 158 языков, ядро Linux с его 28 млн строк индексируется за 3 минуты, обычный репозиторий — за миллисекунды;
🔘 структурные запросы отвечают быстрее миллисекунды: поиск символов, трассировка вызовов, анализ влияния правки, поиск мёртвого кода;
🔘 по замерам авторов 5 структурных запросов обходятся в ~3400 токенов против ~412 000 при переборе файлов;
🔘 один статический бинарник без зависимостей, всё работает локально; команда install сама настраивает Claude Code, Codex, Gemini CLI и ещё восемь агентов;
🔘 встроенная интерактивная 3D-визуализация графа кода.

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

Язык: C. Лицензия: MIT.

@prog_tools
  • ❤ 1
  • 🤔 1
Post #2821 1.8K
urfave/cli v3.10.1 — мелкий, но нужный патч для CLI на Go

urfave/cli — библиотека для консольных утилит на Go: команды, флаги, автокомплит для bash/zsh/fish/powershell и генерация справки декларативно, без сторонних зависимостей поверх стандартной библиотеки. На GitHub больше 24 тысяч звёзд. Версия v3.10.1 вышла 29 июня.

Что поправили:
🔘 алиас -v для флага версии теперь уступает место пользовательскому флагу, если тот тоже просит -v;
🔘 порядок подкоманд в автокомплите справки стал детерминированным, а не зависящим от порядка регистрации;
🔘 DefaultCommand научился обрабатывать собственные флаги, не отдавая их родительской команде;
🔘 поправлен подсчёт примеров в gfmrun, чтобы совпадал с реально запускаемым количеством.

Пригодится Go-разработчикам, которые пишут CLI-инструменты и хотят декларативно объявлять команды и флаги вместо ручного разбора os.Args.

https://github.com/urfave/cli/releases/tag/v3.10.1

Язык: Go. Лицензия: MIT.

@prog_tools
  • ❤ 1
  • 👍 1
Post #2820 1.6K
Meshery v1.0.50 — крупное обновление моделей под AWS

Meshery — платформа управления cloud native инфраструктурой: собирает Kubernetes, service mesh и облачные ресурсы в единую визуальную схему, из которой можно применять конфигурацию напрямую. Язык в основном TypeScript, в репозитории также много Go, на GitHub больше 11 тысяч звёзд. Релиз v1.0.50 вышел 29 июня.

Что приехало:
🔘 добавлены десятки relationship-описаний для сервисов AWS: 15 для aws-ecr-controller, 10 для aws-applicationautoscaler-controller, 12 для компонентов S3;
🔘 11 кросс-сервисных связей между Lambda, S3, DynamoDB, EC2, RDS, SNS, SQS, IAM, CloudWatch и ApiGatewayV2: теперь Meshery видит, как эти сервисы связаны между собой на схеме;
🔘 иерархические связи добавили и для других экосистем: Azure App Service, Flux, Karpenter, MetalLB, Stackgres, KEDA, cert-manager;
🔘 новые модели для AWS Glue Controller, nvidia-gpu-operator и node-feature-discovery;
🔘 в CLI исправили minimum(), которая при равных аргументах ошибочно возвращала максимум.

Пригодится DevOps- и platform-инженерам, которые собирают инфраструктуру как дизайн-схему, а не читают YAML построчно.

https://github.com/meshery/meshery/releases/tag/v1.0.50

Язык: TypeScript и Go. Лицензия: Apache-2.0.

@prog_tools
  • ❤ 2
Post #2819 1.73K
fastfetch 2.65.2 — точнее считает память при ZFS и не будит спящий GPU

fastfetch — быстрая замена neofetch, которая выводит информацию о системе в терминал: ОС, ядро, память, видеокарта, логотип дистрибутива. Написан на C, на GitHub больше 23 тысяч звёзд. Версия 2.65.2 вышла 28 июня.

Что поправили:
🔘 модуль памяти больше не учитывает ZFS ARC cache при подсчёте занятой памяти на Linux, FreeBSD, NetBSD и SunOS: раньше при включённом ZFS цифра получалась завышенной;
🔘 модуль GPU перестал будить спящую дискретную видеокарту на ноутбуках с гибридной графикой, чтобы просто узнать её название;
🔘 определение скорости PCIe-линка теперь работает только в режиме driverSpecific;
🔘 исправлен краш при определении поддержки аппаратных кодеков на драйвере amdgpu.

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

https://github.com/fastfetch-cli/fastfetch/releases/tag/2.65.2

Язык: C. Лицензия: MIT.

@prog_tools
  • ❤ 1
  • 💅 1
Post #2818 2.05K
LiteParse 2.4.0 — координаты слов и Markdown прямо в JSON

LiteParse переводит документы, в основном PDF, в структурированный JSON: текст, таблицы, координаты элементов на странице. Написан на Rust, но собирают биндинги под Python, Node.js, WASM и Docker. Релиз v2.4.0 вышел 30 июня, на GitHub уже больше 11 тысяч звёзд.

Главное в релизе:
🔘 в JSON можно включить word-level bounding box: координаты рамки для каждого отдельного слова на странице, а не только для блоков текста;
🔘 в page-level вывод добавили поле markdown, которое отдаёт содержимое страницы сразу в виде Markdown, без отдельного постпроцессинга;
🔘 обновление выкатили одновременно во всех формах поставки: crates и CLI, Python, Node.js, WASM и Docker-образ.

Пригодится тем, кто строит пайплайны обработки документов: OCR, импорт в CMS, подготовку данных для поиска.

https://github.com/run-llama/liteparse/releases/tag/crates-v2.4.0

Язык: Rust. Лицензия: Apache-2.0.

@prog_tools
  • 👍 1
  • 👎 1
  • 👏 1
Post #2817 1.9K
VPS vs VDS vs виртуальный хостинг: что выбрать в 2026

Часто сервер выбирают по цене, а потом упираются в нехватку ресурсов, гибкости или поддержки. И почти никто не знает главного: VPS и VDS — это в большинстве случаев одно и то же, разница только в названии. Реально выбор идёт между хостингом (провайдер всё настроил, но конфигурация ограничена) и изолированным сервером с root-доступом.

В подборке 6 провайдеров под разные сценарии: от старта на виртуальном хостинге за ~123 рубля в месяц до VPS с зарубежными локациями. Внутри реальные цены, лимиты, условия по бэкапам, тестовым периодам и подсказки как сделать правильный выбор для своего случая.
  • 🙏 1
Post #2816 2.08K
just 1.54.0 — раннер команд проекта научился кэшировать рецепты

just это команд-раннер: складываете команды проекта в justfile и зовёте их коротко, just build вместо длинной строки. От make он отличается тем, что это именно запускалка рецептов, без системы сборки и без правил о зависимостях файлов по умолчанию. Релиз 1.54.0 вышел 23 июня, на GitHub больше 34 тысяч звёзд.

Главное в релизе — кэширование рецептов:
🔘рецепт со скриптом помечается атрибутом [cache], и тогда just пропускает повторный запуск, пока ключ кэша не изменился;
🔘ключ это BLAKE3-хеш сериализованного JSON с именем рецепта, аргументами и дополнительными полями; сам кэш лежит в папке .justcache рядом с justfile и в репозиторий не коммитится;
🔘[cache(inputs = ["lib.c", "main.c"])] добавляет в ключ хеши входных файлов, поэтому правка исходника даёт промах кэша и перезапуск, как зависимости в make;
🔘на записях кэша берутся файловые локи: при параллельном запуске с одним ключом рецепт отработает один раз, второй процесс подождёт и пропустит;
🔘флаг --no-cache отключает кэш целиком, а just --clean чистит его выборочно, по рецепту или по модулю.

Что ещё приехало в 1.54.0:
🔘атрибут [continue] продолжает рецепт, если команду прервали сигналом и она при этом успела завершиться успешно, по умолчанию это SIGINT, то есть Ctrl-C;
🔘set dotenv-command и --dotenv-command запускают команду и подгружают её вывод как env-файл, удобно для расшифровки секретов на лету, например через sops;
🔘аргументы рецепта теперь могут быть выражением, а не только литералом.

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

https://github.com/casey/just

Язык: Rust. Лицензия: CC0-1.0.

@prog_tools
  • 💯 2
  • 🔥 1
  • 🤔 1
Post #2815 4.81K
Pathway — Python-фреймворк для потоковой обработки данных на Rust-движке

Pathway даёт писать на Python пайплайны реального времени: чтение из источника, преобразования, запись в приёмник, а тяжёлая часть считается Rust-движком. Тот же код работает и на пакетных данных, и на бесконечном потоке. Релиз v0.31.1 вышел 12 июня, на GitHub больше 62 тысяч звёзд.

Этот релиз почти целиком про новые коннекторы к базам:
🔘pw.io.elasticsearch.read читает индекс Elasticsearch: своего механизма отслеживания изменений у него нет, поэтому коннектор опрашивает и сверяет пересечение соседних запросов, чтобы ни одна строка не потерялась и не пришла дважды;
🔘pw.io.clickhouse.write пишет в ClickHouse по нативному протоколу, в двух режимах: поток изменений с колонками time и diff либо снапшот текущего состояния в ReplacingMergeTree;
🔘pw.io.mysql.read делает полноценный захват изменений через бинлог MySQL: сначала снимок таблицы, потом непрерывная доставка вставок, обновлений и удалений;
🔘расширили чтение Iceberg, теперь декодируются все примитивные типы, включая date, time, uuid, fixed и decimal;
🔘у коннекторов Postgres добавили набор проверок на старте, чтобы кривая конфигурация падала понятной ошибкой ещё до молчаливой потери строк.

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

https://github.com/pathwaycom/pathway

Язык: Python и Rust. Лицензия: BSL-1.1.

@prog_tools
  • ❤ 3
  • 👍 2
Post #2814 1.89K

Forwarded from Типичный программист

Homebrew 6.0 не доверяет сторонним taps, пока вы не согласитесь

Если вы ставили пакеты через Homebrew, сторонний tap мог нести произвольный Ruby-код. В 6.0 эта схема сломалась: теперь сторонние репозитории должны явно получить trust, прежде чем что-то установить. Мелочь, но она закрывает большую дыру в цепочке поставок.

Песочница на Linux теперь включена по умолчанию — через Bubblewrap, как на macOS последние десять лет. Плюс brew vulns проверяет установленные пакеты по открытой базе уязвимостей OSV, а brew install и brew upgrade стали спрашивать перед запуском. Мне кажется, это именно тот случай, когда ломать обратную совместимость ради безопасности — правильный выбор.

Подробности.
  • ❤ 1
  • 💯 1
Post #2813 2.12K
Penpot — опенсорсный дизайн-инструмент, который дружит с кодом

Penpot это открытая альтернатива Figma, которую делают с прицелом на разработчиков: макеты описываются понятиями вёрстки, а из любого элемента достаётся готовый CSS. Версия 2.16.0 вышла 11 июня, на GitHub больше 53 тысяч звёзд.

Что приехало в 2.16.0:
🔘рендеринг через WebGL в статусе беты, включается в настройках пользователя;
🔘дизайн-токены прямо во вкладке дизайна: числовые поля теперь принимают токен на месте, без отдельной панели;
🔘дублирование цветовых и типографических стилей;
🔘процент прозрачности виден прямо на значениях цвета в библиотеке;
🔘очистка направляющих артборда из контекстного меню;
🔘индикатор загрузки при импорте и экспорте файлов.

Чем Penpot интересен разработчику помимо рисования: режим Inspect отдаёт SVG, CSS и HTML для любого элемента, раскладки строятся на Flex и Grid как в реальной странице, есть REST API, вебхуки, плагины и MCP-сервер для связки с ИИ-инструментами. Развернуть можно у себя через Docker или Kubernetes, либо работать в облаке.

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

https://github.com/penpot/penpot

Язык: Clojure и JavaScript. Лицензия: MPL-2.0.

@prog_tools
  • 👍 2
  • ❤ 1
Post #2811 1.66K

Forwarded from Типичный программист

VibeUI собрал 92 промпта, чтобы нейросеть выдавала интерфейсы, а не абстракцию на белом фоне

Если вы хоть раз просили нейросеть сверстать форму входа, то знаете: результат либо разъезжается, либо кнопка улетает за экран. VibeUI — подборка из 92 промптов под конкретные UI-паттерны: авторизация, прайсинг, hero-секции, bento-сетки и ещё несколько типовых блоков. Каждый промпт идёт вместе с примером раскладки: split-screen, карточка по центру, минимальная одноколонка или вход через соцсети первым делом.

Автор явно не выдумывал шаблоны с нуля: они покрывают реальные сценарии, которые обычно приходится дожимать руками. Я бы забрал оттуда пару заготовок для следующего прототипа, варианты на сайте.
  • 💊 6
  • ❤ 1
  • 😁 1
  • 🤣 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →