王剑编程网

分享专业编程知识与实战技巧

“AI 正在造就一代「文盲」程序员!”

【CSDN 编按】曾经,解决复杂问题和深入理解程序运行原理是每个程序员成长的必经之路。然而,现在的情况似乎有所不同:越来越多的新手开发者倾向于直接使用 AI 提供的解决方案,而非通过反复试验和错误积累宝贵的经验。这种趋势不仅影响了个人技能的发展,也引发了关于未来软件质量和技术深度的广泛讨论。

原文链接: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 辅助的编码练习

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

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

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

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

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

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言