编程专业能力将因过度依赖人工智能而崩塌。
Coding expertise is going to collapse from AI reliance

原始链接: https://larsfaye.com/articles/ai-coding-will-prevent-expertise

本文认为,过度依赖人工智能编程助手会产生一种危险的“熟练协调者悖论”:这些工具虽然要求使用者具备专业知识才能有效发挥作用,但同时又规避了构建这种专业知识所必需的摩擦和试错过程。 包括 JetBrains 和宾夕法尼亚大学在内的多项近期研究表明,过度依赖 AI 的新手往往会产生一种“能力错觉”,他们跳过了关键的规划阶段,也无法掌握底层的运作机制。他们变得依赖这些工具来修复工具自身引入的错误。相比之下,那些将 AI 作为苏格拉底式导师——优先考虑认知投入而非代码生成的人——能够获得显著更好的学习成果。 作者警告称,编程不仅仅是生成代码行,更是通过解决问题来培养“品味”和直觉的过程。开发者如果选择即时答案而非攻克复杂的挑战,往往会累积“认知债务”而非掌握技能。通往长期成功的道路在于将 AI 作为教学辅助工具而非拐杖,确保开发者保持必要的批判性思维能力,去审计、验证和理解他们所构建的系统,而不是离开订阅服务后便束手无策。

关于人工智能对软件工程影响的 Hacker News 讨论显示,人们在这一问题上存在严重分歧:一方担忧基础技能的流失,另一方则认为人工智能只是另一种抽象层。 批评者认为,过度依赖人工智能会产生危险的依赖性,导致认知“萎缩”,就像计算器对心算能力的影响,或工业化取代传统手工艺一样。他们警告称,工程师正日益沦为“工单推送者”,难以核实或理解人工智能生成的低质量样板代码,从而导致不可持续的技术债务。 相反,支持者认为人工智能让开发者能专注于更高层面的问题解决,而非纠结于语法。他们将当下的担忧与历史上对编译器和高级语言的抵制相提并论,并指出编程的本质向来是构建工具,而非单纯的编写代码。 然而,一个反复出现的观点是,尽管资深工程师能有效利用人工智能提高生产力,但如果初级开发者跳过了理解系统底层运作所需的“认知磨合”,可能会受到不利影响。最终,各方共识倾向于认为,尽管手动编码的“工艺”正在演变,但深厚的领域专业知识对于避免系统故障依然至关重要。
相关文章

原文

"We see a future where intelligence is a utility like electricity or water and people buy it from us on a meter and use it for whatever they want to use it for" - Sam Altman of OpenAI

In my previous article, Agentic Coding is a Trap, I discussed the "skilled orchestrator paradox", where the skills required to manage AI agents for coding are the same ones that can be diminished through the continued use of said AI agents. Expertise was largely the differentiator; the more experienced a developer is, the less likely it is that they might experience skill atrophy, as the knowledge has had a chance to ossify after years of experience.

If you look around right now, you'll find the vast majority of those that are seeing the most benefits from these models are those that have had years, if not decades, of experience in the field (which predates AI tooling, of course). And any industry veteran will tell you the same: the bedrock of this knowledge comes from doing the work.

Developers who've entered the field around the time of LLMs are placed in a position where they don't have the benefit of longevity, but they are being guided (and sometimes mandated) to accelerate their efforts using coding assistants that require a history of expertise to wield effectively and responsibly.

It's an awkward place to be for that demographic, as it creates a scenario where a novice needs expert-level skills to leverage the tools and keep pace in the industry.

We're currently sending very mixed signals to people across the industry. We're hammering in that if you're not using AI tools, you will be "left behind" by your peers who are using them. "AI won't replace you, someone using AI will" has been on repeat since 2023.

And in the same breath, it's also said that the way to get the best results from these models is to apply higher-order thinking; "vibe coding" is a dead end; you need to "move up the stack" and create robust specs, architect with good design patterns, and always review the outputs diligently so you never ship something you don't understand.

The skills to do so, however, are a function of someone who has experienced the friction and challenges over time that culminate in "good taste".

This leads to another situational paradox: If these tools demand expertise, yet the tools can actively circumvent the friction that cultivates expertise, then what is the path for one to become an expert so they can effectively use these tools?

联系我们 contact @ memedata.com