用贪吃蛇解释脏标记模式
核心思想:只重绘发生变化的部分,而不是每次全部重画。 文章用一个可交互的贪吃蛇游戏演示脏标记(dirty flag)模式,再指出同样的思路就藏在 Vue 的 computed 里。它用具体例子解释一个原本抽象的概念,再回连到熟悉的框架实现。 

pstack's Playbooks, Explained as Factorio Factories
pstack's poteto-mode picks one of 23 playbooks for every task. I built ten of them as interactive Factorio-style factories, so you can see why a bug fix, a refactoring and a hillclimb each need a diff...
只运行你的改动可能影响到的 Playwright 测试
核心做法是用基于功能的功能架构,缩短端到端测试的反馈时间。 以一个 Nuxt 项目为例,实现一种依赖感知的测试选择方式:先根据代码改动判断哪些功能受影响,再只运行对应的 Playwright 测试,而不是跑全量测试。 这套方案集成进 GitHub Actions,在 CI 中自动完成选择与执行。
我用 Codex 和 ChatGPT 制作锻炼图标的过程
作者为自己的健身 App 制作一套风格统一的锻炼图标。用 ChatGPT 生成参考图,再用 Codex 的图像生成功能批量产出配套图标,并展示了参考图与生成前后对比截图。 这是一篇个人向的一手记录,价值在于记录用 AI 工具做图标这套流程,而非提出新技术。
Vue 中的六边形架构:代码该放在哪里,以及原因
在 Vue 里应用六边形架构(端口与适配器模式),目的是让业务规则更容易测试、变更更容易被限制在局部。 文章把代码分成四层:Vue 组件、composables、应用核心、适配器。每层放什么、为什么这么放,都围绕"哪些逻辑该进核心、哪些该留在适配器"展开。
用 @shadcn/lint 在 Vue 中强制 Tailwind CSS 设计令牌
用 @shadcn/lint 检查 Vue 代码,强制遵守 Tailwind 的设计令牌规范。 它能抓出几类问题:直接写死的具体颜色值、Tailwind 任意值写法(arbitrary values),以及组件内部对设计变量的覆盖。文章给出 ESLint 的配置方式,并配了可交互的前后对比示例。
What my first Tacon taught me: give AI a better testing process and know your audience
Reflections from my first Tacon: testing talks, speaking to a QA audience, and building better AI-assisted testing workflows.
一条通过的测试应该证明什么?用 Vitest 浏览器模式做 Vue 测试
一个反例驱动:某 CSS bug 在 jsdom 测试里通过,但在真实浏览器中会挡住用户下单。这说明 jsdom 模拟环境的测试并不能证明功能可用。 因此文章主张把 Vue 测试建立在行为、可访问性和视觉回归三类层面,用 Vitest 的浏览器模式(在真实浏览器里运行)来做这些检查,比纯 jsdom 更接近用户实际看到的结果。
The Democratization of Software Development
The developer job as we knew it is ending. Handoff chains collapse into teams of generalists who own requests end to end, directing AI agents to design, code, and test. What that means for the role.
How VS Code Copilot Chat Compacts Your Conversation
A reference on conversation compaction in VS Code Copilot's agent (now in microsoft/vscode under extensions/copilot): when it triggers, the budget math, what survives, the 8-section summary format, an...
Open Knowledge Format: I Already Do This, and Now It Has a Name
Google Cloud just shipped the Open Knowledge Format: a directory of Markdown files with YAML frontmatter as portable knowledge for AI agents. I already run this in every repo. Here is why having an ac...
Clean Code Is Sexy Again: Making Your Vue Project AI-Ready
My Vue MAD 2026 talk, written up. What an agent actually is, and the three things every Vue project needs to get more out of AI: context, feedback loops, and discoverability. The twist is that none of...
The Four Types of Memory for AI Agents (and How Claude Code Implements Each)
Working, semantic, procedural, episodic. The CoALA framework splits agent memory into four kinds. Here is what each one is, and how Claude Code actually implements them on disk.
Build Your Own Eval Harness from Scratch with Bun and Claude -p
A hands-on tutorial: build a real, working eval harness for an AI agent in a single Bun file. Run the agent in a sandbox, grade it deterministically and with an LLM judge, vote across trials, and gate...
I Rebuilt Cloudflare's AI Code Review in a 250-Line Workflow
Cloudflare runs a fleet of specialized AI reviewers across tens of thousands of merge requests. I didn't have GitLab CI or OpenCode, but I had Claude Code workflows. Here's how I rebuilt the idea as o...
How I Became an International Speaker
I was too scared to publish my first blog post and ended up on stage at Vue Amsterdam. Here's the honest path from zero to international speaker, visibility first.
Claude Code Workflows: Deterministic Multi-Agent Orchestration
Workflows let you script how Claude Code fans out across dozens of subagents, then synthesizes the results. Here's how they work, the primitives, and the small example I built to understand them.
How to do AFK Coding
A pipeline for shipping a 5-point ticket while you're away from the keyboard: spec with the human in the loop, slice into vertical tickets, run a Ralph loop with TDD per slice, refactor, then let an a...
How to Write UI Components That Stay Flexible
Most components break under their second or third variant — props pile up, shells get copy-pasted. Here's how compound components (the pattern behind Reka UI and shadcn-vue) keep a Dialog flexible wit...
A Modern Quality Pipeline and Testing Strategy for Frontend Projects
A short, framework-agnostic concept of what a modern quality pipeline and testing strategy look like for any JavaScript or TypeScript frontend project.
