商业产业 Hacker News Agent 2026-10-02T15:19 正文 ok 1389 words

Agentic Coding 的四骑士

英文标题:🔶 The Four Horsemen of Agentic Coding

作者认为,Agentic Coding 虽然极具实用价值,却正在对代码质量、工程师能力与团队关系产生深层负面影响。文中归纳了四项问题:LLM 生成代码具有令人疏离的“slop”风格,工程师与代码成果日益脱节,AI 加速既有技能退化并削弱学习动力,以及 Agent 减少团队成员之间的交流和技能展示空间。作者指出,当前高效使用 LLM 的资深工程师群体可能只是历史性的过渡现象,而 AI 时代如何培养新人仍无明确答案。最终,文章警告称,行业或许正以好奇心、手艺精神和社会连接为代价,换取 AI 带来的效率收益。
打开原文相关 3 · 机会 0
media1.1 KB media108.2 KB media963 B media1.6 KB media1.1 KB media55.8 KB media487.9 KB

中文

Agentic Coding 无疑非常有用。但它也非常糟糕。或者更准确地说,它正在对我们、我们的技艺,以及我们彼此之间的关系造成一些可怕的影响。我能切身感受到这一点,很多其他人也一样。但每当我试图解释究竟哪里出了问题时,我都会发现自己在拼命挥手,话题从一点跳到另一点。你说什么,哪里有问题?问题实在太多了!

好吧,下面列个清单。4 个目前看不到解决方案的问题——或者如我所称,它们是 Agentic Coding 的四骑士。

LLM 生成的代码带有强烈的异味,使代码库对人类产生排斥感。

LLM 不是人类,它们编写代码的方式……不同。未必严格来说更差,但肯定不同。我们很快给它起了个名字——slop——而这个词无疑带有贬义。

对于普通散文,人类似乎正逐渐形成一种共识:AI 文本往好了说平淡无味,往坏了说则是一种冒犯。对于代码,由于代码具有工具属性,争论远未结束。很多人抓住这样一个观点不放:很快我们根本不必阅读代码。“记住,这是模型表现最差的时候,”他们说。

然而,最新一代模型令人意外地乏善可陈。它们当然很聪明,但似乎正朝着“难以雇用的聪明”而非“能启发人的聪明”发展。Claude 如今出了名地只会用词语沙拉沟通,而 Astra 则采用一种古怪的竞赛式代码高尔夫风格,普通人根本无法理解。事实证明,粗糙随意是 LLM 输出中一种顽固得惊人的属性;到现在,它看起来更像是标志性招式,而非成长阵痛。

这对于那些仍想在代码库中摸索、并保持一定熟悉度的人来说是非常坏的消息,尤其是在团队环境中。一旦允许使用 Agent,它们很快就会接管一切。过去是人类共享的空间,每位团队成员都作出贡献;如今却变成 AI 荒地,人们不愿在其中花时间。

但如果我们根本不必待在这些 slop 洞窟里呢?既然你可以舒舒服服地坐在聊天界面前,作为设计大师统领一群忠诚 Agent,又何必把时间花在那里?

工程师与代码逐渐疏离,因而也更不在乎。

软件工程曾经是一个相当……讲究身体感的工作领域。或许不像木工那样明显,但我们也热爱自己的工具,无论是真实的还是虚拟的。文本编辑器拥有近似邪教般的追随者。流行配色主题和编程字体都有各自的拥趸。分体键盘一度非常火,键盘声音测试视频也从不缺少。

我们曾直接亲手编写代码。由此对劳动成果产生强烈的所有权感,是再自然不过的事情。当然,这种感受会因具体情境而不同;但即使你只是把一组积木拼装起来,也总会感受到一些东西。IKEA 显然深谙此道!

Agentic Coding 极大拉远了工程师与其工作成果之间的距离。这个鸿沟大到我们所有带有身体感的工具都无法跨越。我们不再直接体验代码:只需派出一个带着模糊指令的 Agent,然后略读它的报告。天哪,甚至连打字都是可选的——你开车时也可以对着手机胡扯。

所以,我们自然会变得更加疏离。我们更不在乎了。我们与自己的技艺失去联系。而这一切都显而易见。它体现在那些未经充分思考、也没有人提出异议的功能上;体现在没有解决根本原因的创可贴式 bug 修复上;也体现在一天结束时我们感到多么不满足。软件若要带来愉悦,就必须注入创造者的爱。

Elsie Driggs,《Pittsburgh》

AI 会侵蚀既有技能、阻碍学习,并且无法提供任何有意义的技能进阶路径。

我认为,到现在再说“技能退化是真实存在的”,应该已经不算有争议了。大量人报告称,长时间使用 AI 后,自己的脑子似乎变钝了。这很合理:生活中的许多事都是“用进废退”,职业技能也不例外。是的,你总会记得如何骑自行车,而我自己宁愿死也不会忘记如何退出 Vim,但除此之外,什么技能都可能退化。

