Код в мешке
249 subscribers
9.08K photos
1.6K videos
2.11K files
42.7K links
Код в мешке - про кодинг, и не только...
Это личная записная книжка

https://t.me/joinchat/AAAAAEIy6oGlr8oxqTMS5w
Download Telegram
Forwarded from Типичный программист
Бэкап есть, а бизнес всё равно лежит

5 июня в 11:00 пройдёт вебинар, на котором разберут неприятную разницу между «мы просто что-то копируем» и «мы можем восстановиться после аварии». По исследованию Linx Cloud и Global CIO, 85% ИТ-руководителей уже доставали данные из бэкапов, но в 35% случаев это закончилось долгим простоем или потерей данных.

На вебинаре же будут говорить, как не попасть в эти 35%. А также про типичные ошибки в резервном копировании, DR-план, правило 3-2-1, immutable-бэкапы, RPO/RTO и тесты восстановления.

Если хочется проверить, спасёт ли ваша инфраструктура не презентацию, а прод, зарегистрироваться можно здесь.
Forwarded from Типичный программист
Разработчик сделал потолок прозрачным с помощью ADS-B

На Hackaday попался проект с короткофокусным проектором и ADS-B: автор берёт данные о реальных самолётах, считает, что сейчас проходит над домом, и выводит это на потолок. Получается не FlightRadar в браузере, а почти окно в небо. Только без окна.

Мне в таких штуках нравится не сам визуальный фокус, а то, как из отдельных не связанных элементов делают что-то совершенно новое: радиосигналы из реального мира → координаты → проекция в комнате. Вроде игрушка, но внутри нормальная инженерная магия: данные, геометрия, маппинг и желание сделать красиво.
Forwarded from Типичный программист
KVarN убирает главное ограничение vLLM одним флагом

Если вы гоните LLM в проде, память под KV-cache уходит быстрее, чем вы успеваете сказать «контекстное окно». Huawei выложила KVarN: нативный бэкенд квантизации для vLLM, который включается одним флагом — без калибровки и без переписывания модели.

По их данным, проект даёт в 3-5 раз больше контекста при throughput выше FP16 и точности на уровне FP16. Для агентов и long-context задач это означает больше параллельных запросов на том же железе без потери качества, а это как раз то, за что обычно приходится покупать новые GPU.

Репо с кодом и бенчмарками.
Forwarded from Типичный программист
Форма регистрации начинается не с полей и кнопки

Можно собрать красивую онлайн-регистрацию на тысячу человек, привязать базу, письма и сверку сотрудников. А потом HR пришлёт регламент и спросит: где лежат персональные данные, кто имеет доступ, что с HTTPS, ФЗ-152 и планом на случай утечки.

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

В свежем разборе на Tproger это превращается в чеклист вопросов, которые лучше задать себе до того, как первый гость оставит телефон и почту.
Forwarded from Типичный программист
Звуковая панель может взломать ваш компьютер через Bluetooth, даже если вы ничего не нажимали

Разработчик копался в прошивке Creative Sound Blaster, чтобы написать кастомный софт, и случайно обнаружил странность: колонка принимает команды по Bluetooth Low Energy без всякой аутентификации. Через USB для этого нужен ключ, а по Bluetooth пара не требуется. Достаточно просто оказаться рядом.

Хуже того, среди доступных команд есть перепрошивка устройства. Злоумышленник может залить прошивку, которая эмулирует USB-клавиатуру, и внедрить команды в хост-систему. Никакого физического контакта и никакого доступа к сети — только Bluetooth-радиус.

BLE в бытовой электронике часто оставляют без присмотра, и этот кейс напоминает, что иногда air-gap нужен даже колонке.
Forwarded from Типичный программист
Anthropic показала, как ИИ начинает строить следующий ИИ

Ещё в 2021-м Claude собирали по старинке: люди за ноутбуками, строчка за строчкой. Потом чат-боты подкидывали сниппеты, а недавно агенты стали писать целые файлы и даже модули. Сегодня они запускают код и передают часы работы другим агентам.

Инженеры выкладывают в восемь раз больше кода в квартал, чем в 2021–2025 годах. Сложность задач, которые агенты выполняют без человека, удваивается примерно каждые четыре месяца. Следующий шаг — агенты, которые сами обучают модели. Если Claude начнёт улучшать Claude, вопросы контроля и безопасности станут ещё более насущными.

Рекомендую прочитать материал от Anthropic, чтобы быть готовым к следующему этапу развития ИИ.
Forwarded from IT Юмор
А минусы будут?
Forwarded from Типичный программист
Код на C снова довели до состояния современного искусства

