Cilium from 0 to 0.1

Cilium and eBPF from scratch: how Linux processes packets, how Cilium replaces iptables with eBPF programs, XDP/TC hook points, BPF maps, tail calls, and hands-on troubleshooting with bpftool and cilium-dbg.

Kubernetes Gateway API

An introduction to the Kubernetes Gateway API (KGA), its evolution from Ingress, and its key features like traffic management, role-oriented design, and extensibility.

ExitCode: 128 with No Error Message

Troubleshooting a mysterious Exit Code 128 in Drone CI caused by Pod image conflicts between the runner and another service modifying image addresses.

What Happens Behind kubectl run

Unveiling the internal process of 'kubectl run', from API Server validation, authentication, admission control to Controller and Scheduler execution.

kubeDNS and CoreDNS

KubeDNS vs CoreDNS: how Kubernetes DNS resolution actually works — architecture comparison, resolv.conf ndots behavior, dnsmasq, plugin chain, and when to switch from KubeDNS to CoreDNS.

Golang sync.Map Source Code Analysis

Analyzing Golang's sync.Map source code to understand why concurrent writes to native maps panic and how sync.Map ensures thread safety.

How to Implement a Rate Limiter with Redis

Implementing rate limiters with Redis from scratch — fixed window counter, sliding window log, sliding window counter, token bucket, and leaky bucket algorithms with code examples and Redis INCR/EXPIRE patterns.

How to Read Go's http.Request Body Multiple Times

Why Go's http.Request body can only be read once and how to fix it — deep dive into io.ReadCloser, request body consumption, and a reusable ReadCloser wrapper for retrying or logging HTTP requests.