The problem is not AI code, but not knowing about system architecture or intent
The problem is not AI code, but not knowing about system architecture or intent
问题不在于 AI 代码,而在于人们不再了解系统架构或设计意图
If we think writing code is dead, and AI is generating all codebases, I still think the bigger problem is people or full teams not knowing anything anymore about the system architecture or the intent behind why certain choices have been made. 如果我们认为编写代码已经消亡,且所有代码库都由 AI 生成,我仍然认为更大的问题在于个人或整个团队不再了解系统架构,也不再理解做出某些选择背后的意图。
A comment on a discussion I had: I think AI writes probably average code (depending on the task and size). So if your code base was below average AI can easily improve it up to average. At least that’s what I’ve observed here. To me, the problem is not the AI code, but that nobody knows anything, and everyone just asks Claude. You end up with no plan whatsoever. 在一次讨论中,有人评论道:我认为 AI 写出的代码大概处于平均水平(取决于任务和规模)。因此,如果你的代码库原本低于平均水平,AI 可以轻松将其提升到平均水平。至少这是我的观察。对我来说,问题不在于 AI 代码本身,而在于没人了解任何东西,每个人都只是去问 Claude。最终的结果是你根本没有任何计划。
The Current State in Fast Moving Startups
快速发展初创公司的现状
This tweet summarizes the current state at fast moving startups well, or larger companies or where middle management is pushing AI hard: 这条推文很好地总结了快速发展的初创公司、大型企业,或者中层管理人员强力推行 AI 的地方的现状:
“I am done with this shit. It is over. The state of engineering right now is horrible. It has been half a month since I started a new role at a big company. Nobody knows anything here. The specs, code, tests, PRDs, tickets, resolution of those tickets, reports, etc., everything is made by Claude Code. Nobody on my team likes this. They are being forced to ship as much as they can. I have heard multiple times from higher management that pushing code is not a bottleneck, so why are we slow? People are working 12 to 13 hours a day just to press enter. Nobody is reading anything. Humans in corporate are doing nothing on their own. Everyone, literally everyone, from an L1 to an L7 engineer here is doing the same thing. Talk to Claude. There is no sense of victory. Nobody is resolving bugs. In reality, nobody is thinking anymore. Everything is done by LLMs. It is so soul-sucking. I would not mind it, to be honest, if we were at least given the time to check out the code and see what is going where. But no, the goal is to just ship. No matter what happens.” “我受够了这一切。一切都完了。现在的工程状态简直糟糕透顶。我入职这家大公司已经半个月了。这里没人了解任何东西。规格说明书、代码、测试、产品需求文档(PRD)、工单、工单的解决过程、报告等等,一切都是由 Claude Code 生成的。我团队里没人喜欢这样。他们被迫尽可能多地发布产品。我多次从高层管理人员那里听到,推送代码不是瓶颈,那为什么我们进度这么慢?人们每天工作 12 到 13 个小时,仅仅是为了按下回车键。没人阅读任何东西。企业里的员工不再独立做任何事。每个人,真的是每个人,从 L1 到 L7 级别的工程师,都在做同样的事情:去问 Claude。没有任何成就感。没人真正在解决 Bug。实际上,没人再思考了。一切都由大语言模型(LLM)完成。这太令人心力交瘁了。老实说,如果至少能给我们时间去检查代码,看看代码流向哪里,我倒不介意。但事实并非如此,目标仅仅是发布。无论发生什么。”
Data Engineering is Different?
数据工程有所不同吗?
Hoyt Emerson mention that data engineering is different: “I think Data people are different. We’ve had to know everything about the product/business from day 1. AI just removes friction for us now.” Hoyt Emerson 提到数据工程有所不同:“我认为数据从业者是不同的。从第一天起,我们就必须了解关于产品/业务的一切。AI 现在只是为我们消除了摩擦。”
I think data people who grew up pre-AI had to know everything (or a lot, or involve domain experts) to figure it out, indeed. But AI makes this obsolete, or seemingly obsolete. That’s why people starting today, or me as well, if I start today prompting away in a new field, all of a sudden, that knowledge is missing. 我认为在 AI 时代之前成长起来的数据从业者确实必须了解一切(或大部分内容,或引入领域专家)才能搞清楚问题。但 AI 让这一切变得过时,或者看起来过时了。这就是为什么今天入行的人,或者像我一样,如果今天开始在一个新领域通过提示词(Prompting)工作,突然之间,那些知识就缺失了。
A Product Manager Could now Build Anything He Wants
产品经理现在可以构建任何他想要的东西
Good point by Sean Behan: “I’ve always admired product people who can’t code but can manage a team to get the software they want. Knowing what you want has always been the hardest part.” Sean Behan 的观点很好:“我一直很钦佩那些不会写代码,但能管理团队并获得他们想要软件的产品人员。知道自己想要什么一直是最难的部分。”
One could say a good product manager could now build anything they want and find a market, make it look good, etc. But then again, if you can’t code, you will essentially build a very bad foundation for a product that’s very hard to maintain (although AI is getting better at that too, especially when you iterate often, but still, if you choose the wrong language or the wrong mental model, you have the wrong start from the get-go). 有人可能会说,一个优秀的产品经理现在可以构建任何他们想要的东西,找到市场,让它看起来很棒等等。但话又说回来,如果你不会写代码,你本质上会为产品构建一个非常糟糕的基础,这使得产品极难维护(尽管 AI 在这方面也在进步,尤其是当你频繁迭代时,但即便如此,如果你选择了错误的语言或错误的思维模型,从一开始你就走错了方向)。
It still helps to know the fundamentals, either way: for programming and designing a product, and for a good PM who knows what is needed but also understands system and architecture design. 无论如何,掌握基础知识仍然很有帮助:无论是对于编程和产品设计,还是对于一个既知道需求又理解系统和架构设计的优秀产品经理而言。
The Final Boss is Still Maintenance
最终的大 Boss 依然是维护
Thinking in systems, or architectures, or having intent and design- all of them help to be a better software engineer. Nowadays, writing code by hand might be dead, but it certainly helps, and Having Taste (with AI) is more important than ever. But the final boss is, and always will be, maintainability. The easier it is to generate a quick pipeline, app, or BI dashboard, the more you have to maintain. And if nobody knows a thing, that can get really hard. 以系统或架构的思维去思考,或者拥有意图和设计——所有这些都有助于成为一名更好的软件工程师。如今,手写代码可能已经消亡,但它肯定是有帮助的,而且(在使用 AI 时)拥有品味比以往任何时候都更重要。但最终的大 Boss 永远是可维护性。生成快速流水线、应用程序或 BI 仪表板越容易,你需要维护的东西就越多。如果没人了解其中的原理,那将会变得非常困难。
AI Can’t Drive Itself
AI 无法自我驱动
Yes, the AI can’t prompt itself, right? Why do we even need humans? To me, it’s a clear sign that humans are still needed to direct and orchestrate it. That’s also why intent, taste, design, and architecture are all killer features in today’s world. But once these are absent, or even worse, fundamental, get lost, it’s really dangerous. 是的,AI 无法自我提示,对吧?那我们为什么还需要人类?对我来说,这清楚地表明人类仍然需要去引导和编排它。这也是为什么意图、品味、设计和架构在当今世界都是杀手级功能的原因。但一旦这些缺失,或者更糟糕的是,基础知识丢失了,那将是非常危险的。
I read today that this is a self-inflicted problem, and if we still hired juniors, then the problem wouldn’t be happening. But yeah, it’s not as easy. 我今天读到,这是一个自找的问题,如果我们仍然雇佣初级工程师,那么这个问题就不会发生。但确实,事情没那么简单。