Есть конкурс, где хороший код — это код, который компилируется, работает и при этом выглядит так, будто его нашли в заброшенном подвале компилятора. Вышли победители IOCCC 2025 — International Obfuscated C Code Contest.

Правила сами по себе уже звучат как челлендж:
исходник до 4993 байт, бинарник до 2503 байт, C11, Makefile и желательно не сжечь компьютер жюри. А дальше начинается веселье: один победитель рисует ASCII-фигуру Лихтенберга, другой уместил в обфусцированный C рабочий эмулятор Game Boy, который запускает реальные ROM.

Смотреть точно не ради полезных приёмов: https://hackaday.com/2026/06/09/the-winners-of-the-2025-obfuscated-c-code-contest/
Forwarded from Типичный программист
Terraform 1.15 наконец разрешил то, из-за чего IaC-модули годами дублировали руками

Если вы поддерживали несколько окружений на Terraform, то возможно знакомы с этой болью: почти одинаковые module-блоки, разные registry, разные версии, а source всё равно должен быть строковым литералом. Хочешь гибкости — начинаются обходные пути.

В Terraform 1.15 появились dynamic module sources: теперь source и version можно собирать из const-переменных, которые доступны уже на этапе terraform init. Заодно добавили deprecated для variables и outputs, convert для явного приведения типов, типы у output-блоков и native Windows ARM64.

Самое интересное здесь не в одной фиче, а в направлении. Terraform догоняет OpenTofu по вещам, которые platform-команды просили годами: меньше копипасты в модулях, понятнее миграции, меньше сюрпризов в CI. Если у вас IaC уже разросся до внутренней платформы, релиз стоит посмотреть не как changelog, а как набор инструментов для уборки старого долга.
Forwarded from Нейроканал
Anthropic релизнула Fable 5, в подписках уже есть с тратами х2 от Opus до 22 июня.

Это тот самый Mythos, но занерфенный так, что на некоторые запросы скатывается к Opus. Какие именно запросы модель сама решает, вроде как это всё для безопасности, чтобы мы резко не взломали всё вокруг. На практике будет ли это мешать кодить — будем проверять.

После 22 июня доступ закроют, будет только Usage или API за 10/50 баксов за 1м токенов. Когда включат обратно в подписку не говорят, «так быстро, как сможем».

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

@neuro_channel
Forwarded from Типичный программист
Есть недооценённый приём в отладке: не ковырять огромный вход руками, а автоматически сжимать его до минимального случая, на котором баг всё ещё воспроизводится.

Laurence Tratt написал разбор про test-case reducers — инструменты, которые берут большой файл, программу или набор данных и постепенно выкидывают из него всё лишнее. Остаётся маленький пример, который всё ещё ломает систему. Дальше отлаживать уже гораздо приятнее и легче.

Обычно такие штуки вспоминают рядом с компиляторами, но идея шире. Если у вас парсер падает на большом JSON, генератор кода ломается на странном input или тест фейлится только на огромной фикстуре, reducer может сократить воспроизводимый пример до нескольких строк.
Forwarded from Типичный программист
В блоге Альфа-Банка вышла статья о метриках в разработке. Команда перепробовала аж 7 штук и путём проб и ошибок собрала свой минимальный набор, который реально приносит пользу. Основой стала Cycle Time — она показывает, сколько времени задача провела внутри процесса разработки, от старта до релиза.

Метрик часто опасаются: если внедрить их неправильно или использовать как дубинку, цифры начинают подгонять, а толку — ноль. Как этого избежать и подобрать правильный набор показателей под себя — читайте в статье: https://tproger.ru/articles/kak-my-sbezhali-iz-kpi-karaoke-naw-bazovyj-minimum-metrik-kot
Forwarded from Типичный программист
Кодовую базу можно диагностировать ещё до чтения кода

Обычно новый проект начинают с `src/`, README и попытки понять, где тут вход. Автор предлагает сначала открыть Git и посмотреть на историю как на рентген.

Пять команд показывают файлы с самым высоким churn, bus factor, места, где чаще всего чинят баги, месячную динамику коммитов и частоту hotfix/revert. Это не заменяет ревью кода, зато быстро подсказывает, куда смотреть первым и где команда, возможно, ходит по минному полю.

Материал хорош тем, что превращает `git log` из справки по прошлому в инструмент инженерной диагностики.
Forwarded from Типичный программист
Clojure пересобрали на Go ради старта за миллисекунды

let-go выглядит как эксперимент из серии “а что, если Lisp можно сделать маленьким, быстрым и удобным для встраивания?”. Автор собрал Clojure-подобный язык на Go: свой байткод, VM, standalone binaries и запуск примерно за несколько миллисекунд.

