Category : golang

golang
Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1

Go-код никогда не исполняется напрямую.Любая строка Go превращается в машинные инструкции, которые выполняет CPU.В этой статье мы разберём:1) Какие инструкции генерирует компилятор Go2) Как выглядит Go assembler3) И что на самом деле выполняет процессорДумаю с обзором и общими положениями мы закончили, поэтому начнем с фундамента – что происходит в CPU когда мы запускаем наше GO-приложение. Конкретно в этой статье разберем основные инструкции, которые может выдать для нашего CPU компилятор Go, …

  • пятница, 17 апреля 2026 г. в 00:00:11
golang
Распознаём реквизиты из карточки контрагентов: Как мы сделали API для извлечения реквизитов из доку…

Привет, Хабр!Каждый, кто работал с бухгалтерией, CRM или просто заводил контрагента вручную, знает эту боль. Вам присылают карточку компании в PDF, договор в DOCX или просто текстовый файл с реквизитами. Задача: достать оттуда ИНН, КПП, расчётный счёт и БИК, чтобы не схлопотать штраф за неверные данные.Можно нанимать стажёра, который будет перепечатывать это в Excel. А можно довериться машине.Мы в нашей компании долгое время решали эту проблему для своих внутренних задач (интеграция с 1С и авто…

  • четверг, 16 апреля 2026 г. в 00:00:15
golang
Как мы погрузились в теорию компиляторов и написали свой транслятор кода

Всем привет! Меня зовут Егор Ермаков, я бэкенд‑разработчик в группе разработки процессинга Техплатформы городских сервисов Яндекса.Техплатформа — это инфраструктурная платформа для всех городских сервисов Яндекса: Такси, Еды, Лавки, Доставки, а также для различных шеринговых сервисов — каршеринга, зарядных станций, самокатов и других.Один из ключевых сервисов нашей команды — ProcaaS (Processing as a Service). Он предназначен для асинхронного выполнения динамических сценариев, которые:состоят из…

  • четверг, 16 апреля 2026 г. в 00:00:14
golang
Деконструкция Go: модель памяти, happens-before и почему ваш код работает. Часть 0

Приветствую всех!У меня было обилие мыслей на тему того, что можно сюда написать и решил разобраться в фундаменте мироустройства языков программирования. Копнуть в самую суть с разбором кода американских дедов(и их же репозиториев), которые вполне себе могли написать нечто и под знаменитым кукурузным XXX самогоном.Решил я фундаментально разобрать то, как работает Golang, потому что в интернете(YT, Конфы и пр.), на мой взгляд, крайне много откровенно поверхностной и верхнеуровневой информации. Я…

  • четверг, 16 апреля 2026 г. в 00:00:12
golang
Обмен авто на авто: как мы строим Tinder для автомобилей, архитектура Go-монолита за 3 месяца

Я Шевкопляс Дмитрий, технический руководитель проекта Swapno — сервис для обмена автомобилями ключ-в-ключ, без дилеров. Механика — как в Tinder: свайпаешь чужие авто, если оба владельца лайкнули машины друг друга — Swap Match, начинается обмен. В этой статье расскажу, как мы спроектировали и написали бэкенд на Go за 3 месяца: от выбора архитектуры до matching engine, ИИ-модерации фото и observability в продакшене. С реальными ошибками, которые мы допустили, и тем, как их чинили.Проблема: рынок …

  • среда, 15 апреля 2026 г. в 00:00:13
golang
Вас вычислили: как простая утилита на Go находит пользователей «Telega» в ваших чатах за считанные …

Знаете, что происходит, когда вы ставите «Telega», «альтернативный клиент Telegram от ВКонтакте»? Ваш Telegram ID тихо уезжает в инфраструктуру OK/VK Calls. Без уведомлений. Без галочки «я согласен». Просто раз, и вы в индексе. Навсегда.Я решил проверить, сколько людей в моих чатах уже засветились. Руками долго. Через плагин exteraGram можно по одному профилю за раз. Хотелось масштаба. Так появился antitelega: Go userbot, который сканирует целый чат и выдаёт список «засвеченных» прямо в Saved M…

  • вторник, 14 апреля 2026 г. в 00:03:53
golang
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1

Большинство программистов, работая с многопоточным кодом, осведомлены о примитивах синхронизации. При этом мало кто задумывается о существующей за этим сложной теории.Привет, Хабр! Меня зовут Игорь Панасюк, я работаю в Яндекс, преподаю в ИТМО и ШАД, а также в свободное время выступаю на конференциях, делюсь опытом в соцсетях и помогаю развитию Go-сообщества, веду Telegram-канал и YouTube-канал.В этой статье по мотивам моего доклада для Golang Conf я расскажу про Go Memory Model, понятным языком…

  • вторник, 14 апреля 2026 г. в 00:03:22
golang
Dart на бекенде: почему его бросила бывшая

Дисклеймер: самая большая ошибка в этой истории даже не выбор Dart, порядок действий. Вместо того чтобы в первый же день сделать честный raw benchmark на нашем production-like сценарии, я поверил в AOT, в статическую типизацию и в обещания ready for cloud - и сразу начал переносить сервис. Поэтому этот текст не только про Dart, но и про очень дорогой инженерный урок: сначала валидируй runtime-гипотезу, потом строй архитектуру вокруг неё. Чтобы не превращать текст в войну микрооптимизаций — все …

  • вторник, 14 апреля 2026 г. в 00:02:51
golang
Как я спас агентов в VS Code от передоза инструментами, сжав зоопарк MCP-серверов в один Go-бинарни…

Когда вы ставите в VS Code популярные агентные расширения (Cline, Roo Code, Kilo), быстро выясняется одна мерзкая вещь. Обычно начинаешь подключать к ним новые инструменты быстрее , чем LLM под их капотом способна их адекватно переварить.Сначала все выглядит безобидно. Вы подключаете к редактору пару MCP-серверов: один для файлов, другой для поиска. Агент радуется, вы радуетесь, всё работает. Но потом начинается: "О, прикручу-ка я еще сервер для базы данных... и GitHub... и внутреннюю Jira…

  • вторник, 14 апреля 2026 г. в 00:02:20