Привет, Хабр! Я — Владимир Балун, и это — вторая часть материала о пакете с отпугивающим названием «unsafe» в Go и том, чем он может быть реально полезен. В первой части мы рассмотрели его содержимое, особенности и нюансы, оптимизации кода с использованием unsafe — все это вы можете освежить в памяти по ссылке.Сегодня перейдем непосредственно к той самой «магии»: трюки, хаки, советы и лучшие практики с моей стороны. Трюки и хакиВажно понять: я не говорю, что вы должны делать именно так на работ…
Проблема: тяжёлые AI-агенты на маленьком железеПоследнее время я экспериментировал с AI-агентами на Raspberry Pi 5.И довольно быстро столкнулся с проблемой: большинство существующих агентных фреймворков оказываются слишком тяжёлыми для небольшого железа.Типичная архитектура таких решений включает:Python-фреймворкнесколько фоновых сервисовorchestration слойиногда векторную базудовольно сложную конфигурациюНа сервере это нормально работает. Но на Raspberry Pi всё начинает ощущаться иначе:долгий с…
Всем привет!В этой статье мы рассмотрим следующий кейс. Есть некоторый внешний поставщик zip архивов, эти архивы содержат в себе множество папок, которые в свою очередь содержат различные js, html и css файлы. Архивы являются 3D турами, для обзора различных помещений музеев. Наша задача, как бекенд разработчика, предоставить пользователю возможность загружать эти архивы на сервер, для последующего просмотра их на соотвествующих страницах веб-сайта.Графическое администрирование файлов, может осу…
Ранее я начал писать небольшую программу на Go, чтобы прокидывать трафик между компьютером и своим сервером. Назначение программы исследовательское - посмотреть "как это работает" и разобраться, как именно работают механизмы, мешающие нормальному интернету.В продолжение эксперимента: имеется подключение к интернету через менее дружелюбного провайдера и ноут на macOS (первая версия была под Linux). Прежде чем усложнять код, решил запустить программу на маке без изменения логики. Напомню:…
Предыдущая статьяВведениеВ предыдущей статье цикла мы успели разобраться с темами создания и запуска сервера, обработчиками и промежутками обработчиками http-запросов, обработкой статических файлов, embed FS и другими базовыми механики net/http.Вторая часть цикла получилась очень объемной и поэтому, в целях повышения читаемости я разделил её на 3 связанные части:Фундамент. Принимаем POST-запросы, загружаем файлы и создаем In-memory хранилище.Архитектура и безопасность. Внедряем Clean Architectu…
Привет, на связи Стас Иванкевич — техлид в команде разработки управляющего слоя Platform V DropApp в СберТехе. Мы всё так же пилим наш космолёт и готовы поделиться с вами новыми полезными рекомендациями и предостеречь от ошибок при разработке операторов.В первой части мы уже начали обсуждать разработку K8s-операторов. Сегодня поговорим о поведении Reconcile и конфликтах обновлений. Рассмотрим возможные ошибки и обсудим тонкости, которые помогут их избежать.Поехали!Горутины внутри Reconcile: что…
Исходный кодВ горнодобывающей промышленности точный учёт рейсов карьерных самосвалов — ключевой фактор управления производительностью. Традиционные системы диспетчеризации (DISPATCH от Modular Mining, Wenco, российская «Карьер») опираются на GPS-зоны: система фиксирует въезд самосвала в зону экскаватора или пункта разгрузки и по факту пересечения геозон формирует рейс. Однако этот подход не улавливает аномалии внутри цикла — простои, заторы, сбои датчиков, затянувшиеся обеды — и не позволяет кл…
В стандартной библиотеке Go есть пакет с отпугивающим названием «unsafe». Но он может быть реально полезен! Сегодня поговорим о том, как использовать его надежно и эффективно.Привет, Хабр! Я — Владимир Балун, основатель balun.courses и it-interview.io, до этого руководил небольшой инфраструктурной командой в Яндексе. Я достаточно много писал на C++, но последнее время активно пишу на Go.Эта статья будет для удобства разделена на две части. Из них вы узнаете, как можно создавать срезы без дорого…
Так сложилось, что периодами по несколько дней я нахожусь в двух разных локациях с двумя разными провайдерами. В одной, приходиться "пробивать окно" в штаты в стене на той стороне. Изначально, чтобы обойти ограничения со стороны google/gemini, необходимо выглядеть настоящим нью-йоркцем. Другим провайдером пользуюсь меньше и в основном не для работы, но ситуация с ним печальнее: как у всех, закручено всё, до чего смогли дотянуться. В том числе не могу достучаться до своего сервера по квн…