我此前曾指出,我们正处于一种历史性的反常状态。我们拥有一批资深工程师,他们多年来一直以困难的方式完成工作,现在能够以恰到好处的方式驾驭 LLM,从而获得惊人的生产力。但除非我们弄清楚 AI 时代的学习究竟如何运作,否则这批人才供给维持不了多久。

一种常见建议是:如果你正处于职业生涯初期,就干脆不要使用 AI。我完全同意,但重要的是要理解,这不是对整个人类社会都可行的策略。所有人并不会就这样。

我们不能无视这样一个事实:引入“一键轻松完成”的按钮,已经从根本上改变了学习的激励机制。而如果我对人类有什么了解,那就是人会追随激励。

对技能退化论的另一种常见回应是,使用 LLM 本身也有学习曲线。你只需要提升技能,学习下载 Markdown 文件的复杂细节!我不买账。这条学习曲线基本不存在。

印刷机或链锯至少还需要一定技能才能操作,但这个花哨的新魔法盒子呢?你甚至不必识字。一个穴居人都能做出 B2B SaaS,还能准时参加每周播客节目。至于你认为自己的定制 Agent 编排工作流是一项重要工程成就?等着瞧吧。

Agent 会减少人际沟通、增强个人自给自足倾向,并妨碍技能展示,从而削弱工程团队的社会纽带。

Slack 频道过去总是挤满了人。任何连你的橡皮鸭都回答不了的问题,都会被发进团队聊天。如今,聊天频道只是昔日的苍白影子。每个人都忙着和自己的 Agent 交谈。我们每个人都获得了一个魔法使魔,像迪士尼主角一样,它跟在我们身边。它非常聪明,全天候可用,而且永远不会向 HR 举报你。橡皮鸭终于能回话了!

从某种意义上说,更自主是一种美德。何必用自己的愚蠢问题打扰同事?问题是,帮别人解决愚蠢问题正是我们的事。这是我们建立和维系关系的方式。你得把那条路走出来,否则它就会被野草吞没。

我确信,AI 已经大幅减少了人与人之间的交流。如今一个普通团队聊天频道,基本由 Agent 讨论串构成,偶尔再出现一篇 LLM 生成的大稿,后面谦虚地跟一句:“大家觉得怎么样?”

Agentic Coding 也改变了我们看待其他人的方式。团队过去有点像冒险者小队:一位 Git 巫师、一位 Rust 女巫、一个痴迷机械键盘的吟游诗人。那里有充分的技能展示空间,专业能力的多样性也受到赞赏。

如今,一个普通团队由 Claude 操作员、Codex 耳语者,以及一个坚持提交 .md 文件的 AI 精神病患者组成。“这是 John——你肯定会想看看他怎么写提示词,”从来没有人这样说过。

而这是真的:没人想看 John 怎么写提示词。与 Agent 对话这件事,有种令人排斥、从根本上说也毫不性感的感觉。你自己这么做时感觉没问题,但别人……呃,你们俩找个聊天室房间去吧。他们的提示词很尴尬;他们的 Agent 很怪异。就像看别人的 TikTok 信息流。

所以,我们在组织架构图上仍然是同事,却随着时间推移变得越来越疏远。我曾经称赞你的 Vim 技巧和 Advent of Code 解题方案。如今你整天向 Claude 写提示词,我也是。我们还算是一个团队吗?


这就是我的清单。坦白说,我完全不知道该如何应对其中任何一个问题。我只能希望,我们最终能在这场被诅咒的讨论中继续向前。AI 无论多么有益,我们都正在为它付出高昂代价:我们的好奇心、手艺精神,以及社会连接。


English / 原文

Agentic coding is undeniably very useful. It’s also very bad. Or rather, it’s having some horrible effects on us, our craft, and our relationships with each other. I can feel it in my bones, and a lot of others can too. But whenever I try to explain what exactly is wrong, I find myself waving my hands wildly and jumping from point to point. What do you mean, what’s wrong? So many things are wrong!

Fine, here’s a list. 4 problems with no solution in sight–or, as I call them, the four horsemen of agentic coding.

LLM-generated code has a strong smell that makes codebases repulsive to humans.

LLMs aren’t humans, and the way they write code is... different. Not strictly worse, but different for sure. We quickly came up with a name for it—slop—and it undoubtedly carries a negative connotation.

For plain prose, humanity seems to be converging on the opinion that AI prose is bland at best and an insult at worst. For code, due to its instrumental nature, the debate is far from over. A lot of people latch on to the idea that very soon we won’t have to read the code at all. “Remember, it’s the worst the models will ever be,” they say.

And yet, the latest generation of models is surprisingly underwhelming. They’re certainly smart, but they seem to be moving towards “unemployable smart” rather than “inspiring smart.” Claude now famously communicates entirely through word salad, and Astra writes in a bizarre competitive code-golfy style, incomprehensible to normal humans. Sloppiness turned out to be a surprisingly persistent property of LLM output and at this point looks like a signature move rather than a growing pain.

