You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/posts/我对AI编程的担忧/index.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,8 +12,8 @@ thumbnail: "images/cover.png"
12
12
13
13
最近网上对于 AI(准确来说是 LLM)编程的炒作可以说是如火如荼。但在我看来,那些炒作 AI 编程的人没有告诉大家一个事实。在真正工作中,要交付的生产级软件和那些由 AI 生成用来演示的软件根本不是一回事。特别是当软件本身注重长期演进和质量时尤为如此 —— [前阵子微软 CEO Satya Nadella 公开表示微软的代码库有 20~30% 是由 AI 编写的,但业界不少人对其质量表示堪忧](https://www.linkedin.com/posts/linasbeliunas_epic-microsoft-let-ai-write-30-of-its-code-activity-7407739565240819712-AvlS)。虽然 AI 编程看似能够轻而易举地完成一个任务,甚至输出整个软件的源代码。但至少就目前为止,它们实际上存在着一些令人无法忽视的质量问题。首先是 LLM 本身难以控制 —— 即便是同样的上下文和问题,多次输出的内容无法确保一致,且质量参差不齐。其次是 LLM 输出内容的质量属性属于“进垃圾,出垃圾”模式,这意味着并非所有模型都能够满足编程要求 —— 其实大多数输出都不尽人意,而且反复向其澄清问题和需求的成本并不低。最后是关于 LLM 对于问题理解和实现的准确性。个人认为,之所以会诞生出各式各样的高级编程语言是因为它们能够严谨地表达和实现想法。但伴随着 LLM 的兴起,整个行业貌似又倒退回去用自然语言来开发软件。换言之,又需要重新解决一遍以前已经解决的问题。这个过程需要付出多少资源和时间才能达到生产就绪,目前不得而知。
14
14
15
-
曾有人说,软件开发本身就是一个关于学习的过程。相关人员会在这个过程中不断吸收技术和业务知识,从而培养出处理系统突发问题的能力。而 AI 编程则会严重削弱这个过程。因为动手少了,对系统的掌控力自然就下降 —— 严重起来可能会导致生产事故频发。这是过度信任 AI 编程会带来的副作用。但问题在于 AI 根本不对它生成的内容负责,而项目团队则要对相关利益者,以及项目本身是否可持续发展和维护负责。
15
+
曾有人说,软件开发本身就是一个关于学习的过程。相关人员会在这个过程中不断吸收技术和业务知识,从而培养出处理系统突发问题的能力。而 AI 编程则会严重削弱这个过程。因为动手少了,对系统的掌控力自然就下降。严重起来可能会导致生产事故频发。这是过度信任 AI 编程会带来的副作用。但问题在于 AI 根本不对它生成的内容负责,而项目团队则要对相关利益者,以及项目本身是否可持续发展和维护负责。
16
16
17
-
另外,伴随 AI 编程炒作而来的另一个问题。一些人(通常是缺乏深入开发经验的技术人员和管理层)开始盲目认为 AI 几乎可以解决所有问题。但现实是它并没有像炒作般神化 —— [业界有人开始断言如今的注意力(机制)模型已经将近瓶颈,而且无法通向 AGI(Artificial General Intelligence)](https://www.youtube.com/watch?v=5PQtJxd4U0M) 。出现这种境况对于软件行业来说绝对是凶兆。当领导觉得 AI 可以大大地提高工作效率而实际又无法达到预期效果时,开发人员就需要承受一种无理的负面评价。而另一种可能性则是,因为工作效率得到提高(即便不多),所以开发人员需要承担比以往更多的工作任务,而不是得到更多的时间来优化工作和调节生活。此外,过于神化 AI 编程很可能会导致技术人员忽视基础知识的重要性,从而导致行业人员素质普遍下降 —— 实际上 LLM 只是一种工具,使用它的人需要具备丰富的知识才能更好地驾驭它。所以说,如今的专业知识其实比以往更加重要和难能可贵 —— [据了解,在普遍裁员的大环境下 IBM 决定在 2026 年招聘更多初级人员来作为人才储备。目的是通过重新调整岗位任务来提高战略价值](https://sg.finance.yahoo.com/news/ibm-triple-entry-level-us-194414094.html)。这则消息可以间接表明即便如今我们有了“强大”的 AI,但仍然需要由人类来驾驭它,只是工作形式正在发生转变。
17
+
另外,伴随 AI 编程炒作而来的另一个问题。一些人(通常是缺乏深入开发经验的技术人员和管理层)开始盲目认为 AI 几乎可以解决所有问题。但现实是它并没有像炒作般神化 —— [业界有人开始断言如今的注意力(机制)模型已经将近瓶颈,而且无法通向 AGI(Artificial General Intelligence)](https://www.youtube.com/watch?v=5PQtJxd4U0M) 。出现这种境况对于软件行业来说绝对是凶兆。当领导觉得 AI 可以大大地提高工作效率而实际又无法达到预期效果时,开发人员就需要承受一种无理的负面评价。而另一种可能性则是,因为工作效率得到提高(即便不多),所以开发人员需要承担比以往更多的工作任务,而不是得到更多的时间来优化工作和调节生活。此外,过于神化 AI 编程很可能会导致技术人员忽视基础知识的重要性,从而导致行业人员素质普遍下降。实际上 LLM 只是一种工具,使用它的人需要具备丰富的知识才能更好地驾驭它。所以说,如今的专业知识其实比以往更加重要和难能可贵 —— [据了解,在普遍裁员的大环境下 IBM 决定在 2026 年招聘更多初级人员来作为人才储备。目的是通过重新调整岗位任务来提高战略价值](https://sg.finance.yahoo.com/news/ibm-triple-entry-level-us-194414094.html)。这则消息可以间接表明即便如今我们有了“强大”的 AI,但仍然需要由人类来驾驭它,只是工作形式正在发生转变。
18
18
19
-
总体来说,我对 AI 编程有些悲观。它貌似正在消磨我对编程的热情。它让开发人员从编码转向监督,但审查其他人的工作本身就是一件相当乏味的事情。但无可奈何,这已经是事实。
19
+
总体来说我对 AI 编程有些悲观。根本原因可能是它的发展正在消磨我对编程的热诚。它让开发人员从编码转向监督,但审查其他人的工作本身就是一件相当乏味的事情。但无可奈何这已经是事实,一些公司甚至开始强制开发人员使用 AI 工具。但值得强调,我并非在拒绝 AI 工具(请不要这样做),而是正在慎重地观察它们。最近在网上看到一句话,我认为可以作为本篇博客的结尾 —— 如果你不能控制工具,那么工具就会控制你。
0 commit comments