Thank Go!

Все о чистом коде на Go.

Go-фича: Безопасная проверка ошибок

errors.AsType — современная альтернатива errors.As.

Курс: Знакомство с Go

Для всех, кто уверенно программирует на другом языке и хочет попробовать Go.

Go-фича: Сравнение IP-подсетей

Как это делают IANA и Python.

Go-фича: Хешеры

Стандартный подход к хешированию и проверке на равенство в коллекциях.

Go-фича: new(expr)

Использовать new для выражений.

Выразительные тесты без testify/assert

Equal, Err и True — их вполне достаточно.

Интерактивный тур по Go 1.25

Фейковые часы, новый GC, бортовой регистратор и многое другое.

Метод-значение

Функция с приколоченным к ней получателeм.

Скукоживание карт в Go

Карта ни за что не отдаст вам память.

Тур по Go 1.24

Слабые указатели, швейцарские таблицы, быстрые карты, удобные бенчмарки и многое другое.

cmp.Or

Редкий пример сахарка в Go.

README для начинающих разработчиков

На редкость толковая книга.

Ранний возврат

Он лучше лесенки if-ов.

Большая крыса Go

Это не шиза, речь о big.Rat.

Статический HTTP-сервер

На Go вместо Python.

Канал завершения

Сигнализируем о завершении горутины.

Тур по Go 1.23

Итераторы, unique и таймеры.

Пустышки в Go

Разрешены, но не особо полезны.

Курс «Многозадачность в Go»

Осваиваем многозадачное программирование на практике.

Полносрезное выражение

Меняем емкость при нарезке.

Пустой срез vs. nil-срез

Чем отличаются и как с ними работать.

Запускаем 100К горутин

Сколько можно запустить горутин и от чего это зависит.

Приемчики форматирования в Go

Поля структуры, тип значения, индекс аргумента.

Go Generics

Урок по дженерикам в Go.

nil-получатель метода

Метод можно вызвать на пустом указателе.

Интерфейсы и nil

Как работают пустые (и не очень) интерфейсы в Go.

Замыкание = гибкость

Универсальный инструмент для многих ситуаций.

Метод на значении / указателе

Когда и что можно вызвать.

Пишем менеджер пакетов

Так, чтобы не потратить на это целый год.

Встроенные функции в Go 1.21

Выбираем минимальное/максимальное значение и очищаем контейнеры.

Избранные фичи Go 1.20

Множественные ошибки, причина отмены контекста, новые форматы дат и прочее.

Композиция атомиков в Go

Разбираем атомарность и предсказуемость операций в многопоточной среде.

Идемпотентный Close в Go

Как сделать освобождение ресурсов безопасным.

Красавица и чудовище. Обработка ошибок в Go

Ошибки в го особенно уродливы, но это неспроста.