Programming
Golang for Beginners: The Complete 2026 Guide
A complete guide to Golang for beginner developers. From installation to your first production-ready application. Syntax, data types, concurrency, error handling — everything you need to get started.
Testing in Go: Unit Tests, Benchmarks, Mocks
A complete guide to testing in Go. Unit tests, table-driven tests, subtests, performance benchmarks, mocks and interfaces. Practical production examples, testing patterns, coverage, and best practices.
Concurrency in Go: Channels vs Sync — When to Use Which
A complete guide to concurrency in Go: channels vs the sync package. We cover when to use channels and when to use a mutex. Worker pools, fan-out/fan-in, semaphore patterns. Performance benchmarks, race conditions and how to avoid them. Practical examples from production.
UUID Versions Explained: Differences and When to Use Each One
A complete guide to UUID: we cover every version (v1, v3, v4, v5, v6, v7, v8), their differences and quirks. Learn which UUID version to pick for APIs, databases, and distributed systems. Generation examples in Go, Python, and JavaScript, with guidance on when to use timestamp-based, random, or name-based UUIDs.
gRPC in Go: Implementation and Sharing Proto Across Microservices
How to implement gRPC in a Go project: creating proto files, generating code, setting up the server and client. We break down ways to share protobufs across microservices using git submodules, a separate repository, and buf registry. Practical examples from real experience.
How to Write Shitty Code in Go: Anti-Patterns and Examples
A breakdown of Go anti-patterns using real production examples. Blocking channels in HTTP handlers, background jobs with race conditions, deadlocks, broken encapsulation. A practical guide to writing bad Go code.





