新智元报道

编辑:好困 犀牛

【新智元导读】一篇题为「New Junior Developers Can’t Actually Code」的博文炸开了锅。资深码农Namanyay对AI工具在软件开发中的广泛应用表达了忧虑——AI正在让新一代开发者跳过基础知识的学习,沦为「复制粘贴(CV)工程师」。这篇文章迅速蹿红,引发了包括马斯克在内的众多业内大佬的热议。

AI辅助编程的时代已经到来,代码生成工具触手可及。

这本应是开发效率的巨大飞跃,但一个令人不安的问题却浮出水面:我们是否正在培养出一批只会「复制粘贴」,却对代码底层逻辑一知半解的程序员?

当便捷的AI工具取代了艰苦的学习和思考过程,我们是否在无意中扼杀了真正的技术创新和深度理解?

几天前,著名软件开发者Namanyay发表了一篇名为「New Junior Developers Can’t Actually Code」(新入门的开发者根本不会写代码)的博客,表达了对现在AI加持下的软件开发模式的担忧。

文章发表后爆火!很快就有了10万+观看,100+条评论。


网友Deedy评论道:「作者指出,AI正在让程序员失去对事物的理解能力。」他评价Namanyay的文章是精彩的博客,「这和互联网不一样,互联网只是替代了查找事实的过程,还会提供解释;而AI却替代了所有的思考过程。」


马斯克似乎对Namanyay的观点不太买账,在帖子下面评论道:「现在的人,离了电子地图和GPS,在城市里连路都找不到」。


不过,很快就遭到了网友的反驳:「如果谷歌地图每用五次就产生一次幻觉,记住如何到达目的地可能就变得非常重要了!」


那么Namanyay文章中究竟表达了什么样的观点呢?以下是Namanyay文章的核心内容。

AI改变了开发方式

有件事一直困扰着我,我觉得有必要和新开发者们谈谈。

我们正处于软件开发的一个奇特的转折点。我遇到的每个初级开发人员都在24/7不间断地运行着Copilot、Claude或GPT。他们交付代码的速度比以往任何时候都快。

但当我深入了解他们对所交付内容的理解时?情况就变得令人担忧了。

没错,代码是能运行,但是问他们为什么要这样而不是那样实现?则是鸦雀无声。当被问到边界情况时?更是一脸茫然。

过去通过艰难解决问题而获得的基础知识就这样……消失了。

我们正在用快速解决方案换取深度理解,虽然当下感觉很好,但我们将来必定要为此付出代价。

回想那些需要真正动脑思考的日子,我最近意识到,现在有一整代新程序员甚至不知道StackOverflow是什么。

在「Claude」还不是聊天机器人,而是信息熵(information entropy)领域开创者的时候,调试编程问题的方式是完全不同的。

首先在Google上搜索。然后,期待着某个遇到相似问题的苦主曾经发帖求助。

如果运气好,你就能在一个叫「Stack Overflow」的网站上找到一个来自某位经验丰富的技术大佬详细的、深思熟虑的(通常带点居高临下的)答案。

这是我12年前提出的一个问题,看看Nathan Wall的最佳回答(他已经赢得了超过10,000分的高分,而且显然从2015年起就当上了CTO):


你能想象有人会写出这么详细的回答吗?完全靠手打,没有AI辅助,而且还是免费分享。

我最初的问题当然得到了彻底的解答,但他并没有就此停笔。我学到了很多新知识。有些我甚至不知道存在,还有些是我本不想知道但现在却永远刻在了我的脑海里。

这是你提问时能遇到的最理想情况。如果你遇到特别棘手的问题,却找不到现成的答案,那就只能认栽了。


现在的初级开发人员也太轻松了。他们只需要去chat.com复制粘贴看到的错误信息,更懒的人甚至不愿花30秒切换到浏览器窗口,直接用一个工具就把所有事情搞定了。

这确实方便又快捷。

但是,StackOverflow仍然有一个无可替代的优势:阅读经验丰富的开发者关于你遇到问题的讨论,是最好的学习方式。

这张图表很好地解释了他的观点:


AI能给你答案,但获得的知识往往很浅薄。

