Golang
📄️ Context
The context package in Go provides a way to manage request-scoped data, deadlines, and cancellation signals across API boundaries and between processes.
📄️ Generics
Generics in Go (introduced in Go 1.18) allow you to define functions or types that can operate on any data type while maintaining strong type-checking. This eliminates the need for boilerplate code or using the interface{} type, which lacks compile-time safety.
📄️ Goroutines and Channels
Goroutines
📄️ Goroutine: Concurrency vs Parallelism
Concurrency: Goroutines allow multiple tasks to progress independently. They don't necessarily run at the same time, but they give the appearance of doing so by sharing the same thread and switching between tasks.
📄️ Goroutine: Performance & Tradeoffs
Adding more goroutines won't always lead to improved performance because of several practical limits and inefficiencies in concurrent systems. These factors include contention, overhead, and resource constraints.
📄️ JSON: omitzero
In Go version 1.24 that will be release around February 2025 there is a feature that very useful in my opinion. That is new json tag option omitzero.