Go26 phases · 104 topics
Progress
0 / 104
Foundations
Goroutine Scheduling (M:N)
Channel Types & Directions
Select Statement & Multiplexing
Core Concepts
Fan-Out / Fan-In Patterns
Context Package & Cancellation
sync.Pool & Object Reuse
Intermediate Skills
Worker Pool (Pipeline)
errgroup for Error Handling
Interface Satisfaction (Duck Typing)
Advanced Topics
Empty Interface (any) & Type Assertions
Type Switches
Interface Embedding
Expert Level
Generics in Go 1.18+
Type Constraints & ~ Operator
Constraints Package (comparable, ordered)
Mastery
Go Memory Model (happens-before)
Stack vs Heap Allocation (Escape Analysis)
GC: Non-Generational Concurrent Mark-Sweep
Ecosystem
GC Tuning (GOGC, GOMEMLIMIT)
Memory Profiling (pprof)
Compiler Alloc Optimizations
Architecture
Goroutine Stack Growth
reflect.Type & reflect.Value
Modifying Values via Reflection
Optimization
Reflective Struct Tag Parsing
Creating Functions at Runtime
Deep Equal Implementation
Deployment
Performance Cost of Reflection
Flect Library for Reflection
Table-Driven Tests
Phase 11
Subtests & Parallel Execution
Test Fixtures (TestMain)
Fuzzing (Go 1.18+)
Phase 12
Benchmarking & Profiling
Mocking Interfaces with Testify
Integration Testing with httptest
Phase 13
Mutex vs RWMutex
Atomic Operations (sync/atomic)
Once for Lazy Initialization
Phase 14
Cond for Event Signaling
Semaphore Pattern (Weighted)
Pipeline & Chain Patterns
Phase 15
Parallel MapReduce in Go
CPU & Memory Profiling (pprof)
Tracing with go tool trace
Phase 16
Escape Analysis & Allocation Reduction
Compiler Optimizations (inlining, bounds check elimination)
Benchmark Best Practices (benchmem)
Phase 17
Weapon of Mass Destruction: sync.Pool Explained
Profiling gRPC & HTTP Services
Module Path & Versioning
Phase 18
Go Sum & Checksum Database
Workspace Mode (Go 1.18+)
Replacing Dependencies (replace directive)
Phase 19
Vendor Mode
Minimal Version Selection (MVS)
Retract & Deprecation Directives
Phase 20
unsafe.Pointer & ArbitraryType
Sizeof, Alignof, Offsetof
Pointer Arithmetic
Phase 21
String to Byte Slice Conversion (no copy)
Slice Header Manipulation
unsafe.Slice & unsafe.String (Go 1.20+)
Phase 22
Safety Rules for unsafe.Pointer
net/http Handler Internals
HTTP Client Connection Pooling
Phase 23
gRPC Streams vs Unary
WebSocket (gorilla/websocket)
TCP Server with net.Dialer
Phase 24
UDP & Multicast in Go
TLS Certificate Pinning
JSON Encoding Tags & MarshalJSON
Phase 25
Custom Marshaler/Unmarshaler
Protocol Buffers (protobuf)
MessagePack (msgpack)
Phase 26
Gob Encoding
Binary Encoding (binary package)
Schema Evolution & Compatibility
Go RoadmapGo
Space mark complete · Esc close · Drag pan · Wheel zoom