Это не попытка заменить Clojure целиком. Скорее, хороший инженерный вопрос: какие части языка действительно нужны, если хочется получить REPL-мышление, immutable data и макросы, но без тяжёлого рантайма.

Код интересен как разбор компромиссов между выразительностью языка и ценой его запуска.
Forwarded from Типичный программист
История файлов для моментов, когда git уже поздно

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

UNF предлагает другой слой страховки: локально версионировать изменения файлов независимо от того, каким инструментом они сделаны. Можно откатить не только осознанный коммит, но и “кажется, я разрешил не той команде править проект”.

Идея особенно актуальна сейчас, когда код всё чаще меняют не только люди, но и ассистенты с очень уверенным курсором.
Forwarded from Типичный программист
В большинстве компаний 1С и облачная инфраструктура живут в параллельных мирах: DevOps смотрит в Grafana, финдиректор — в 1С, а когда падает оплата, все смотрят друг на друга. На самом деле подружить 1С с современными инструментами мониторинга вполне реально всего за один спринт. В блоге Centicore рассказали, как это сделать.

В статье разбирается, как вытащить метрики из 1С через OData без единой строчки кода, написать Prometheus Exporter на Python и собрать бизнес- и технические метрики на одном дашборде. А заодно — где интеграция обычно ломается и как это пережить.
Forwarded from Типичный программист
x86-эмулятор, который работает на одном CSS

Разработчица собрала x86 CPU emulator без JavaScript, без WebAssembly и без привычного runtime — только на CSS.

Это не кандидат на прод и не новая платформа для вычислений. Ценность в другом: CSS здесь используют как странную вычислительную модель с состояниями, селекторами и каскадом, которые внезапно начинают напоминать машину выполнения.

История хороша как инженерный фокус. Подробности по ссылке
Forwarded from Типичный программист
Язык программирования, который думает на корейском

Большинство языков, даже самых новых, всё равно говорят с разработчиком на английском. Han интересен тем, что здесь не просто переименовали if и for, а попытались сделать полноценный компилируемый язык с корейским синтаксисом.

Проект написан на Rust, использует LLVM, имеет REPL, LSP и примеры реального кода. То есть это уже не мем про ключевые слова, а инженерный эксперимент про то, насколько глубоко английский зашит в привычный способ программировать.

Код стоит смотреть как на языковой дизайн, а не как на экзотику ради экзотики.
Forwarded from Типичный программист
Интернет, где устройство ищут не по IP, а по ключу? Почему бы и нет

IP-адреса ведут себя как временный пропуск: сегодня есть, завтра поменялся, послезавтра устройство сидит за NAT, firewall или мобильной сетью. Iroh предлагает другой подход — соединяться не с адресом, а с криптографическим ключом устройства. Это фундаментальная технология, призванная коренным образом изменить интернет.

В версии 1.0 у них уже стабильный wire protocol, QUIC, NAT traversal, multipath, локальный поиск устройств без интернета и API для Rust, Python, Node.js, Swift и Kotlin. В идеале это выглядит как «secure localhost», только между любыми устройствами.

Для приложений с синком, IoT, файлами и P2P это очень здравый поворот.
Forwarded from Типичный программист
Виртуальная машина, которая стартует быстрее вкладки

Обычно VM воспринимается как тяжёлая штука: образ, загрузка, ожидание. smolvm пробует другой режим — маленькие переносимые машины с cold start меньше секунды.

Идея в том, чтобы упаковать окружение в один артефакт и запускать изолированный код почти как обычный процесс. Это уже интересно для CI, песочниц, временных dev-окружений и задач, где контейнеров мало, а полноценные VM слишком дороги.
Forwarded from Нейроканал
В топе трендов Hugging Face сейчас стоит хобби-проект одного человека под ником yuxinlu1. Это маленькая кодинг-модель на базе Gemma 4 12B в формате GGUF: запускается локально, самый лёгкий вариант весит 4,5 ГБ и влезает почти в любую видеокарту или в общую память Mac. Работает оффлайн, без облака и API, за неделю уже 146 тысяч загрузок.

Самое интересное в том, на чём её учили. Это дистиллят рассуждений двух коммерческих моделей: основным учителем был Composer 2.5 от Cursor, а задачи, где он ошибался, отдавали Fable 5, чтобы тот переписал решение заново. В обучающий набор брали только те цепочки рассуждений, чей итоговый код реально прошёл тесты. Поэтому модель сначала думает над задачей вслух, потом выдаёт решение.

Через несколько дней после релиза доступ к Fable 5 автору закрыли, так что для второй версии он теперь присматривается к GLM-5.2. И ещё момент: модель специально без выравнивания на безопасность, отказывается реже базовой Gemma.

@neuro_channel