Vector Databases in 2026: Do You Need One, or Is pgvector Enough?
An engineer's guide to vector databases in 2026: pgvector 0.8.7, Pinecone, Qdrant, Milvus 3.0, Weaviate, turbopuffer, Amazon S3 Vectors and Elasticsearch compared on price and architecture, why the benchmarks mislead, and when Postgres is enough.
13 minOct 20, 2026Serverless in 2026: Lambda vs Cloud Run vs Workers, and When It Costs More
Serverless in 2026 explained: AWS Lambda Managed Instances, durable functions, SnapStart and the new Web Functions, Cloud Run GPUs and worker pools, Azure Container Apps, Cloudflare Containers and Vercel Fluid compute, with a list-price comparison and the workloads where serverless costs more.
14 minOct 20, 2026How to Reduce Docker Image Size: Multi-Stage Builds Guide (2026)
Shrink Docker images with multi-stage builds, distroless or slim bases, .dockerignore, layer ordering and BuildKit cache mounts. Measured Go, Node, Python and Java examples: 343 MB to 3.4 MB, 423 MB to 56 MB, plus a troubleshooting table.
12 minOct 20, 2026How to Fix Prometheus High Cardinality: Find and Drop Series (2026)
Step-by-step guide to finding and fixing high cardinality in Prometheus 3.x: the TSDB status page and API, topk count by __name__, promtool tsdb analyze, metric_relabel_configs drop rules, native histograms, recording rules, sample_limit guardrails and Prometheus OOM fixes.
13 minOct 20, 2026How to Tune pgvector Performance: HNSW, ef_search and Quantization (2026)
A step-by-step pgvector tuning guide for 0.8.x: HNSW vs IVFFlat, m, ef_construction and ef_search, maintenance_work_mem for fast builds, iterative scans for filtered queries, halfvec and binary quantization, EXPLAIN, and a troubleshooting table, with real timings.
14 minOct 20, 2026Running LLMs Locally in 2026: Ollama vs llama.cpp vs LM Studio vs MLX
A practical 2026 guide to running LLMs locally: Ollama 0.40, llama.cpp 0.7, LM Studio 0.4, MLX and vLLM compared, which models fit in 8, 16, 32 and 64GB, how Q4_K_M quantization works, the bandwidth maths behind tokens per second, licences and privacy.
12 minOct 20, 2026How to Troubleshoot Linux Performance in 60 Seconds (2026 Checklist)
A step-by-step Linux performance troubleshooting guide for 2026: Brendan Gregg's 60-second checklist (uptime, dmesg, vmstat, mpstat, pidstat, iostat, free, sar, top), how to read each output, PSI, the USE method, then bpftrace 0.27 and BCC one-liners.
13 minOct 20, 2026Kubernetes Requests and Limits Explained: 8% CPU Used, Resize GA in 1.35
Kubernetes requests and limits in 2026: how QoS classes and oom_score_adj decide who dies, why CPU limits cause CFS throttling, what cgroup v2 changed for OOM kills, in-place resize GA in 1.35, VPA InPlaceOrRecreate, and why clusters still use 8% of their CPU.
13 minOct 20, 2026Fix Kubernetes OOMKilled and Exit Code 137: Step-by-Step Guide (2026)
How to fix OOMKilled and exit code 137 in Kubernetes: confirm the kill with lastState, tell a cgroup limit OOM from node OOM and eviction, read working set vs RSS, size JVM, Node.js, Go and Python memory to the limit, find leaks, and right-size with VPA and in-place resize.
12 minOct 20, 2026How to Speed Up GitHub Actions CI: Caching, Sharding, Docker (2026)
A step-by-step guide to faster GitHub Actions in 2026: measure job timings, cancel stale runs, use setup-node, setup-python and setup-go caching, actions/cache v6, buildx type=gha layer caching, matrix test sharding and larger runners, plus a cache-miss troubleshooting table.
13 minOct 20, 2026eBPF Explained (2026): Verifier, CO-RE, Cilium, Tetragon and sched_ext
What eBPF is in 2026 and how it works: the verifier and its 1 million instruction limit, CO-RE and BTF, Cilium 1.20 networking, Tetragon 1.7 enforcement, OBI and the OTel profiler, eBPF for Windows, sched_ext since Linux 6.12, and the real limitations.
11 minOct 20, 2026Distributed Tracing Explained: traceparent, Sampling and Jaeger v2 (2026)
Distributed tracing in 2026, explained by an infrastructure engineer: spans, W3C traceparent propagation, head vs tail sampling in the OpenTelemetry Collector, Jaeger v2 after v1's end of life, Grafana Tempo 3, Zipkin's status, trace-to-logs correlation and what traces cost.
12 minOct 20, 2026Continuous Profiling in 2026: OTel Profiles Alpha, eBPF Agents, Real Costs
Continuous profiling in 2026 explained: OpenTelemetry Profiles reached public alpha in March, the Elastic-donated eBPF profiler now ships as a Collector, Pyroscope 2.0 and Parca compared, the real overhead numbers, and how profiles turn into cloud savings.
13 minOct 20, 2026How to Reduce AWS Lambda Cold Starts: Init Duration to SnapStart (2026)
Step-by-step guide to measuring and reducing AWS Lambda cold starts in 2026: read Init Duration, price the August 2025 INIT billing change, pick runtime and arm64, bundle and lazy-load, tune memory, enable SnapStart and provisioned concurrency, and fix common errors.
14 minSep 9, 2026On-Device Inference in 2026: 160 Tokens a Second on a Laptop, a 2-Bit Model in Every iPhone, and the Bandwidth Arithmetic That Decides What Stays Local
What actually runs on the device now: Apple's 3B model trained at 2 bits and the WWDC26 framework that lets any model plug in, Gemini Nano inside AICore, Windows ML and the quiet replacement of Phi Silica, the NPU TOPS numbers and why they are the wrong metric, the small-model field from Gemma 4 E2B to Qwen3.5-2B to LFM2.5 with licences, measured decode speeds from Google's own tables and an independent phone benchmark, the runtimes (llama.cpp with multi-token prediction, LiteRT-LM, ExecuTorch 1.0, MLX), the memory-bandwidth arithmetic that predicts all of it, and the model-extraction attacks nobody has fixed. With commands to run one today.
14 min