在StackOverflow上,你必须阅读多个专家的讨论才能获得完整的认识。这样虽然更慢,但你最终不仅知道什么可行,还明白为什么可行。

想想你认识的每个优秀开发者,他们是通过复制解决方案变得优秀的吗?

显然不是——他们是通过深入理解系统和领会其他开发者的思维过程才达到这个水平的。而这正是我们正在逐渐失去的东西。

我不是想做那种抱怨「现在的年轻人」的老古董。我每天都在使用AI工具,我甚至正在开发一个AI产品。但我们需要诚实地面对,为了这种便利我们正在付出什么样的代价。

我们能做什么?

我一直在尝试各种方法来应对这个问题(因为让我们面对现实,AI注定会继续存在)。

以下是一些确实有效的方法:

  1. 以学习的心态使用AI。当它给你答案时,多问几个为什么。没错,这样会花更多时间,但这正是重点所在。

  2. 找到你的技术社群。可以是Reddit、Discord、Mastodon——只要高手们在那里聚集。那里才有真正的技术讨论,那些能让你恍然大悟的观点交流。

  3. 改变代码审查的方式。不要只检查代码是否可用,要和团队展开深入对话。了解他们考虑过哪些其他方案?为什么最终选择这个方案?让理解思路和最终结果同等重要。

  4. 时不时从零开始构建项目。是的,AI可以为你生成认证系统。但不妨先试着自己动手做一个,你写的代码可能不够优雅,但你会理解每一行代码的含义。这种知识会逐渐积累。

展望未来

现实是,技术加速的进程已经开启,我们无法阻止。

开源模型正在全面接管,用不了多久,AGI就会成为我们口袋里的标配。但这并不意味着我们必须让它降低我们的开发水平。

未来的关键不在于我们是否使用AI——而在于我们如何使用它。或许,我们能找到一种方法,把AI带来的效率和我们需要的深度理解完美结合起来。

欢迎分享你找到的其他平衡之道。或者告诉我我只是个对着时代狂吠的老顽固。不管怎样,让我们一起探讨这个问题。

作者介绍

本文作者Namanyay——一个自十四岁起就从事专业开发的开发者,现在正在构建AI工具以增强人类潜力。


Namanyay在德里公立学校瓦桑特昆杰分校读的中学,9年级时加入了Code Warriors编程俱乐部,11年级当上了副主席,12年级升任主席。

他在13岁时发现了创造和编程这两件事让他无比快乐。高中时期,经常熬到半夜写代码,为自己和客户开发各种网站产品。

他参加了德里各大名校举办的40多场编程马拉松比赛并获奖,也在学校组织了几场编程马拉松活动,其中两场是主办人。比赛项目包括设计和开发两个类别。

Namanyay辅导过很多同学学习平面设计、网站开发和编程,他们中很多人后来都出国留学了,现在在各自的领域都有很好的发展。

从九年级开始,他就在接外包做网站开发。14岁时,在MakeUseOf得到了人生第一份正式的开发工作。在那里待了一年半后,又继续独立接项目做了好几年。

高中毕业后Namanyay进入了华盛顿大学,不过很快就离开了。他以荣誉生的身份被华盛顿大学录取,在就读的第一个(也是唯一的)学期,拿到了满绩4.0,还进入了院长优秀生名单。

之后选择退学去追求自己的梦想,全心投入到与联合创始人Tanay Rajoria一起创办的快速发展的公司。


为了实现更大的突破,18岁时他和几个好朋友一起创立了技术服务公司Dyeus。团队很快发展到20多人,为许多国际客户开发网站和手机应用。

到了24岁,他决定给自己放个长假,觉得为客户打工的日子该告一段落了。凭借着这些年为数百万用户开发企业级软件的经验,Namanyay开始专注于开发自己的产品。


目前他正在打造包括AI代码分析器、空气质量影响&可视化以及趋势分析器&内容助手等一系列个人开源项目。


参考资料:

https://x.com/deedydas/status/1891369030604525831

https://nmn.gl/blog/ai-and-learning

ad1 webp
ad2 webp
ad1 webp
ad2 webp