Api-Design
Go's Value Philosophy: Part 3 - Zero Values: Go's Valid-by-Default Philosophy
reading time: 15 minutes
In Python, undeclared variables don’t exist. In Java, local variables can’t be used before assignment. In Go, declaration creates a valid value. There is no uninitialized state - every value works from the moment it’s declared.
Go Interfaces: The Type System Feature You Implement By Accident
reading time: 9 minutes
You write a struct with a Write method. Three months later, you discover it implements io.Writer. You never declared this. How did it happen? Exploring Go’s implicit interfaces and the power of accidental implementation.
Rust Error Handling: thiserror, anyhow, and error-envelope
reading time: 20 minutes
Three Rust error handling crates that seem to overlap but fill distinct roles. Learn when to use thiserror for typed errors, anyhow for application code, and error-envelope for HTTP boundaries.
You Don't Know JSON: Part 1 - Origins, Evolution, and the Cracks in the Foundation
reading time: 18 minutes
Everyone thinks they know JSON. But do you know why it was created, what problems it solved, and more importantly - what problems it created? Part 1 explores JSON’s origins, its triumph over XML, and the fundamental weaknesses that spawned an entire ecosystem of extensions.
You Don't Know JSON: Part 2 - JSON Schema and the Art of Validation
reading time: 21 minutes
JSON lacks types and validation - any structure parses successfully. JSON Schema solves this by adding a validation layer without changing JSON itself. Learn how to define schemas, validate at runtime, generate code, and build type-safe APIs.
You Don't Know JSON: Part 5 - JSON-RPC: When REST Isn't Enough
reading time: 35 minutes
REST is great for resources, but what about actions? JSON-RPC provides a simple, transport-agnostic protocol for calling remote functions. Learn the spec, implementation patterns, and why major projects like Ethereum and VS Code chose JSON-RPC over REST.
The Complete Guide to API Communication Patterns: REST, GraphQL, WebSocket, gRPC, and More
reading time: 24 minutes
Master API communication patterns: REST, GraphQL, WebSocket, gRPC, webhooks, message queues, and more. Complete guide with diagrams, code examples, and decision frameworks for choosing the right pattern.
Understanding Protocol Buffers: Part 1 - Introduction and Core Concepts
reading time: 12 minutes
Protocol Buffers (protobuf) is Google’s binary serialization format - smaller, faster, and type-safe compared to JSON. Learn what protobuf is, how it works, and when to use it for APIs and microservices.
HTTP Error Handling in Go: Chi, Gin, and Echo
reading time: 5 minutes
Stop returning errors as plain text. Learn how to implement consistent, structured HTTP error responses in Go with support for Chi router, Gin framework, and Echo framework. Includes field-level validation and trace IDs.