Which is very bad news for people who still want to poke around in the codebase and maintain some familiarity with it, especially in a team setting. Once agents are allowed, they very quickly take over. What used to be a shared space for humans where each team member contributed became an AI wasteland where people don’t want to spend time.

But what if we don’t have to spend time in these slop caves? Why spend your time there when you can be a design mastermind and reign over a swarm of loyal agents from the comfort of the chat interface?

Engineers become alienated from code and, as a result, care less.

Software engineering used to be a fairly... kinesthetic field of work. Maybe not to the same degree as woodworking, but we loved our tools too, both real and virtual. Text editors had a cult-like following. Popular color themes and programming fonts had their own fanbases. Split keyboards were a hot thing once, and there was no shortage of keyboard sound testing videos.

We produced code directly, by hand. It’s only natural that this resulted in a strong sense of ownership of the fruits of our labor. Sure, this feeling varied depending on the context, but even if you just assembled something from a set of building blocks, you would feel something. IKEA certainly knows that!

Agentic coding has dramatically increased the distance between engineers and the product of their work. This gap is so large that none of our kinesthetic tools can cross it. We don’t experience code directly anymore: we send an agent with a vague set of instructions and then skim through its report. Hell, even typing is optional—you can just yap at your phone while driving.

So naturally, we become more detached. We care less. We lose touch with our craft. And it shows. It shows in poorly thought-out features that receive no pushback. It shows in band-aid bugfixes that don’t address the root cause. It shows in how unfulfilled we feel at the end of the day. For software to spark joy, it has to be imbued with its creator’s love.

Elsie Driggs, “Pittsburgh”

AI erodes existing skills, impedes learning, and doesn’t offer any meaningful skill progression.

I think at this point it shouldn’t be controversial to say that deskilling is real. There is no shortage of people reporting their wits slipping away after prolonged use of AI. Which makes sense: a lot of things in life are use-it-or-lose-it, and professional skills are no exception. Yes, you’ll always know how to ride a bike, and I myself will die before I forget how to exit Vim, but anything beyond that is fair game.

I’ve made the point before that we’re currently experiencing a historical anomaly. We have all those seasoned engineers who spent years doing things the hard way and can now hold LLMs exactly the right way to be insanely productive. But unless we figure out how learning works in the age of AI, this supply won’t last long.

One common piece of advice is that if you’re at the beginning of your career, you simply shouldn’t use AI. And I completely agree, but it’s important to understand that this isn’t a viable strategy for humanity as a whole. Everyone will not just.

We can’t be blind to the fact that the introduction of an “easy button” has led to a tectonic shift in incentives to learn. And if I know one thing about humans, it’s that they follow incentives.

Another common response to the deskilling argument is that LLM usage comes with its own learning curve. You just need to upskill and learn the intricacies of downloading markdown files! I’m not buying it. The learning curve is basically non-existent.

A printing press or a chainsaw at least requires some skill to operate, but the fancy new magic box? You don’t have to know how to read or write. A caveman could build a B2B SaaS and be on time for his weekly podcast appearance. And if you think your custom agent orchestration workflow is an important feat of engineering, just you wait.

Agents weaken the social fabric of engineering teams by reducing interpersonal communication, increasing self-reliance, and hindering skill expression.

Slack channels used to be crowded with people. Anything that your rubber duck couldn’t answer would go into a team chat. Now the chat is a pale shadow of its former self. Everyone is too busy talking to their agents. Each of us has received a magic familiar that follows us around like we’re some kind of Disney protagonists. It’s very smart, available 24/7, and will never report you to HR. The rubber duck can finally talk back!

In a certain sense, being more autonomous is virtuous. Why distract colleagues with your silly nonsense? The problem is, helping other people with silly nonsense is our thing. It’s how we build and maintain relationships. You need to walk the path; otherwise, it will be overtaken by grass.

I’m convinced that AI has dramatically reduced interpersonal communication. The average team chat right now consists of agent threads and an occasional LLM-generated manuscript followed by a humble “what do you guys think?”

Agentic coding also changes the way we see other people. Teams used to be sort of like parties of adventurers: a Git wizard, a Rust witch, a bard who is really into mechanical keyboards. There was plenty of room for skill expression, and the diversity of expertise was celebrated.

Now, an average team consists of a Claude operator, a Codex whisperer, and a guy with AI psychosis who insists on committing .md files. “This is John—you’ll want to see how he prompts ,” said nobody ever.

And that’s true: nobody wants to see how John prompts. There is something repulsive and fundamentally unsexy about talking to an agent. It feels fine when you are doing it, but others... ugh, get a chat room. Their prompts are cringe; their agents are weird. Like looking at someone else’s TikTok feed.

So here we are, still peers in the org chart, but growing more and more distant over time. I used to praise your Vim skills and Advent of Code solutions. These days you prompt Claude all day, and I do too. Are we even a team anymore?


So that’s my list. And I’ll be honest with you, I have no idea what to do with any of this. I can only hope that eventually we’ll move forward in this cursed discussion. However beneficial AI is, we pay dearly for it with our curiosity, craftsmanship, and social connection.