InertiaRSS Track and read blogs, news, and tech you care about
Read Original Open in InertiaRSS

Recommended Feeds

WordPress大学
WordPress大学
M
MIT News - Artificial intelligence
小众软件
小众软件
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
T
The Blog of Author Tim Ferriss
Engineering at Meta
Engineering at Meta
Jina AI
Jina AI
Last Week in AI
Last Week in AI
I
InfoQ
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
人人都是产品经理
人人都是产品经理
MongoDB | Blog
MongoDB | Blog
The Cloudflare Blog
月光博客
月光博客
爱范儿
爱范儿
D
Docker
罗磊的独立博客
博客园 - 叶小钗
博客园 - 司徒正美

掘金

Win 安装Claude Code FastAPI 的 CORSMiddleware 跨域中间件 Java 自研 ReAct Agent 半年后,我用 LangGraph 验证了这些设计取舍 🚀AI编程工作流终极形态:GitNexus!零Token消耗实现代码知识图谱化!让Claude Code和Codex拥有上帝视角彻底告别盲目改代码,复杂项目重 LeetCode 72. 编辑距离:动态规划经典题解 被The Graph的GraphQL查询坑了三天,我用一个真实DeFi项目把链上数据索引彻底搞懂了 (AI) 编写简单 AI 助手 (ds-agent) 别再让 pnpm 跟着 nvm 跑了!独立安装终极指南 Claude Code 为什么这么顺?Anthropic 最新复盘:真正撑住它的不是模型,而是缓存 从 /simplify 指令深挖 Claude Code 多 Agent 协同机制 Function-Calling与工具使用 新手上路(六):Claude code装上ECC全家桶:38 个子代理、156 个技能、生产级 Hooks 与 Rules 体系 我在 Claude、Kimi、opencode 三个 AI 之间搭了一条自动协作管道 【技能篇】OpenClaw Skill 详解:给 AI 装上"专业外挂" wagmi v2 多链钱包切换:一个 Uniswap 仿盘项目让我踩了三天坑 两周浅学 RAG 我把 Python re 模块比喻成摸金手套 新手上路(三):Claude Code Skills 装了一堆没用?20+ 个 Skill 横向对比 + 三套组合方案,按需抄 K2.6、DeepSeek V4、GPT-5.5 都来了,组合拳打起来 Claude Code 进阶之路:从记忆系统到子代理编排 [java] 编译之后的记录类(Record Classes)长什么样子(上) 国产大模型能力大比拼,社区有话说 我研读了 500 个 Spring Boot 生产级代码库,90% 都犯了这 7 个致命错误 JAVA重点难点 转发-中央网信办部署开展“清朗·整治AI应用乱象”专项行动 合同同步逻辑 【合并已排序数组的三种实现策略,哪一种更可取?】 30天减20斤挑战:少一斤发100红包(2) 我竟然被JavaScript的隐式类型转换坑了三天! 二十五.Electron 初体验与进阶 本地到生产,解决 AI 全栈最后一公里——构建&部署&运维 程序员创业半年:顺的事、不顺的事,和我一直没想清楚的事 UI组件库elementplus 像使用 Redis 一样操作 LocalStorage 向量检索的流程是怎样的?Embedding 和 Rerank 各自的作用? LangChain DeepAgents 速通指南(七)—— DeepAgents使用Agent Skill 为什么越来越多的大厂抛弃MCP,转向CLI? 【节点】[SquareRoot节点]原理解析与实际应用 juejin.cn juejin.cn 从 “存得下” 到 “算得快”:工业物联网需要新一代时序数据平台越来越多工业用户开始意识到一个问题:**数据是存下来了, - 掘金 放弃 Claude 订阅?我用 8 年前的服务器,强跑 Google 最强开源模型 Gemma 4 真实测评! Python开发者狂喜!200+课时FastAPI全栈实战合集,10大模块持续更新中🔥 从 Claw-Code 看 AI 驱动的大型项目开发:2 人 + 10 个自治 Agent 如何产出 48K 行 Rust 代码 秒级创建实例,火山引擎 Milvus Serverless 让 AI Agent 开发更快更省火山引擎MilvusSer MediaPlayer 播放器架构:NuPlayer 的 Source/Decoder/Renderer 三驾马车 juejin.cn juejin.cn juejin.cn juejin.cn
After promoting AI to write code for a year, Code Review has become a new excuse for overtime.
kyriewen · 2026-05-27 · via 掘金

