推文
@GenAI_is_real · 2026-10-14 12:19
Back in 2023, @gneubig asked me to read this engineering blog post from 2021 by Steve Hicks about writing small, focused pull requests. Reading it again in 2026, I think these principles are more valuable than ever. 😂 The article makes a distinction that gets lost surprisingly often in today's AI-generated code: small is not the same as focused. Five unrelated changes can make a tiny but terrible PR. One enormous feature can be perfectly focused and still be almost impossible to review properly. Good engineering is about finding a unit of change that another engineer can actually understand, verify, and take responsibility for. The article offers some very practical strategies: build a working skeleton before filling in the details, separate infrastructure changes from feature implementations, isolate risky design decisions from routine code, and integrate incrementally rather than submitting everything in one massive PR. I think AI coding has made these lessons even more important. We have dramatically reduced the cost of generating code, but we haven't reduced the cost of understanding it nearly as much. An agent can produce thousands of lines of plausible code in an afternoon. That doesn't mean a human reviewer can suddenly reason about thousands of lines of changes with the same confidence. And when a giant AI-generated PR mixes refactoring, architectural decisions, performance optimizations, and new functionality, even a passing test suite may not tell us which assumptions deserve closer inspection. We end up transferring the cognitive cost of development from the author to the reviewers and future maintainers. I love coding agents, and I have no desire to return to writing every line by hand. But I increasingly think the next challenge in AI-assisted software engineering is not generating more code. It is organizing that code into changes that humans can meaningfully review, verify, and maintain. Small, focused PRs are not an outdated engineering ritual. They are a way to keep increasing development velocity from turning into review debt. Looking back, a surprising amount of my engineering education actually started with Graham. I learned much more than research from him. He was probably the person who first taught me how to think seriously about software engineering. Thanks for the early lessons, @gneubig @vijaytarian @tongshuangwu ! https://artsy.github.io/blog/2021/03/09/strategies-for-small-focused-pull-requests/
曝光 108 · 评论 0 · 点赞 1 · 书签 0