翻译自原文:https://nmn.gl/blog/ai-illiterate-programmers
几天前,当ChatGPT宕机时,我的Cursor终端也崩溃了。面对那些刺眼的红色错误提示,我讨厌这种感觉。AWS的错误信息赫然在目——没有AI的帮助,我甚至不想尝试自己解决这个问题。在编程12年后,我竟然对自己的专业能力感到陌生。这不是夸张,这是软件开发者的新现实。
技能退化:悄然发生
这种衰退是逐步渗透的。最初,我停止阅读文档——既然AI能瞬间解释一切。接着,我的调试能力也下降了。现在的堆栈跟踪信息对我来说如同天书,遇到错误信息时,我不再尝试理解,而是直接复制粘贴。我成了一个人形剪贴板,只是代码与LLM之间的简单中介。过去每个错误信息都曾教会我东西,而现在解决方案像魔术般出现,而我却一无所获。即时答案带来的多巴胺快感取代了对真正理解的满足感。
深度理解的消亡
还记得那些花费数小时理解解决方案原理的日子吗?如今我只是照搬AI的建议。如果代码不工作,我会优化上下文描述再重新提问——这是一个不断加深依赖的恶性循环。情感上的变化同样明显:曾经解决问题带来的编程乐趣,如今已变成对AI五分钟内未给出方案的焦虑。最可怕的是,我正在开发一款AI编程工具,却无法摆脱自己正在助长这一问题的矛盾心理。
康复计划
我并不主张彻底禁用AI——这不现实。我开始实践"无AI日":每周一天
1. 完整阅读每一个错误信息
2. 重新使用真正的调试器
3. 从零开始手写代码
4. 阅读源码而非询问AI
坦白说,这过程很痛苦。我感到自己变慢、变笨、更易受挫。但也能感受到明显的改变:与代码建立了更深层的连接,重拾了掌控感,学习效率显著提升。
令人不安的真相
我们并没有借助AI成为10倍高效的开发者,而是变成了10倍依赖AI的程序员。每次让AI替我们解决本可以自行思考的问题,都是在用短期生产力换取长期能力的丧失。我们在优化今天的提交,却牺牲了明天的生存能力。
我并非反对AI工具——这列火车早已出发。但我们需要建立使用规则:
✓ 不要向AI提问你尚未尝试理解的问题
✓ 彻底理解AI提供的解决方案
✓ 定期进行无AI编码训练
✓ 注重模式识别而非应急修理
虽然无法保证永远遵守这些规则,但这是个开始。对于刚入门的开发者来说,这些规则尤为重要。他们将永远不会知道独立解决问题的成就感,永远不会经历与bug搏斗数小时的顿悟时刻。我们正在培养这样一代开发者:他们能向AI提出正确问题,却无法真正理解答案。当AI宕机时,他们的无助将被暴露无遗。
目前AI还不足以完全替代程序员,但随着技术进步,这种情况只会恶化。真正的问题不是AI是否会取代人类,而是我们是否在自我淘汰。
试着每周有一天远离AI编程吧。结果可能会让你惊讶。
翻译自原文:https://nmn.gl/blog/ai-illiterate-programmers