解决了“错误的问题”:对AI编程热潮的深度反思

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行! 订阅:https://rengongzhineng.io/


在AI辅助与AI主导编程逐渐普及的今天,越来越多的从业者沉醉于自动生成代码的惊艳表现。然而,对于经验丰富的软件工程师Uwe Friedrichsen而言,这场"革命"始终带着一种隐隐的不协调感------我们可能正在用一种极其强大的技术,去解决一个根本不是问题的问题。

以下是他对当前AI软件开发热潮的冷静拆解与深刻反思。


一、AI编程的两个版本:辅助者与主导者

Uwe将AI编程分为两个阶段:

  1. AI辅助编程:人类写代码,AI作为助手支持流程。

  2. AI主导编程:AI生成整个解决方案,人类仅在外围观测行为,这种方式被戏称为"vibe coding"。

尤其在第二种场景中,AI生成的代码表现令人惊艳------它能实现复杂逻辑、集成多种功能模块,甚至有"奇才"般的创造力。

但同时,它也像一个注意力极度分散的天才儿童,频繁走神、忘记目标、偏离约束,需人类不断提醒其回归正轨。

更令人困惑的是:AI有时能在整体表现优秀的代码中,突然插入一段完全不合逻辑的错误语句。

即便如此,Uwe承认,AI的技术潜力令人赞叹。但即便放下种种担忧、全力以赴接纳AI,依然存在那种难以言明的不安:我们,真的解决的是"对"的问题吗?


二、LLM的工作原理意味着什么?

LLM(大语言模型)并不是真正意义上的"智能体":

  • 它基于概率进行响应:对输入进行模式匹配,生成最可能的下一个Token;

  • 它不能进行真正的创造,只能在训练中"见过的知识"范围内进行组合;

  • 所谓的"创新"往往是对既有知识的重新拼接。

这意味着:如果AI生成了可用的代码,那它"看过"类似代码的可能性极高。

Uwe通过一个Rust编程的案例进一步说明了这个问题:

  • 当AI被要求直接生成Rust代码时,它失败了;

  • 但当先生成Python代码再转换为Rust时,它成功了;

  • 原因在于训练数据中Python样本远多于Rust样本;

  • 本质:AI"生成力"的上限 = 它训练数据的质量与广度。


三、AI是在加速"重复造轮子"?

既然AI生成的代码很大概率是"它见过很多次"的代码,那么问题来了:

如果这些代码如此常见,为何它们不早已封装成库、框架,甚至平台服务?
为何AI仍需要一次又一次"重写"这些早已存在的解决方案?

我们是否沉迷于"重复制造轮子",却忽视了应该抽象的方向?

Uwe的判断是:我们用AI加速生产的是重复性劳动的堆叠,而非对复杂问题的根本解决。


四、"AI让我做出一款iOS App!"------真的是生产力飞跃吗?

Uwe指出,许多对AI编程赞不绝口的"先锋"往往并非专业开发者:

  • 他们不具备语言或生态知识;

  • 他们做出的只是一个简单的玩具或原型;

  • AI只是填补了他们知识上的缺口,而非真的带来"效率革命"。

这种现象掩盖了一个核心问题:AI提升的是对"知识门槛"的穿透力,不是"工程能力"的跃迁。

而真正写生产级代码的开发者,几乎没人说"AI让我的速度提升了10倍"。

他们说的更多是:AI让工作更轻松了,能少做些无聊事。


五、AI生成的代码质量会更好吗?未必。

支持AI编程的一个普遍说法是:反正现在的代码质量也不高,AI生成的"也就那样",还能更快,不好吗?

Uwe承认,大多数企业软件确实只达到"勉强能用"的水平。

但他指出:

AI的训练数据就是这些低质量代码!

AI从中学习,再反哺生成;这意味着我们在用AI重现我们想摆脱的"问题代码"。

本质问题不是人类开发者效率低,而是整个行业缺乏系统性、工程化、教育投入------AI并不能弥补这些。


六、真正的问题:缺乏教育与持续训练

