Python берут за скорость реализации. C++ - за производительность и контроль над памятью.А Go? Go выбирают те, кто любит Go. Я один из них. Долгое время я использовал связку bufio.Scanner + ScanWords + strconv.Atoi. Но стоит в задаче смешать числа, строки или посимвольный ввод - начинаются “танцы с бубном”. В какой-то момент мне надоело, и я написал contestio. Решения оказались простыми. То чувство, когда: “Чёрт возьми! Почему мне это не пришло в голову раньше!?”Мотивация: хочется удобно и быстр…
В мире микросервисов и сложной продуктовой логики наступает момент, когда классические E2E-тесты превращаются в проблему. Количество пользовательских сценариев исчисляется сотнями, каждый новый конфиг требует десятков тестов, а регресс вместо быстрой проверки становится многочасовым процессом.Но если сценарий становится нелинейным (появляются развилки, выбор пользователя ведёт на разные экраны) всё усложняется. С этим E2E-тесты ещё справляются: пишем несколько тестов, каждый под свой путь. Слож…
Добрый день, это моя первая статья на Хабре, прошу не судить строго.Я хочу рассказать вам немного о моём исследовании и то как стоит честно относиться к LLM моделям, так как вы скорее всего знаете, что такое LLM модель не будем терять времени на её определение давайте перейдём к сути моей работы: LLM не дают гарантии правильности ответа особенно операций с большим количеством шагов и формальным рассуждением, даже когда ответ правдоподобный или оказывается верный. (Вы же все видели дисклеймер Ch…
Баланс между производительностью, читаемостью и поддерживаемостью — ключевая задача при разработке микросервисов на Go. На практике всё сложнее из-за неочевидных факторов: от влияния частоты вызовов GC на время отклика до последствий избыточной вложенности в контрактах API. Если не учесть эти нюансы, даже грамотно спроектированный сервис может просаживаться по RPS (requests per second) — или его может быть сложно обновлять и дорабатывать.Меня зовут Артём Кущ. Я Go-разработчик в команде VK Видео…
В мире микросервисов и сложной продуктовой логики наступает момент, когда классические E2E-тесты превращаются в проблему. Количество пользовательских сценариев исчисляется сотнями, каждый новый конфиг требует десятков тестов, а регресс вместо быстрой проверки становится многочасовым процессом.Но если сценарий становится нелинейным (появляются развилки, выбор пользователя ведёт на разные экраны) всё усложняется. С этим E2E-тесты ещё справляются: пишем несколько тестов, каждый под свой путь. Слож…
Технология eBPF — интересная штука. С её помощью можно без труда внедрять в ядро Linux фрагменты кода, которые затем компилируются в коды операций (опкоды), которые гарантированно не обрушат работу ядра. Набор допустимых инструкций ограничен, переходы назад не допускаются (поэтому не будет никаких неопределённых циклов). При этом вы не можете разыменовывать указатели, но вместо этого можете выполнять проверяемые операции считывания через указатели, которые потенциально могут оказаться неудачным…
Паттерны конкурентности в Go. Подробный разбор. Часть 1. Worker poolПаттерны конкурентности в Go. Подробный разбор. Часть 2. Fan-Out/Fan-InPub/SubPub/sub, сокращение от «publish-subscribe» (публикация-подписка), — это паттерн обмена сообщениями между различными частями приложения. Прелесть такого подхода в том, что отправитель сообщения не знает о получателе, а получатель не знает об отправителе. Оба они знают только об одном посреднике — брокере сообщений. Отправитель публикует сообщение, а по…
Хочу поделиться историей о том, как вайб-кодинг решил мою вполне реальную инженерную боль. Без пафоса, без “я построил SaaS стартап за вечер” — просто задача, Claude и пару вечеров свободного времени.Делюсь мыслями о работе, жизни и небольшими наблюдениями из будней разработчика в своём Telegram-каналеПосле показа драфта статьи Николай М. подсказал готовый репозиторий GitHub Action для деплоя Serverless Container в Yandex Cloud, который решает проблему с автоматизацией. Этот факт меня не остано…
Меня зовут Сергей, я разработчик в «Финаме». Торгую на бирже около четырех лет. Большую часть дня провожу в терминале - пишу код, деплою, работаю с инструментами. И в какой-то момент заметил нестыковку: все мое рабочее пространство уже в консоли, кроме одной вещи - торгового терминала.Так появился Finam Terminal - TUI-клиент с открытым кодом для торговли через API брокера «Финам». Написан на Go в свободное время, работает прямо в консоли, весит ~24 МБ. В этой статье расскажу, зачем он нужен, ка…