Свежая подборка новостей и материалов
Интересное в этом выпуске
Выпущены версии Go 1.17.8 и Go 1.16.15.
Выпущен релиз Go 1.18
Взлом типов Sum с помощью Go Generics
Используйте графический процессор Mac M1 с Go
Набор инструментов для обфускации сборок Go
Библиотека в стиле Lodash для Go 1.18
Приятного чтения!
Новости, события
Выпущены Go 1.17.8 и 1.16.15 включает исправления переполнение стека при обработке регулярного выражения
Выпущен релиз Go 1.18
Официальный пост о релизе — хорошее место для начала — в заголовках упоминаются дженерики, нечеткое тестирование и рабочие области , но без подробностей.
Официальные примечания к выпуску Go 1.18 освещают технические аспекты выпуска на высоком уровне в виде маркеров.
Карл Джонсон рассказывает о трех менее изученных «второстепенных» функциях Go 1.18.
Несколько простых руководств по использованию дженериков.
Awesome
https://awesome-go.com/
https://github.com/guardrailsio/awesome-golang-security
https://github.com/Binject/awesome-go-security
https://gist.github.com/hbt/d6ab942b882d5b94f331c5257076d05e
https://github.com/avelino/awesome-go
Материалы для обучения
Уроки для изучения Golang
Ссылки на учебные пособия по Go
The Darker Corners of Go — список уроков
Статьи
Использование WWW-Authenticate для аутентификации пользователя
Изоляция проблемного кода Cgo — руководство по использованию родительско-дочерних процессов для создания, передачи и мониторинга файловых дескрипторов для работы с интенсивным использованием памяти и ЦП.
Скрипты с Go
Переписывание Bash-скриптов на Go
Расширяемые файловые системы для Go
Взлом типов Sum с помощью Go Generics
Создание gRPC-клиента в Go
Создание графического интерфейса GO с помощью Alpine.js и Webview
Реализация Java-подобных потоков в Go с помощью дженериков
Введение в дженерики
Внедрение игрушечной версии TLS 1.3
Почему мы пишем все на Go <bitly>
Как мы проанализировали и исправили утечку памяти в GO
Что такое рабочие пространства Go и как их использовать?
Практический пример сквозного тестирования с помощью Go
Дженерики могут сделать ваш код Go медленнее
Написание базы данных документов с нуля на Go
Используйте графический процессор Mac M1 с Go
Как мы использовали Go 1.18 при разработке наших идентификаторов
Проверяем защищённость приложения на Go: с чего начать
Unifi prometheus exporter
Rest шлюз для gRPC сервисов на го — gRPC-gateway
Вопросы и ответы для собеседования Go-разработчика
Инструкция: Как построить процесс доставки приложения в Kubernetes, используя gitlab ci и gitlab runner
Гайд по поиску и устранению утечек памяти в Go сервисах
Дженерики в Go — подробности из блога разработчиков
Номинация: Худший способ сформировать URL строку в Golang
Метаморфозы Go: сможет ли язык одолеть Python и Java?
Разворачиваем Golang приложение в Kubernetes
История: пишем скрипты на Go
Пишем gas station для EIP-1559 транзакций
Ошибки, которые не ловит Rust
Разрабатываем приложение на Golang + gRPC + gRPC Gateway
Как Uber сэкономил 70 тысяч ядер благодаря полуавтоматической настройке сборки мусора
Облегчаем работу с SQL в go и при этом не отстреливаем себе ноги
Инструменты
Библиотека расширений стандартной библиотеки Go с использованием дженериков, включая контейнеры, итераторы и потоки - juniper
Клиентская библиотека ORM для работы с Postgres, MySQL, SQL Server и SQLite - bun v1.1.3
Библиотека в стиле Lodash для Go 1.18 - lo v1.11.0
Инструмент резервного копирования для PostgreSQL - pg_back v2.1.0
Инструмент CLI для записи, обмена и экспорта вашего терминала в виде анимированного изображения SVG - termsvg v0.5.0
Генерация типов TypeScript из исходного кода Go - tygo v0.2.1
Библиотека для безопасного хранения учетных данных AWS и доступа к ним в процессе разработки - aws-vault v6.6.0
Инструмент генерации случайной схемы из M столбцов для заполнения N строк JSON, CSV, Excel - fakegen v0.2.0
HTTP-инструмент для зондирования серверов - httpx v1.2.0
Клиентская библиотека Cassandra - gocql v1.0
Инструмент быстрого пассивного перечисления субдоменов - subfinder v2.5.0
Инструмент управление доступом на основе ролей (RBAC) для вашего приложения Go - permify-gorm v1.0.0
Библиотека кэширования с нулевыми затратами на сборщик мусора - freecache v1.2.1
инструмент сборки, похожий на make/rake, с использованием Go - mage v1.13.0
Клиент ClickHouse для Go 1.18 - go-clickhouse v0.2.5
Библиотека для создания приложений командной строки - cli v2.4.0
Пользовательский интерфейс на основе терминала для работы с Docker - lazydocker v0.12.0
Официальный драйвер ArangoDB - go-driver v1.3.1
Драйвер sql базы данных, использующий свободный от CGo порт библиотеки SQLite3 - sqlite v1.15.0
Компьютерное зрение в Go с использованием OpenCV 4+ - gocv 0.30.0
Инструмент для создания и запуска виртуальных машин QEMU - qemantra
Инструмент уравления браузерами с помощью протокола Chrome DevTools - chromedp 0.8
Кросс-компиляция вашего проекта Go - goreleaser v1.7.0
Набор инструментов для обфускации сборок Go. - garble v0.6.0
Инструмент для реализации фильтров Блума - bloom v3.2.0
Библиотека быстрого хранения ключей и значений на основе файлов - lotusdb v1.0.0
Инструмент для плавного перезапуска процессов в Go - tableflip
Видео
Создание клона Wordle с помощью Go и Ebiten
Пробуем дженерики Go на практике - от пользователя habr justskiv
Подкасты
▶ GenericTalks
▶ Go Time
▶ Концепция неизменяемых баз данных
Сообщества
Вопросы по языку на русскоязычном StackOverflow
Страница Go на stackoverflow
Информация о митапах
Форум в группах Google
https://t.me/vseins_tech
Eжедневный дайджест в телеграм
GolangStack