Last year, the team started using AI programming tools, and everyone felt that coding had become faster. But after a year, I noticed an odd phenomenon: although coding time had indeed decreased, Code Review time had been increasing. Previously, reviewing a PR involved scanning the logic and raising two questions, and it was done. Now, for every change, I have to repeatedly confirm: was this part written by AI or by a person? Were the boundary conditions handled? Are there hidden performance issues? By the end of the review, it was more exhausting than rewriting it myself.

I. AI coding is fast, but reviewing is slow

At the beginning of this year, I took over the team's core project. Several colleagues in the team used Cursor and Copilot, and the output was indeed high. But when it was my turn to review, I always felt something was off.

For example, a colleague submitted a functional module, and the code ran without issues, but when I reviewed it line by line, I found: three useEffect were hung in one component, with two of them overlapping in functionality. The author said he didn't notice it and that it was automatically completed by AI. Such issues became the norm: AI-generated code often ran, but it was structurally disorganized, logically repetitive, and lacked boundary checks.

Code written by humans in the past, you can feel the author's thought process. Code written by AI is like a big mess, it looks like it has everything, but it's just uncomfortable. During code review, you can't just check if the logic is correct, you also have to help the author remove redundancy, add missing parts, and organize the structure. This whole process can double the time spent.

II. Common "ailments" in AI-generated code

I've summarized several types of AI traces that are often encountered during code review:

1. Logic is correct, but boundaries are missing

AI is good at getting the main flow working, but it doesn't usually handle issues like null pointers, timeouts, or concurrency proactively. For example, for a query interface, AI might write data.list.map(...), but it won't check if data is null. During review, you need to help add data?.list?.map or if (!data) return null.

2. Over-engineering, complicating simple problems

Sometimes AI can make something very simple seem particularly "high-end." For example, adding debouncing, it gives you a complete custom Hook, which usesuseRef.useCallback,useEffect, running for four or fifty lines. But in fact, only one is neededdebounceWhen reviewing this kind of code, you need to first understand its implementation before judging if it's overkill.

3. Comments and naming like "Machine Translation"

Variable names generated by AI are oftendata.items.configIt's hard to understand the specific meaning. Function comments are either missing or are vague like "get data." During review, it's necessary to help change the naming to be meaningful or add necessary comments, otherwise, the next person won't understand.

III. My Personal Strategy: How to Make Reviews Less Painful

After about half a year, I've figured out a few somewhat effective methods:

  • Let AI Review AI: Before submitting a PR, ask the author to have the code reviewed by AI (using a different model) and make a round of changes based on the suggestions.
  • Differentiate Treatment: Utility classes, unit tests, and documentation comments can be safely written by AI; core business logic is recommended to be hand-written or heavily modified.
  • Establish Small Guidelines: For example, "useEffect must have a cleanup function," "API calls must have loading and error states." AI may not always follow them, but they can be quickly referenced during reviews.

These methods cannot completely eliminate the problem, but at least they can bring the review time back to an acceptable range.

IV. Reflection

I have a contradictory attitude towards AI programming now. On one hand, it确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实确实帮我省了不少重复劳动; on the other hand, it又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又又把负担转移到了review环节。以前一个人写代码,大家一起审;现在一个人写AI代码,另一个人替他审漏洞。

This is not the fault of AI, nor is it the fault of the tool; it's that we haven't learned how to collaborate with AI yet. Maybe in the future, there will be better review processes, or AI will be able to review itself. But as of now, AI hasn't reduced my overtime work; it's just shifted the content of my overtime from "writing" to "reviewing"

Five, finally

If you're also experiencing similar feelings, give a thumbs-up to let me know I'm not alone。Discuss in the comments: Has your team's review process slowed down due to AI code?