▸ Blog · Page 4
More from the trenches.
Older posts. Same hot takes.
-
AIAI coding is like an addiction (in the best way)
A level-by-level map of the AI coding workflow: gateway prompts, codebase RAG, then multi-agent orchestration over MCP, and why manual coding now drags.
Read post →
-
AIStop reading every line of AI-generated code
Line-by-line review breaks on agent-sized diffs. How I moved to specs, property tests, and a multi-agent review pipeline, and the 3% I still read.
Read post →
-
AIVibe coding vs agentic engineering: which ships?
Vibe coding is for prototypes, agentic engineering is for production. The daily split I use to ship AI-written code without hidden technical debt.
Read post →
-
ArchitectureModular monoliths first: why microservices can wait
Distributed systems are the priciest fix for a problem you don't have. How to build a modular monolith, own data per module, and know when to split.
Read post →
-
ArchitectureStateless vs stateful apps: the architecture split
Stateful servers remember; stateless servers forget by design. Why horizontal scaling, sticky sessions, and shared Redis decide the architecture split.
Read post →
-
DevOpsDocker vs Kubernetes: containers vs orchestration
Docker packages your app into a portable box; Kubernetes manages a fleet of them across a cluster. How they differ and when you need orchestration.
Read post →
-
DevOpsForward proxy vs reverse proxy: the technical guide
A forward proxy hides the client; a reverse proxy hides the server. How traffic direction shapes your load balancing, SSL termination, and security design.
Read post →
-
DevOpsDNS vs service discovery
DNS was built for servers that live for years; microservices live for minutes. Why service discovery beats stale DNS records for high-churn systems.
Read post →
-
DevOpsBandwidth vs throughput: a wider pipe won't fix lag
Bandwidth is capacity, throughput is delivery. Why a wider pipe never fixes a throughput bottleneck, and the latency and protocol levers that do.
Read post →