Опубликовал подробный тур по предстоящему релизу Golang. Часть функций мы уже успели обсудить, другие ещё разберём — а если хотите сразу всю картину целиком, заглядывайте.
Версия Go 1.26 выходит в феврале 2026 года и приносит сразу несколько важных улучшений от языка до производительности и инструментов.
В официальных релиз-нотах (сухих по стилю) мало примеров, поэтому ниже главное в понятной форме с примерами.
🆕 1. new(expr) - новый синтаксис, упрощающий код
Раньше new принимал только тип:
p := new(int)
Теперь можно передавать выражение, и это создаёт указатель на значение:
p := new(42) // *int со значением 42
Это особенно полезно, когда вы используете указатели на поля в структурах (например, для опциональных значений в JSON).
💡 2. Улучшенное проверочное API для ошибок
Появилась функция errors.AsType, которая делает проверку ошибок типобезопасной и без рефлексии:
if target, ok := errors.AsType[*net.OpError](err); ok {
fmt.Println("Network error:", target.Op)
}
Это удобнее и безопаснее, чем errors.As.
🧠 3. Green Tea garbage collector
Сборщик мусора получил значительные оптимизации:
— работает быстрее и эффективнее за счёт лучшего использования кеша и многопоточной обработки,
— снижает накладные расходы в программах с интенсивной аллокацией.
🚀 4. Быстрее cgo, системные вызовы, аллокация
— Существенно уменьшена стоимость cgo вызовов — до ~30% в сторону ускорения.
— Улучшено время системных вызовов.
— Улучшена производительность аллокации небольших объектов.
🧬 5. Experimental: SIMD и безопасное стирание секретов
В Go 1.26 появляются эксперименты, которые можно включить через GOEXPERIMENT:
• simd/archsimd — доступ к векторным (SIMD) операциям на amd64.
• runtime/secret — безопасное стирание временных данных, используемых, например, в криптографии.
📊 6. Новые метрики и инструменты
Пакет runtime/metrics расширен:
— можно отслеживать количество горутин по состояниям,
— появились дополнительные показатели для диагностики.
📦 7. Мелкие, но важные изменения
— go fix переработан на основе анализа кода (Modernizers).
— go doc становится «одной командой» для документации.
— Улучшены стандартные библиотеки, включая работу с ошибками и кодированием.
Go 1.26 не ломает обратную совместимость, но приносит:
✔ более выразительные языковые конструкции,
✔ ускорение выполнения и сборки,
✔ улучшенные инструменты разработчика,
✔ экспериментальные механизмы для высокопроизводительных и безопасных систем.
Если вы используете Go в продакшене - стоит начать тестировать ранние сборки и готовиться к обновлению.
Тур: https://antonz.org/go-1-26
Видео: https://www.youtube.com/watch?v=TxqTwSx-rI4
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤74🔥38👍22👏2😁1
gotui - это современная TUI-библиотека на Go, построенная поверх tcell. Проект является обновлённым и доработанным форком termui с фокусом на производительность и возможности современных терминалов.
Основные возможности:
- Поддержка TrueColor (24-битный цвет)
- Быстрый и эффективный рендеринг без лишних перерисовок
- Гибкие flex-layoutы для адаптивных интерфейсов
- Закруглённые рамки и аккуратный внешний вид
- Обработка пользовательского ввода
- Полная функциональная совместимость с termui
Где пригодится:
- Терминальные дашборды
- Мониторинг сервисов
- DevOps и SRE инструменты
- Админки и внутренние утилиты
- Интерактивные CLI-приложения
Отличный выбор, если хочется писать красивые, современные и быстрые TUI-приложения на Go без боли и устаревших ограничений.
github.com/metaspartan/gotui
#golang #go
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥11❤6🤔3🤯2🥰1
Владение Docker - навык, который отличает новичка от профи,
Сегодня почти всё разворачивается в контейнерах.
Если ты не умеешь работать с Docker, ты медленнее, зависим от чужих настроек и постоянно ловишь баги «у меня локально работает».
• как упаковывать проекты в контейнеры
• как поднимать целые системы за минуты
• как избегать типичных ошибок в продакшене
• как делать стабильные и повторяемые окружения
•в нем разобраны все возможные ошибки
Только практика и реальные кейсы от авторов Docker Академии - с нуля до уверенного уровня.
🎁 Скидка 40 процентов действует 48 часов
👉 Записывайся и сделай Docker своим настоящим рабочим инструментом.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤25👍7🤬7😁4🔥3
Раньше ограничения типов не могли напрямую или косвенно ссылаться на параметр типа.
Например, такое объявление интерфейса:
type Ordered[T Ordered[T]] interface {
Less(T) bool
}
Что приводило к ошибке компиляции:
invalid recursive type: Ordered refers to itself.Начиная с Go 1.26, этот код компилируется без проблем.
Типичный сценарий использования - обобщённый тип, который поддерживает операции с аргументами или результатами того же типа, что и он сам (например,
Ordered[T]).Такой тип можно использовать как элемент обобщённого контейнера, например
Tree[T Ordered[T]].В результате дженерики в Go стали немного более выразительными и гибкими, особенно для структур данных и алгоритмов.
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉49👍26❤16🔥4😱4🤯3😁2
Go на Nintendo 64 🎮⚡️
Наткнулся на мощный туториал: как начать писать под Nintendo 64 на Go и собрать свой первый ROM.
Автор пошагово показывает путь “с нуля”:
- установка EmbeddedGo toolchain
- сборка ROM через утилиту
- запуск в эмуляторе
- вывод графики прямо в framebuffer
- чтение геймпада
- базовый звук и ассеты
Самое кайфовое - это не теория ради теории.
Ты реально быстро приходишь к результату: вывод на экране + управление, можно самому запилить мини-игру или демку.
Если любишь ретро, low-level и Go - must read.
📌Источник: timurcelik.de/posts/n64go-1-getting-started/
📌 Код: https://github.com/clktmr/n64tutorial
@Golang_google
Наткнулся на мощный туториал: как начать писать под Nintendo 64 на Go и собрать свой первый ROM.
Автор пошагово показывает путь “с нуля”:
- установка EmbeddedGo toolchain
- сборка ROM через утилиту
n64go- запуск в эмуляторе
- вывод графики прямо в framebuffer
- чтение геймпада
- базовый звук и ассеты
Самое кайфовое - это не теория ради теории.
Ты реально быстро приходишь к результату: вывод на экране + управление, можно самому запилить мини-игру или демку.
Если любишь ретро, low-level и Go - must read.
📌Источник: timurcelik.de/posts/n64go-1-getting-started/
📌 Код: https://github.com/clktmr/n64tutorial
@Golang_google
1🔥37❤12👍12🥰1
Проект нацелен на более современный, быстрый и поддерживаемый просмотр истории Git-репозиториев.
Что это такое
- GUI-инструмент для просмотра истории Git
- альтернатива оригинальному gitk на Tcl/Tk
- написан на чистом Go
- кроссплатформенный
Что умеет
- визуализация коммитов и веток
- просмотр diff-ов
- навигация по истории репозитория
- работа с большими репозиториями
Почему это интересно
Оригинальный gitk:
- старый стек
- медленный на больших репозиториях
- сложен в доработке
gitk-go решает эти проблемы:
- быстрее рендеринг
- современный язык и экосистема
- проще в поддержке и развитии
- хороший пример desktop-приложения на Go
Кому полезно
- тем, кто часто анализирует историю Git
- Go-разработчикам как реальный пример GUI-приложения
- тем, кто хочет легкий и простой Git viewer без IDE
github.com/thiagokokada/gitk-go
#golang #go
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔17❤8🔥6👍4
Если ты думаешь, что “я знаю Go concurrency”, потому что запускал
go func(){} - вот тебе реальный чек.go-concurrency-exercises - это набор задач, которые заставляют врубиться в конкурентность :не по книжке, а через боль, race conditions и дедлоки 😅
Что внутри:
✅ задачи на goroutines / channels / select
✅ fan-in / fan-out, worker pool, pipeline
✅ rate limiting, timeouts, context cancel
✅ типичные ловушки: race, deadlock, leak горутин
✅ решения и объяснения - можно сверяться
Подойдет:
- для подготовки к собесам
- для мидлов, которые хотят стать сеньорами
- для тех, кто хочет писать конкурентный Go и разбираться в нем
📎 GitHub: github.com/loong/go-concurrency-exercises
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤56👍20🥰7
Если тебе надо сделать
ALTER TABLE на большой продовой таблице и не положить сервис - gh-ost это прям must-have.Большинство online-schema-change тулов используют триггеры и создают лишнюю нагрузку.
А
gh-ost идёт по другому пути:✅ Triggerless - вообще без триггеров
✅ Читает изменения через binlog stream и асинхронно применяет их к “ghost table”
✅ Даёт полный контроль над процессом миграции:
- пауза/резюм
- throttle (снижение нагрузки)
- аудит и статус
- безопасный cut-over
Как это работает (по-простому):
1) создаётся “ghost table” с новой схемой
2) данные копируются постепенно
3) параллельно изменения ловятся из binlog
4) в конце таблицы меняются местами почти мгновенно
Идеально для:
🔥 таблиц на десятки миллионов строк
🔥 production-систем
🔥 миграций без блокировок
📌 Репо: github.com/github/gh-ost
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👍7🔥7😁1
🎊 Вышли Go 1.25.6 и Go 1.24.12
В релизах закрыли важные уязвимости в ключевых пакетах:
🔐 Security fixes:
То есть патчи затрагивают:
HTTP, TLS/SSL, ZIP - всё, что потенциально имеет дыры.
Рекомендация простая:
✅ обнови Go runtime
✅ пересобери сервисы
✅ прогоняй CI
▪Анонс: https://groups.google.com/g/golang-announce/c/Vd2tYVM8eUc/m/pQP7Bk0aCQAJ
▪ Скачать: https://go.dev/dl/#go1.25.6
@Golang_google
В релизах закрыли важные уязвимости в ключевых пакетах:
🔐 Security fixes:
- `archive/zip` (CVE-2025-61728)
- `net/http` (CVE-2025-61726)
- `crypto/tls` (CVE-2025-68121, CVE-2025-68121, CVE-2025-61730)
- `cmd/go` (CVE-2025-61731, CVE-2025-68119)
То есть патчи затрагивают:
HTTP, TLS/SSL, ZIP - всё, что потенциально имеет дыры.
Рекомендация простая:
✅ обнови Go runtime
✅ пересобери сервисы
✅ прогоняй CI
▪Анонс: https://groups.google.com/g/golang-announce/c/Vd2tYVM8eUc/m/pQP7Bk0aCQAJ
▪ Скачать: https://go.dev/dl/#go1.25.6
@Golang_google
👍28❤8🔥5
Идея такая: ты пишешь логику на Go, а инструмент переводит её в нормальный, читаемый TS.
Без магии “всё тащим в браузер”, как это делал GopherJS, а через аккуратную работу с AST - то есть код реально переписывается структурно.
Зачем это нужно:
Чтобы не дублировать одну и ту же бизнес-логику в двух местах:
- на бэкенде на Go
- и на фронте на React/Vue
Что умеет:
- алгоритмы/структуры данных можно переиспользовать напрямую
- горутины и каналы превращаются в async/await
- работают дженерики и интерфейсы
- поддерживается encoding/json и многое из стандартной библиотеки
Если коротко: меньше переписывания руками, больше реюза кода. Экономит недели.
https://github.com/aperturerobotics/goscript
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25😁23👍10❤8🤬8
🏙️ gastown - культовый сборник мыслей о софте от Steve Yegge
Если ты любишь тексты уровня “после прочтения мозг зашевелился и начал генерировать идеи”, то это отличный репо.
Это репозиторий-архив постов и эссе Steve Yegge (экс-Amazon/Google) - одного из самых известных тех-блогеров в инженерной тусовке.
Там не “очередной туториал”.
Там мысли, которые реально формируют инженерное мышление:
- как компании принимают технические решения
- почему продукты побеждают технологии
- как рушатся архитектуры и процессы
- чем отличается хороший инженер от просто кодера
- как выглядит реальный мир внутри BigTech
Что особенно круто
Тексты читаются как личные заметки человека, который видел всё изнутри: политика крупной ит-компании, рабочие процессы, ошибки, битвы платформ и технологий.
И да - если ты когда-то слышал про легендарный пост “Platforms”, то он тоже оттуда.
GitHub: github.com/steveyegge/gastown
@Golang_google
Если ты любишь тексты уровня “после прочтения мозг зашевелился и начал генерировать идеи”, то это отличный репо.
Это репозиторий-архив постов и эссе Steve Yegge (экс-Amazon/Google) - одного из самых известных тех-блогеров в инженерной тусовке.
Там не “очередной туториал”.
Там мысли, которые реально формируют инженерное мышление:
- как компании принимают технические решения
- почему продукты побеждают технологии
- как рушатся архитектуры и процессы
- чем отличается хороший инженер от просто кодера
- как выглядит реальный мир внутри BigTech
Что особенно круто
Тексты читаются как личные заметки человека, который видел всё изнутри: политика крупной ит-компании, рабочие процессы, ошибки, битвы платформ и технологий.
И да - если ты когда-то слышал про легендарный пост “Platforms”, то он тоже оттуда.
GitHub: github.com/steveyegge/gastown
@Golang_google
❤21🔥9👍5🤔4🥰1
Команда Go опубликовала результаты Go Developer Survey 2025 (опрос проходил в сентябре 2025, ответили 5 379 разработчиков).
Главная мысль отчёта: Go продолжает ощущаться практичным языком для продакшена, а ключевые запросы сообщества - это не «модные фичи», а стабильность, удобство разработки и улучшение опыта работы.
Топ-3 вывода (по версии Go Team):
1) Go нравится разработчикам и хорошо подходит для продакшена
Язык выбирают за простоту, предсказуемость и удобство поддержки.
2) Болевые точки остаются примерно теми же
Больше всего обсуждают:
- обработку ошибок
- `nil`/nil-паники
- отсутствие “нормальных” sum types / более выразительных типов
3) AI-инструменты в Go уже используют, но отношение к ним сдержанное
Видно рост использования AI-помощников, но доверие и «любовь» заметно ниже, чем к классическим инструментам разработки.
Идея простая: пробуют многие, но относятся осторожно.
Почему это важно:
- Go остаётся языком «для работы», а не экспериментов
- комьюнити больше ценит улучшения tooling/экосистемы, чем радикальные изменения языка
- AI-помощники становятся стандартом, но пока не воспринимаются как полностью надёжная замена голове
📌 Полный опрос: go.dev/blog/survey2025
📌 Видео: https://www.youtube.com/watch?v=nMmLMo4lmgA
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45❤16🔥7
🚀 SaaS Starter Kit для Основателей
Готовый шаблон для создания SaaS-приложений с использованием Next.js и Go. Включает современные технологии для фронтенда и бэкенда, обеспечивая безопасность, многоуровневую архитектуру и интеграцию с AI.
🚀 Основные моменты:
- Полная поддержка аутентификации и управления ролями
- Интеграция с системой биллинга и подписок
- Многоуровенная архитектура с изоляцией данных
- Готовые решения для AI и обработки документов
- Мобильный интерфейс с адаптивным дизайном
📌 GitHub: https://github.com/moasq/production-saas-starter
#go
Готовый шаблон для создания SaaS-приложений с использованием Next.js и Go. Включает современные технологии для фронтенда и бэкенда, обеспечивая безопасность, многоуровневую архитектуру и интеграцию с AI.
🚀 Основные моменты:
- Полная поддержка аутентификации и управления ролями
- Интеграция с системой биллинга и подписок
- Многоуровенная архитектура с изоляцией данных
- Готовые решения для AI и обработки документов
- Мобильный интерфейс с адаптивным дизайном
📌 GitHub: https://github.com/moasq/production-saas-starter
#go
🔥17😁12👍7❤3🥰1
🔒 semantic_firewall: инструмент для “семантической” проверки кода на Go
Это open-source инструмент и GitHub Action, который создаёт детерминированные семантические отпечатки (fingerprints) для функций Go. В отличие от обычных дифф-средств, он сравнивает не байты или синтаксис, а поведение и логику кода — так можно обнаружить скрытые изменения логики при рефакторинге или внедрении неочевидных изменений в PR. :
🔍 В основе лежат:
- анализ кода через SSA (Static Single Assignment),
- нормализация управления потоком,
- математический анализ циклов (Scalar Evolution).
📌 Это помогает:
- отслеживать изменения логики, а не только синтаксиса,
- включать проверки в CI/CD (GitHub Actions),
- блокировать PR, где поведение изменилось, даже если код выглядит как “рефакторинг”.
Проект написан на Go и распространяется под MIT-лицензией - подходит для интеграции в рабочие процессы.
https://github.com/BlackVectorOps/semantic_firewall
Это open-source инструмент и GitHub Action, который создаёт детерминированные семантические отпечатки (fingerprints) для функций Go. В отличие от обычных дифф-средств, он сравнивает не байты или синтаксис, а поведение и логику кода — так можно обнаружить скрытые изменения логики при рефакторинге или внедрении неочевидных изменений в PR. :
🔍 В основе лежат:
- анализ кода через SSA (Static Single Assignment),
- нормализация управления потоком,
- математический анализ циклов (Scalar Evolution).
📌 Это помогает:
- отслеживать изменения логики, а не только синтаксиса,
- включать проверки в CI/CD (GitHub Actions),
- блокировать PR, где поведение изменилось, даже если код выглядит как “рефакторинг”.
Проект написан на Go и распространяется под MIT-лицензией - подходит для интеграции в рабочие процессы.
https://github.com/BlackVectorOps/semantic_firewall
👍12😁12❤9🔥4🤔2
В Go важно понимать, как компилятор размещает данные в памяти - это напрямую влияет на скорость работы и объём используемой памяти.
Что такое выравнивание?
Выравнивание памяти - это правило: данные должны находиться по адресам, кратным их размеру. Это нужно, чтобы процессор мог читать и записывать значения за одну операцию.
Например:
-
int64 требует выравнивания по 8 байтам -
int32 - по 4 байтам -
byte - по 1 байту Если значение лежит “неудобно”, CPU делает несколько операций вместо одной - это медленнее.
Почему появляется padding
Компилятор Go автоматически вставляет пустые байты (padding) между полями структуры, чтобы соблюсти правила выравнивания.
Размер структуры - это не просто сумма размеров полей.
Пример:
type Example struct {
a byte // 1 байт
b int64 // 8 байт (нужно выравнивание по 8)
c byte // 1 байт
}
Хотя “полезных” данных тут 10 байт, структура занимает больше из-за вставленного паддинга.
Почему это важно
Если структура используется миллионы раз (в кэше, массивах, базах, сетевых пакетах), лишние байты превращаются в:
• большее потребление памяти
• худшее попадание в CPU cache
• падение производительности
Как оптимизировать
• Порядок полей имеет значение.
• Крупные типы лучше ставить первыми:
type Optimized struct {
b int64
a byte
c byte
}
Так компилятору нужно меньше padding, и структура становится компактнее.
Главное правило
В Go порядок полей в структуре влияет на производительность.
Выравнивание памяти - это не микроскопическая оптимизация.
В высоконагруженных системах это даёт реальный прирост скорости и экономию памяти.
Сохрани себе - пригодится при проектировании структур данных.
▪ Больше примеров
▪ Видео
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45❤18🔥14