#Programming Language
156 posts
Go Advanced #2 Memory Model and the sync Package
Mutex, RWMutex, WaitGroup, Once, atomic — shared-memory synchronization tools beyond channels. Which to use when.
Go Advanced #1 Concurrency Patterns — fan-out, fan-in, pipeline
Standard concurrency patterns assembled from goroutines and channels — pipeline, fan-out/fan-in, and semaphores.
Go Intermediate #7 Standard Library Tour
Frequently used parts of Go's standard library — io, fmt, strings, time, sort, encoding/json — in one sweep.
Go Intermediate #6 Testing — testing Package and Table-Driven
Writing unit tests and benchmarks with Go's standard testing package, and the table-driven test pattern that's standard in Go code.
Go Intermediate #5 context.Context in Depth
Go's standard tool for cancellation, timeouts, and request-scoped values. Why context becomes the skeleton of concurrent code.
Go Intermediate #4 select and Timeouts
The select statement for handling multiple channels at once, plus practical patterns like timeout, cancellation, and non-blocking communication.
Go Intermediate #3 Goroutines and Channels Intro
Go's biggest strength — lightweight concurrency. Starting goroutines and communicating via channels, plus the gotchas you'll meet.
Go Intermediate #2 Error-Handling Patterns
Error wrapping (%w), errors.Is and errors.As, custom error types, and where panic fits.
Go Intermediate #1 Interfaces — the Meaning of Implicit Implementation
Go interfaces' headline feature — implicit implementation, the small-interface guide, and the empty interface with type assertions and type switch.
Go Basics #7 Packages and Modules (go mod)
Go's code organization — splitting by package, importing external packages, and everything about managing dependencies with go mod.
Go Basics #6 Structs and Methods
Defining user types with struct and attaching methods, value vs pointer receivers, and the embedding pattern.
Go Basics #5 Collections — array, slice, map
Go's three collections — fixed-length array, growable slice, key-value map. How they work and the gotchas you'll meet.