14942
@notxxx1 - админ @Golang_google - Golang для разработчиков @itchannels_telegram - 🔥лучшие из ит @golangl - chat @golangtests - golang tests @golang_jobsgo - go chat jobs @ai_machinelearning_big_data - AI @data_analysis_ml РКН: clck.ru/3FmtKd
👣 Почта прямо в терминале: Go-разработчикам завезли Matcha
Matcha - это мощный email-клиент для терминала, написанный на Go и Bubble Tea.
Идея простая: не выходить из CLI даже ради почты. Можно читать письма, отправлять ответы, работать с несколькими аккаунтами и rich content прямо из терминального интерфейса.
Что внутри:
- TUI-интерфейс на Bubble Tea
- поддержка нескольких аккаунтов
- встроенная система плагинов
- 35+ community plugins
- marketplace прямо из терминала
- CLI-команда для отправки писем
- поддержка AI-agent сценариев
- AI rewrite plugin для черновиков через OpenAI, Ollama, Gemini или Claude
Отдельно интересно, что Matcha можно использовать не только как «почту для гиков», но и как инструмент для агентных workflow: агент может отправлять письма через matcha send без интерактивного интерфейса.
Для тех, кто любит терминал, Go и красивые TUI-приложения - проект точно стоит посмотреть.
https://github.com/floatpane/matcha
#golang
Как выйти в мидлы+ Golang на "стагнирующем" рынке — без года проб и отказов
Камиль (IT Отец) — ex‑lead в бигтехе, senior с 13+ годами опыта в корпорате и ментор с 50+ трудоустроенными учениками — открыл доступ к Backend 250k+ Offer Kit — ультимативный гайд получения крупных офферов в 2026 году для джунов и тех, кто застрял на низких грейдах
Пройдя его, ты:
▪️ Поймешь реальный контекст рынка, узнаешь с кем на самом деле предстоит конкурировать за оффер,
▪️ Заберешь ТОП-3 стратегии добычи оффера на "стагнирующем рынке",
▪️Через инструменты в ките проапгрейдишь свое резюме и самопрезентацию, чтобы не быть ред-флагом для hr'ов,
▪️Узнаешь, какие 4 столпа определяют Middle-разработчика: что учить и насколько глубоко,
▪️И в конце получишь 2 понятные стратегии выживания на испытательном сроке, чтобы ты закрепился на островке стабильной ЗП
⚡️ Также Камиль бонусом бесплатно отдает 2 роадмапа из своего платного сообщества (общий backend + golang), чтобы ты не тратил время на хаотичный поиск информации в интернете.
Забирай и применяй все инструменты из backend offer kit:
➡️ @CodemaniaProBot
erid 2W5zFGLoDaR
👣 Go-разработчиков много. Backend-инженеров на Go, которые умеют строить реальные сервисы, гораздо меньше.
Этот курс не про «выучить синтаксис» и поставить галочку напротив goroutines.
Он про другое: научиться писать backend на Go так, как его ждут в продакшене.
Вы разберёте, как устроены сервисы, которые:
- принимают тысячи запросов;
- не разваливаются под нагрузкой;
- работают с базами данных;
- используют очереди и микросервисы;
- обрабатывают конкурентность без хаоса;
- логируются, тестируются и масштабируются;
- выглядят как коммерческий backend, а не учебная поделка.
После курса у вас будет не просто знание Go, а понятный инженерный навык: спроектировать, написать и довести до рабочего состояния быстрый backend-сервис.
Это тот уровень, после которого в резюме можно писать не «знаю Go», а «умею делать production-ready сервисы на Go».
Для кого курс:
- для тех, кто уже устал от абстрактных туториалов;
- для начинающих backend-разработчиков;
- для Python, JavaScript, PHP или Java-разработчиков, которые хотят перейти в Go;
- для тех, кто хочет брать коммерческие backend-задачи, а не просто смотреть видео.
48 часов скидка 50% на Stepik:
https://stepik.org/a/274119/
🌊 Flow Driver: Скрытая транспортная система для SOCKS5
Flow Driver позволяет туннелировать сетевой трафик через облачные хранилища, такие как Google Drive. Используя легитимный API, он обеспечивает надежное соединение в ограниченных сетевых условиях.
🚀 Основные моменты:
- Туннелирование SOCKS5 через Google Drive.
- Обеспечивает надежное соединение в ограниченных средах.
- Использует легитимный API-трафик для передачи данных.
- Поддерживает бинарный протокол для упаковки запросов.
📌 GitHub: https://github.com/NullLatency/FlowDriver
🖥 Курс «Git Pro: от первого коммита до уровня senior» - на Stepik
project_final_v2_FINAL_truly_final - знакомо?
Значит, пора.
Большинство разработчиков знают 5 команд Git и боятся шестую. Коммитят в main, гуглят «how to undo» и копируют папку «на всякий случай».
Это не работа - это выживание.
После курса вы:
— делаете rebase, не задерживая дыхание;
— разбираете конфликт на 200 файлов по алгоритму;
— возвращаете «потерянные навсегда» коммиты за 30 секунд через reflog;
— пишете историю, которую не стыдно показать на code review.
Git Flow, trunk-based, Pull Request, защита веток, CI/CD-хуки — всё, что отличает джуна от senior в командной работе.
Скидка 53%, 48 часов: https://stepik.org/course/284799/
🧩 Парсер языка 1С на Go
Репозиторий содержит парсер для языка 1С, реализованный на Go с использованием yacc. Он создает абстрактное синтаксическое дерево (AST) для анализа кода 1С, что позволяет эффективно обрабатывать и визуализировать его структуру.
🚀Основные моменты:
- Поддержка синтаксического анализа кода 1С
- Генерация абстрактного синтаксического дерева (AST)
- Примеры использования и интеграции
- Открытый исходный код на Go
Ну вдруг кому-то будет полезно)
📌 GitHub: https://github.com/LazarenkoA/1c-language-parser
#go
⚡️ Вы слышали про Rust. Знаете, что он быстрый, безопасный и что за ним будущее.
Осталось одно: сесть и выучить.
Этот курс со Stepik- кратчайший путь от «знаю что такое Rust» до «пишу на нём».
6 модулей, 50 уроков, 143 теста. Ownership, borrowing, traits, async, Tokio, Axum, макросы, WASM — всё разложено по полочкам и закреплено практикой.
Никакого видео на 40 минут ради одной мысли. Подробный текст, много кода, реальные задачи после каждого урока. На выходе — портфолио из 10+ проектов: от CLI-утилит до REST API с базой данных.
48 часов действует скидка 55 процентов: stepik.org/course/269250
🚀 MCP сервер на Go за пару строк - без JSON-адa
Нашли минималистичный фреймворк hamr для сборки MCP серверов на Go.
Главная идея - схема генерируется прямо из struct тегов.
Пишешь обычную Go-структуру, добавляешь теги — и получаешь готовый JSON schema без ручной возни.
Дальше ещё проще:
• регистрируешь функцию как tool
• одна строчка и она уже доступна через MCP
• никакого бойлерплейта
По сути убирается самая раздражающая часть - сотни строк JSON-RPC, валидации и обвязки, которые обычно приходится писать руками.
В реальном кейсе:
MCP сервер с 6 инструментами - ~157 строк
без фреймворка — ~480 строк и меньше функционала
Интересный момент из-за меньшего объёма кода AI-агенты генерируют такие серверы быстрее и с меньшим количеством ошибок.
Если работаешь с MCP и Go- выглядит как один из самых простых способов быстро поднять сервер под агента
github.com/AKhilRaghav0/hamr
Что ты только что сказал про Golang?
Читать полностью…
🌟 Qstorm - этоо инструмент для нагрузочного тестирования
асинхронных систем и очередей сообщений.
Инструмент публикует сообщения с заданной скоростью
симулирует разные паттерны нагрузки
помогает ловить узкие места
подходит для тестирования Kafka / RabbitMQ и подобных систем
А здесь можно приблизиться к production-сценариям.
И это как раз тот тип инструментов,
который используют не в туториалах,
а в реальных системах под нагрузкой.
https://github.com/NawafSwe/qstorm
🔥 5 проектов, которые реально прокачают резюме DevOps / Cloud
Если хочешь не просто «учил теорию», а показать реальные навыки - вот база, с которой уже берут на работу:
Flask + двухуровневая архитектура
https://github.com/prashantgohel321/DevOps-Project-Two-Tier-Flask-App
Разберёшь деплой, контейнеризацию и базовую инфраструктуру
Трёхуровневая архитектура в AWS (EKS + IaC)
https://github.com/LondheShubham153/three-tier-eks-iac
Практика Kubernetes, Terraform и продовой архитектуры
Terraform на Azure
https://github.com/piyushsachdeva/Terraform-Full-Course-Azure
Полный цикл инфраструктуры как кода под Azure
Observability стек (Prometheus + мониторинг)
https://github.com/techiescamp/devops-projects/tree/main/04-prometheus-observability-stack
Метрики, алерты и понимание что происходит в системе
AI + DevOps
https://github.com/iam-veeramalla/ai-assisted-devops
Event-driven autoscaling (KEDA + GKE)
https://github.com/ChimbuChinnadurai/keda-gke-event-driven-autoscaling-demo
Первый шаг в MLOps
https://github.com/iam-veeramalla/first-mlops-project
Сохрани, чтобы не потерять
🐳 Multi-Stage Docker Builds - то, что часто спрашивают на собеседованиях
Multi-Stage Build - это подход в Docker, при котором в одном Dockerfile используется несколько FROM. Такой способ помогает разделить этап сборки и этап запуска приложения.
Зачем это нужно:
- не тянуть в прод лишние build tools, зависимости и исходники
- сильно уменьшить размер итогового образа
- повысить безопасность
- ускорить деплой и запуск контейнеров
Как это работает на практике:
В первом этапе собирается приложение:
- устанавливаются зависимости
- выполняется build
Во втором этапе берётся лёгкий runtime-образ, например nginx, и в него копируется только готовый результат сборки.
То есть в финальный образ попадает только то, что реально нужно для запуска приложения, без всего лишнего.
Почему это удобно:
- итоговый образ получается намного меньше
- build и runtime логически разделены
- Dockerfile становится чище и понятнее
- подход подходит почти для любого стека: Node.js, Go, Java, Python, .NET и других
Если объяснить совсем просто, то Multi-Stage Build - это способ сначала "собрать" приложение в одной среде, а потом "упаковать" только готовый результат в чистый и лёгкий production-образ.
🚀 Самые быстрорастущие GitHub-репозитории недели
Неделя прошла под знаком голосового AI и саморазвивающихся агентов
1. https://github.com/microsoft/VibeVoice — опенсорс voice AI: клонирование голоса и транскрипция до 60 минут за один проход
2. https://github.com/bytedance/deer-flow — SuperAgent от ByteDance: сам исследует, кодит и выполняет задачи
3. https://github.com/NousResearch/hermes-agent — агент с памятью, который развивается со временем
4. https://github.com/mvanhorn/last30days-skill — агент ищет инфу по теме сразу в Reddit, X, YouTube, HN
5. https://github.com/hacksider/Deep-Live-Cam — realtime face swap по одной картинке
6. https://github.com/TauricResearch/TradingAgents — мультиагентный трейдинг на LLM
7. https://github.com/hesreallyhim/awesome-claude-code — лучшие skills и плагины для Claude Code
8. https://github.com/google-research/timesfm — foundation-модель для таймсерий, zero-shot прогнозы
9. https://github.com/datalab-to/chandra — OCR для сложных таблиц и рукописного текста
10. https://github.com/SakanaAI/AI-Scientist-v2 — автоматизация научных открытий через агентов
Главный тренд:
агенты становятся автономнее
голос - новой точкой интерфейса
⚡ sqlc — пишешь SQL, получаешь типобезопасный Go-код
Если работаешь с Go и базой данных, есть инструмент, который экономит часы и убирает целый класс ошибок.
Что делает sqlc:
- Пишешь обычные SQL-запросы
- sqlc проверяет их по твоей схеме БД
- Генерирует готовый Go-код:
- структуры
- методы
- типы
Главный плюс:
Ошибки ловятся на этапе компиляции, а не в продакшене.
Например:
- обращение к несуществующей колонке
- несовпадение типов
- нарушение схемы
Без runtime-сюрпризов.
Почему это важно:
- Никакого ручного маппинга
- Полная типобезопасность
- Чистый и предсказуемый код
- Производительность лучше, чем у ORM
- Полный контроль над SQL
sqlc — это баланс между:
удобством ORM
и контролем сырого SQL.
Если пишешь сервисы на Go с PostgreSQL или MySQL —
это один из самых практичных инструментов в продакшене.
GitHub: https://github.com/sqlc-dev/sqlc
📎 Фреймворк с готовой архитектурой
Когда начинаете новый проект, первые несколько часов уходят на одно и то же: настройка базы данных, конфигурация JWT, структура папок, валидация запросов. goserve предлагает готовую базу, чтобы пропустить этот этап.
goserve — это фреймворк на базе Gin с интеграциями для типичных задач бэка:
• pgx или MongoDB для работы с данными
• go-redis для кеширования
• JWT с RS256 для токенов
• Viper для конфигов
• Валидация и криптографические утилиты
Проект организован по фичам, а не по слоям. Вместо глобальных папок controllers/, services/ каждая фича живет в своем модуле — users/, auth/ и так далее.
https://github.com/afteracademy/goserve
Kubernetes сам по себе ничего не решает. Сила появляется, когда начинаешь правильно его комбинировать
Именно связки инструментов превращают кластер в полноценную платформу
База, без которой никуда
K8s + Docker даёт стандарт оркестрации контейнеров
K8s + Terraform автоматизирует поднятие инфраструктуры
K8s + Helm убирает боль с деплоем и версиями
K8s + ArgoCD закрывает GitOps и делает релизы предсказуемыми
Наблюдаемость и безопасность
K8s + Prometheus + Grafana дают полный контроль над метриками
K8s + Vault решает проблему секретов без костылей
K8s + Cilium добавляет нормальную сетевую безопасность и observability
K8s + OPA позволяет внедрить policy as code и контролировать всё на уровне кластера
Трафик и масштабирование
K8s + NGINX Ingress или Envoy дают контроль над L7 трафиком
K8s + Istio превращает всё это в полноценный service mesh
K8s + KEDA добавляет event-driven scaling, без ручного тюнинга
AI и платформенная инженерия
K8s + Ollama + KServe позволяют гонять LLM-инференс в проде
K8s + Kubeflow закрывает ML пайплайны
K8s + Crossplane делает из Kubernetes основу для platform engineering
По факту Kubernetes это не инструмент, а каркас
И то, во что он превратится, полностью зависит от того, какие связки ты соберёшь
M:N concurrency - одна из причин, почему Go так хорошо чувствует себя на сетевых сервисах.
Идея простая: у вас может быть миллион маленьких задач, но это не значит, что под каждую нужен отдельный поток операционной системы. Runtime берёт много лёгких goroutine и сам распределяет их по меньшему числу реальных OS threads.
Получается схема M:N: много пользовательских задач на несколько системных потоков.
Из-за этого goroutine можно создавать тысячами и десятками тысяч без такого же дикого расхода памяти, как у обычных threads. А scheduler сам решает, кто сейчас работает, кого поставить на паузу, кого перенести на другой поток и как не дать одной задаче заблокировать весь процесс.
В статье хорошо объясняется, почему это сложнее, чем кажется. За красивым go func() скрываются work stealing, preemption, blocking syscalls, queues, stacks, parking и постоянная борьба за баланс между latency и throughput.
Для разработчика это полезно не ради теории. Когда понимаешь M:N модель, становится проще объяснить, почему одна программа летает на тысячах соединений, а другая внезапно упирается в scheduler, locks или blocking I/O.
Go выглядит простым снаружи. Но внутри его конкурентность - это очень плотный кусок runtime-инженерии.
0xkiire.com/mn-concurrency-model/
Claude ускорил production-код в 2 500 раз
incident.io показали редкий нормальный кейс использования ИИ в разработке: не «сделай мне стартап за вечер», а скучная, больная и дорогая оптимизация реального production-кода.
У них был рендер on-call расписаний. На бумаге звучит просто: кто сегодня дежурит, кого пейджить, когда смена. В реальности там ад из рабочих часов, оверрайдов, разных ротаций, daylight saving time и старых исторических записей.
Старый алгоритм часто просто шёл по времени шаг за шагом от стартовой даты. Иногда это означало сотни тысяч итераций, чтобы понять, кто сейчас on-call.
Команда уже пыталась ускорить это вручную. Были flame graph, бинарный поиск, фиксы в горячих местах, удаление лишних UUID, кеширование timezone. Всё помогало, но не решало главную проблему: алгоритм всё ещё делал слишком много работы.
Потом они дали Claude Opus 4.6 CPU-профили и попросили найти математически более умный способ не перебирать каждую неделю, день или час с начала расписания.
Через 20 минут Claude собрал RenderV2.
Новая версия не ползла по истории, а «перепрыгивала» сразу к нужной точке, восстанавливала правильного дежурного и считала только видимое окно. Плюс Claude сам добавил dry-run режим: старый и новый рендер работали параллельно, а все расхождения логировались.
Самое интересное: в процессе раскатки Claude нашёл баг в старом рендере, связанный с переходом на летнее время. То есть ИИ не просто ускорил код, а помог поймать ошибку, которая годами сидела в логике дат.
После недели без предупреждений incident.io полностью переключились на новый рендер.
Итог: p99 ответа schedule API упал с 2 секунд до 200 мс, а сам render method на сложных расписаниях стал примерно в 2 500 раз быстрее.
Вот это и есть настоящий AI-assisted coding.
Не вайбкодинг, не магия и не «агент всё сделал сам». А инженер с профилями, тестами, feature flag, production-телеметрией и ИИ, который помогает найти ход, до которого команда долго не доходила руками.
https://incident.io/blog/whos-on-call-how-claude-helped-us-calculate-this-2-500-x-faster
NoKV - когда обычный KV уже не вытягивает файловые метаданные
В distributed filesystems, object storage и AI dataset pipelines есть неприятная часть, которую команды постоянно пишут заново: слой метаданных.
Где лежит файл? Что внутри директории? Как быстро сделать LIST по префиксу? Как атомарно переименовать subtree? Как дать training pipeline консистентный snapshot датасета?
Обычно это пытаются прикрутить поверх FoundationDB, TiKV, etcd или Redis. Работает, пока нагрузка небольшая. Потом начинается классика: N+1 round trips, медленный LIST, костыли вокруг rename, отдельная логика для watch, quota, mount lifecycle и снапшотов.
NoKV пытается вынести это в отдельный слой.
Он не хранит сами данные. Его задача - быть namespace metadata layer между generic KV и верхним уровнем: FUSE, S3 gateway, distributed filesystem или AI dataset SDK.
Проект на Go, Apache-2.0, есть Docker Compose, gRPC API и фокус на distributed filesystems, S3-like namespace layers и AI dataset workloads.
https://github.com/feichai0017/NoKV
Недавно на GitHub наткнулся на отличную открытую книгу: The Accidental CTO.
Автор не из академической среды, но шаг за шагом развил платформу с нуля до уровня, способного выдержать миллион пользователей. В книге не шаблонные ответы про «лучшие практики», а реальный опыт, осел после падений в ямы, тушения пожаров и разборов полетов: как пережить крах сервера в три часа ночи, как догнать задержку репликации базы данных, как поэтапно наращивать архитектуру.
Она через истории раскрывает ключевые концепции распределенных систем, а заодно выкладывает на стол компромиссы за техническими решениями: почему выбрали именно так, какой ценой, как развивать дальше.
GitHub: http://github.com/subhashchy/The-Accidental-CTO
Небольшая библиотека для прокси на Go без лишнего слоя абстракций
proxykit - это набор базовых компонентов, из которых можно собрать свой прокси под задачу.
Что есть из коробки:
- reverse proxy
- forward proxy
- CONNECT (HTTPS туннели)
- WebSocket проксирование
- управление прокси во время работы
Подход простой:
не сервер «под ключ», а конструктор.
Где это может пригодиться:
- прокси внутри сервиса
- инструменты для дебага трафика
- сетевые middleware
- кастомные gateway
Почему это удобно:
- нет лишней архитектуры
- можно встроить в любой проект
- легко контролировать поведение
Это скорее фундамент, чем готовое решение.
Берёшь и собираешь под свой сценарий.
https://github.com/777genius/proxykit
👣 Go slog за 30 секунд: из чего он реально состоит
Весь пакет log/slog построен на 5 типах.
• Value - контейнер для значения. Число, строка, bool.
• Attr - пара ключ-значение. Например name=alice.
• Logger - точка входа. Принимает сообщение и атрибуты, собирает событие.
• Record - готовое лог-событие: время, уровень, сообщение и набор Attr.
• Handler - обрабатывает Record. Форматирует и пишет в io.Writer.
Вот и всё.
Минимум сущностей, максимум гибкости.
Поэтому slog легко расширять и встраивать в любую систему логирования.
Random в Go сложнее, чем кажется
Кажется, что в Go есть один генератор случайных чисел. На деле их несколько, и они сильно отличаются по назначению.
Самый старый вариант живёт в math/rand. Это быстрый генератор для обычных задач, но к безопасности он отношения не имеет.
В новых версиях появился math/rand/v2.
Там уже два варианта. PCG для скорости и ChaCha8 для сценариев, где нужна криптостойкость.
Для безопасности используется crypto/rand. Он не генерирует числа сам, а обращается к системе. В Linux это getrandom, в macOS и BSD свои механизмы.
Дальше начинается то, о чём многие не знают.
Если нужна сертификация FIPS, можно переключиться на BoringSSL. Это отдельный криптостек с требованиями госстандартов.
А в Go 1.24 появился нативный режим FIPS. Без внешних библиотек. Там используется DRBG, который инициализируется от системного генератора и работает уже по правилам стандарта.
В итоге в Go нет универсального RNG. Есть несколько уровней, и важно понимать, какой именно ты используешь в конкретной задаче.
@golang_interview
🚀 Go + аудио + ИИ в одном API: минимализм, который можно сразу тащить в прод
Это лёгкий API на Go для работы с аудио и ИИ без перегруженной архитектуры и лишней магии.
Что внутри по сути:
- Обработка аудио через простой HTTP API
- Интеграция с AI-моделями (речь → текст и обратно)
- Минимум зависимостей, всё прозрачно и читаемо
- Отлично подходит как база под свои сервисы
Почему это интересно:
Go здесь используется по назначению — как быстрый, предсказуемый бэкенд для real-time задач. Без перегрузки фреймворками и «enterprise-архитектурой ради архитектуры».
https://github.com/b0bbywan/go-odio-api
🔍Тестовое собеседование с Go Senior из Uzum в этот четверг
9 апреля(в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Go-разработчика.
Как это будет:
📂 Маруф Караев, Senior из Uzum, ex-Яндекс, ex-EPAM будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Маруф будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Маруфу
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Go-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_go_bot
Реклама.
О рекламодателе.
🐹 Go: почему кодовая база etcd - must-read для каждого разработчика
Чтение хорошего кода - самый быстрый способ научиться писать хороший код.
И если выбирать один репозиторий - смотри в сторону etcd.
Это не просто KV-store. Это фундамент Kubernetes и эталон того, как строить production-системы на Go.
Почему его стоит разобрать:
• 📦 Чистая структура protobuf
Все API логично разложены, нет хаоса
Легко понять, как устроен весь сервис
• 🔌 Чёткие границы gRPC
Каждый сервис изолирован (KV, Watch, Lease)
Никакой каши из handler’ов
• ⚙️ Интерцепторы как в проде
Логирование, retry, метрики - всё через chain interceptors
Реальный production-подход
• 📊 Метрики из коробки
Prometheus встроен прямо в gRPC слой
Можно сразу понять, как мониторить сервисы
• 🧠 Архитектура, которую можно понять
В отличие от многих больших проектов - код читается
Ты реально можешь "пройти" систему целиком
• 🧩 Удобный клиент
clientv3 скрывает сложность распределённой системы
Снаружи - простой API, внутри - сложная логика
💡 Инсайт:
etcd - это редкий пример, где:
сложная система ≠ сложный код
Именно такие проекты формируют уровень инженера.
👉 Разбор кода:
https://rednafi.com/shards/2026/03/etcd-codebase/
#go #golang
В Go появился быстрый immutable map - альтернатива стандартному map
Это map, который нельзя менять после создания, зато он сильно быстрее и экономнее по памяти.
Зачем это нужно:
- много данных (миллионы ключей)
- данные не меняются
- важна скорость чтения
Обычный map в Go:
- ~56 байт на ключ
Immutable map:
- ~9 байт на ключ
- почти в 3 раза быстрее
Как использовать
package main
import (
"fmt"
"log"
"github.com/lemire/constmap"
)
func main() {
keys := []string{"apple", "banana", "cherry"}
values := []uint64{100, 200, 300}
cm, err := constmap.New(keys, values)
if err != nil {
log.Fatal(err)
}
fmt.Println(cm.Map("banana")) // 200
}
Врум-врум: разгоняемся на ВК ДжейТи Митап для Go-разработчиков!
Встречаемся в двух городах:
📍 Москва, 4 апреля
📍 Санкт-Петербург, 11 апреля
Формат — только офлайн, без трансляций. В программе — доклады от экспертов VK и другие активности.
Москва
• как боролись с вынужденными нагрузками и сократили число запросов с 400 млн до 200 тысяч
• как строится безопасная платформа мини-приложений с изоляцией, мультитенантностью и контролем ресурсов
Дальше выбирайте трек: архитектурная задача с разбором от экспертов VK или обсуждение новостей индустрии в подкасте с Никитой Галушко, ведущим разработчиком API ВКонтакте, членом программного комитета Golang Conf/Голанг Конф. А в завершение пит-стоп — вечеринка для нетворкинга.
Санкт-Петербург
• как строится безопасная платформа мини-приложений с изоляцией, мультитенантностью и контролем ресурсов
• устройство эффективного и быстрого клиента для Tarantool на Go — от наивного кода до оптимизаций с минимумом аллокаций и горутин
После докладов — командное решение архитектурной задачи и неформальное общение с экспертами и коллегами.
Приходите за практической пользой и обменом идеями! Регистрация по ссылке.
🚀 Go boilerplate, с которого реально можно начать прод
Это не просто шаблон — это почти готовый backend под реальные задачи.
Что внутри:
- Готовая структура под REST API
- Разделение роутеров: public / protected / admin
- Подключение БД (Postgres / MySQL / SQLite)
- Миграции, логирование, CORS, таймауты, graceful shutdown
- Swagger + Postman из коробки
- Background jobs и CLI-задачи
- GitHub Actions и тесты
Проект построен на Echo и уже включает всё, что обычно начинают добавлять “потом, когда-нибудь”.
Главная идея:
клонируешь репозиторий → меняешь название → и через несколько минут у тебя уже рабочий API.
Подходит, если:
- не хочется каждый раз собирать проект с нуля
- нужен нормальный production-ready старт
- важна структура и масштабируемость
По сути, это уже не просто boilerplate, а почти фреймворк с готовыми решениями.
https://github.com/codoworks/go-boilerplate
👣 Revive — это статический анализатор кода для языка Go, предназначенный для замены устаревшего инструмента golint!
🌟 Он обеспечивает более быструю и строгую проверку кода, а также предлагает расширенные возможности настройки и расширения. Revive позволяет разработчикам создавать собственные правила и форматтеры, а также предоставляет гибкую систему конфигурации через файлы в формате TOML.
🔐 Лицензия: MIT
🖥 Github