“AI 正在造就一代「文盲」程序员!”
02-01 09:57 来源:csdn 阅读(65)

原文链接:https://nmn.gl/blog/ai-illiterate-programmers


作者 | Namanyay    翻译 | 郑丽媛


出品 | CSDN(ID:CSDNnews)


几天前,在 ChatGPT 宕机期间,我的 Cursor 也跟着下线了。


我盯着终端里那些我最不想看到的红色错误信息,一个 AWS 错误无情地回望着我——没有 AI 的帮助,我根本不想去解决这个问题。


编写了 12 年代码的我,不知为何,编程技术竟然退步了。这并非夸大其词,而是软件开发人员面临的最新现实。

编码能力逐渐退化


这一切都是悄然发生的。


起初,我不再阅读文档:既然 AI 能立刻解释清楚,我又何必费那个劲呢?


然后,我的调试技能也受到了影响。没有 AI 的帮助,我觉得堆栈跟踪都无从下手,甚至都连错误信息也不读了,直接复制粘贴给 AI。


……没错,我就变成了一个人形剪贴板,成了代码和大语言模型(LLM)之间的一个中介。


以前,每条错误信息都能让我学到点东西。现在呢?解决方案如魔法般出现,我却什么也没学到。即时答案给我带来的多巴胺刺激,取代了真正理解问题所带来的满足感。


接下来受到影响的是深层次理解。还记得曾经花几个小时去弄清楚为什么某个解决方案有效吗?现在,我只会直接实现 AI 的建议。如果不行,我就改进一下上下文,再问 AI 一遍……这是一个依赖性不断加深的循环。


随之而来的是情感上的变化。以前,解决问题是编程的乐趣之一;而现在,如果 AI 在 5 分钟内没给出解决方案,我就会感到很沮丧。


你知道最可怕的地方是什么吗?我正在开发一款由 AI 驱动的开发工具,同时深刻感觉到:我好像在加剧侵蚀程序员的集体技能。




我认为的“康复计划”


我并不是建议彻底放弃使用 AI——那不现实。相反,我打算从“无 AI 日”开始,每周有一天:


● 完整地阅读每一条错误信息


● 再次使用真正的调试器


● 从头开始编写代码


● 亲自阅读源码而不是去问 AI


说实话,这并不容易:我觉得自己变慢了、变笨了、也更沮丧了。


但我也能看到改变:我感觉与代码的联系更紧密了,那种随着 AI 的介入而逐渐消失的所有权感觉也回来了。此外,我还学到了更多东西。




令人不安的事实


我们并没有因为 AI 而成为 10 倍效率的开发者;我们变得对 AI 有 10 倍的依赖——这两者是有区别的。


每当我们让 AI 解决本可以自行解决的问题时,我们都是在用短期的生产力去换取长期的理解力。换句话说,我们正在为今天的提交优化,牺牲了明天的编码能力。


但我并不是说我们应该抛弃 AI 工具——毕竟这个时代已经来临了。但我们需要制定使用规则,以下是我的一些想法:


● 在尝试理解之前,不要求助于 AI


● 阅读并理解所有 AI 提出的解决方案


● 定期进行没有 AI 辅助的编码练习


● 注重学习模式,而不仅仅是解决眼前的问题

https://www.zuocode.com

说实话,我不认为自己能一直遵守这些规则。但这只是一个开始,而且我坚信对于任何刚开始编程的人来说,都应该严格遵循这些规则。


此时此刻,在某个地方,可能就有一个新程序员正在学习编程。但如果完全借助 AI,他们将永远无法体会到真正独立解决问题的满足感,也无法体验到与 bug 斗争数小时后获得的深刻理解。


我们正在造就这样的新一代开发者,他们能向 AI 提出正确的问题,却无法理解答案。每次 AI 出现故障,他们的无助就会暴露无遗。目前,AI 还不足以完全替代程序员,但随着其不断改进,情况只会越来越糟。真正的问题不在于 AI 是否会取代程序员,而在于我们是否会取代自己。


不信?那么试着不借助 AI 编程一天,结果可能会让你大吃一惊。