AI真的要抢我们饭碗了?一个程序员的亲身试验报告
最近几年,关于AI会不会取代所有人的工作这个话题,网上吵得沸沸扬扬。说实话,我一开始完全不当回事,觉得大部分都是瞎扯淡。毕竟我学过神经网络,也了解大语言模型、机器学习、深度学习这些东西的基本原理。早期试用过一些生成式AI工具,但印象都不太好——bug一堆,经常胡说八道,功能还很受限。

最近几年,关于AI会不会取代所有人的工作这个话题,网上吵得沸沸扬扬。说实话,我一开始完全不当回事,觉得大部分都是瞎扯淡。毕竟我学过神经网络,也了解大语言模型、机器学习、深度学习这些东西的基本原理。早期试用过一些生成式AI工具,但印象都不太好——bug一堆,经常胡说八道,功能还很受限。
改变想法的转折点
2024年,我决定认真重新审视这个问题。确实,技术进步了不少,但要说取代真正的软件工程师?还差得远,尽管当时媒体标题写得天花乱坠。
从那以后,我开始密切关注这个领域,做各种实验,想搞清楚这项技术到底能对我们的日常工作产生什么影响。于是就有了这次实验:我决定完全依靠AI来重新设计我网站的视觉主题。

我的网站改造实验
我的网站(rafaelhs-tech.com)是2021年用Angular搭建的(版本7还是8,记不清了),很基础,就几个组件,太空主题设计。想法很简单:只改外观和感觉,看看AI能做到什么程度。
第一回合:Claude 3.7的"创意发挥"
我用Claude 3.7开始这次冒险,第一个提示大概是这样的:
“这是一个Angular XX应用,我想把样式改成赛博朋克主题。文件夹按组件组织,每个组件代表一个页面。”
Claude扫描了项目,找到了SASS文件,开始生成新代码…然后就开始胡言乱语了:居然在Angular项目里创建React文件!
我试着纠正,但它就是不听,继续破坏应用,混合文件,一遍又一遍地输出React代码。没办法,我只能重头再来。

第二回合:更详细的指令
这次我更具体了:明确说明了Angular版本,详细描述了文件夹结构,重点强调了关键文件,给出了完整的项目概述。结果呢?视觉上稍微好了一点,但UI还是坏的。页面对齐错乱,样式不一致,最要命的是:代码简直是一团糟。
对于不熟悉的朋友说明一下,把HTML、CSS和JS这样混在一起,在现代Web开发中是非常糟糕的做法。
这并不意外,但进一步证实了一个关键点:这些AI代理仍然缺乏对良好开发实践的真正理解。我继续用Claude 3.7试了一阵子,但越来越沮丧。我要求一件事,它返回完全不同的东西。**光是为了对齐一个按钮,我就发了超过15个提示!**我意识到手动修复会更快,但我坚持要模拟非技术用户的体验。
Claude 3.5:稍有改善
我也试了CodeLLM,但它有另一个问题:没有长期记忆。如果提示失败或达到token限制,在新线程中继续就会重置所有内容,完全忘记之前的上下文。这真的很烦人。
Claude 3.7常见的"幻觉"包括:
- 生成我没要求的东西
- 无法回退更改
- 删除所有内容然后循环重新生成代码
于是我换到Claude 3.5,它表现得更可靠一些,能更准确地执行指令。我继续调整,经过大约40个提示后,终于得到了一个看起来还不错的视觉效果。

但代码还是很乱:CSS和SASS混在一起,JS内嵌在HTML中,奇怪的文件名,无用的注释…什么都不能重用。我决定试试其他大语言模型,比如Gemini 2.5、GPT o1和GPT o4mini。结果都一样令人沮丧,而且每次运行都会产生明显不同的结果(这是预料之中的)。
实验总结:现实很骨感
毫无疑问,AI正在改变我们编码、学习和解决问题的方式。但取代软件工程师?我们还远远做不到。
从这次实验中得出的一些心得:
成本问题:整个过程花费约14美元,主要是因为长时间对话和多次重新开始。如果没有多次重来,大概8到9美元。
技术栈局限:这个项目基于TypeScript、SASS和HTML,都是文档齐全、广泛使用的技术栈,AI都会产生大量幻觉。想象一下用Elixir、Clojure或Crystal试试?我试过,效果很糟糕。
代码质量堪忧:代码能"运行",但需要大幅重构。
用户体验差距:模糊的提示得到模糊的答案,理论上显而易见,但对非技术用户来说很成问题。

我的真实感受
经过这一切,我可以自信地说:我们离技术奇点还很远。大语言模型本质上就是文本输入→文本输出。当然,中间有复杂的处理过程,但没有真正的"智能"在发生。
如果你重复同样的提示,结果可能会不同。这是因为LLM是非确定性的,它们基于概率生成响应。top-k采样和top-p采样等技术可以影响结果,但随机性是这个游戏规则的一部分。
是的,这确实提高了简单任务的门槛,可能会影响初级开发者,但一切都取决于具体情况。
现在想象一个真实世界的复杂系统,有后端逻辑、BFF、Terraform、CI/CD管道或微服务,一个小的UI调整可能在其他地方产生意想不到的副作用。那将是一场灾难。我和一些做移动开发的朋友聊过,他们的体验更糟糕。老实说,Web开发可能是"最不坏"的场景。
适应才是王道
关键在于我们要学会适应。我现在每天都在使用AI工具,用来学习、写文档、制作PRD、MRD、画图表等等。但我们离AI独自解决软件工程问题还很遥远。
AI确实有用,但不是万能的。它更像是一个有时很聪明、有时很糊涂的助手。作为程序员,我们需要学会如何有效地与它协作,而不是指望它完全取代我们。

这次实验让我明白,技术进步确实在加速,但距离真正威胁到有经验程序员的地位,还有很长的路要走。我们需要做的是拥抱变化,学会利用这些工具提高效率,而不是被恐惧所支配。
毕竟,会用工具的人,永远比工具本身更有价值。