基于 2026 年 5 月真实数据的深度分析:AI 浪潮下,软件工程师面临的真实处境与新生产关系的雏形。
Writing
11 posts on DevOps, SRE, and cloud infrastructure.
让 AI 评价自己听起来像一次自恋练习,结果它给了一份相当不留情面的反馈,顺手还推错了我的 MBTI——但推错的过程比类型本身更值得记。
Asking an AI to assess me: an unsparing readout, plus a wrong MBTI guess that turned out more useful than the type itself.
Two unrelated bugs from one debugging day on a Next.js + Cloudflare Workers app: an SSE hang from a `pull` ReadableStream, and a `null/undefined` validation drift.
How to set up the AnuPpuccin theme, Style Settings, extended color schemes, and the Claudian AI plugin in Obsidian.
Three bugs I hit after deploying swill.fun to Cloudflare Workers — next-mdx-remote crashing at runtime, params becoming a Promise, and build artifacts polluting git history.
End-to-end record of building and deploying swill.fun — covering Next.js 16 + Cloudflare Workers deployment, SEO configuration, and gotchas encountered along the way.
In Istio, headers added by EnvoyFilter do not affect VirtualService matches: Envoy resolves routes before HTTP filters run. Use ClearRouteCache or change the design.
topologySpreadConstraints with DoNotSchedule can still put every pod in one AZ on EKS: default minDomains is 1, so skew stays zero until you set minDomains or use zone podAntiAffinity.
ArgoCD v3 apps stuck in refresh: strategicpatch panics on nested arrays in podAnnotations. Server-Side Diff workaround and permanent Helm upgrade fix.
ServiceAttachment, Strimzi listeners, and why proxyProtocol must stay false for Kafka over PSC — SASL and proxy bytes on the wire.