Uwe揭示了开发行业被忽视的真相:

  • 许多软件开发者并没有接受过正式的计算机科学教育

  • 很多人是"转行"来的,靠培训班上岗,基础薄弱;

  • 公司普遍不重视持续培训,缺乏对"长期能力"的投资;

  • 即使有基础,IT变化太快,不更新技能就会被淘汰

我们创造了一个机制,它产出的是劣质代码;现在,我们又指望用AI更快地产出更多劣质代码。


七、"业务需要更多功能!"------真的吗?

Uwe指出一个被广泛忽视的问题:我们是否真的需要那么多功能?

他总结了企业中常见的恶性循环:

  1. 需求提出:业务说"我们需要更多功能";

  2. 功能上线:但实际并未带来业务提升;

  3. 误判根因:领导层认为"功能不够多",继续提出更多需求;

  4. 再开发、再失败,循环加剧。

这导致:

  • 大量无用功能堆积在代码库中;

  • 软件复杂度(尤其是意外复杂度)飞速增长;

  • 开发效率越来越低;

  • AI介入后,只是加速这个恶性循环罢了。


八、讽刺的是:AI要求我们重视的,正是我们一直忽视的

最后一击讽刺性极强:

为了让AI写出高质量代码,必须提供明确的需求和良好的架构设计。

而这正是过去几十年人类开发者不断请求却被拒绝的东西。

企业一边无视人类开发者对"设计时间"的需求,另一边却愿意为AI去写更好的文档。

这无疑反映出一种对技术的非理性崇拜 ,以及对人类工程能力的轻视


总结:我们正在用AI解决"错的问题"

Uwe总结了他的"nagging feeling"来自哪里:

  • LLM的能力本质上是组合训练数据的重构;

  • 大量AI粉丝其实只是缺乏知识而获得了一种"捷径";

  • 经验开发者并未显著加速,AI带来的只是便利;

  • 系统性教育缺失才是"代码质量差"的根源;

  • 企业急功近利、低投入培训,反而指望AI治愈一切;

  • 功能膨胀、需求盲目,导致了软件系统的崩溃;

  • 我们几十年来都忽视了设计与文档,现在却为了AI去认真对待这些;

  • 而所谓的"AI解决方案",根本不曾触及以上任何核心问题。


Uwe的结语:

"LLM 是令人惊叹的技术。但如果我们只是盲目地将它们应用于一切,我担心它最终只会巩固现有弊病,并放大软件开发中已有的问题。"

真正令人兴奋的不是"AI可以写代码",而是如果我们先解决已有问题,再使用AI,那才是真正的飞跃。

我们不需要用AI制造更多废料,我们需要的是彻底重新思考问题本身。


AI本身并非错误,但把AI用在错误的问题上,是。

相关推荐
渡我白衣6 小时前
未来的 AI 操作系统(八)——灵知之门:当智能系统开始理解存在
人工智能·深度学习·opencv·机器学习·计算机视觉·语言模型·人机交互
夕小瑶6 小时前
Dexmal 原力灵机开源 Dexbotic:具身智能的“Transformers“库来了
大数据·人工智能
飞飞是甜咖啡6 小时前
SPP-CNN解决CNN只能处理固定大小的输入图片
人工智能·神经网络·cnn
xiaoxiaode_shu6 小时前
神经网络基础
人工智能·深度学习·神经网络
小小爱大王7 小时前
AI 编码效率提升 10 倍的秘密:Prompt 工程 + 工具链集成实战
java·javascript·人工智能
蓝博AI7 小时前
基于卷积神经网络的香蕉成熟度识别系统,resnet50,vgg16,resnet34【pytorch框架,python代码】
人工智能·pytorch·python·神经网络·cnn
CUMT_DJ8 小时前
唐宇迪2025最新机器学习课件——学习心得(1)
人工智能·机器学习
流烟默8 小时前
机器学习中一些场景的模型评估与理解图表
大数据·人工智能·机器学习
格林威8 小时前
近红外工业相机的简单介绍和场景应用
人工智能·深度学习·数码相机·计算机视觉·视觉检测·制造·工业相机