导读:本文是篇深度文章,关于程序员如何使用AI解决问题的。如果你特别依赖AI,那这篇文章适合你。如果你是一名初学者或新手开发者,那本篇更加适合你哦。
有些事儿一直困扰着我,这是我需要和新手开发人员讨论的一件事,当然老兵们也可以参与。
从事实上讲,我们正处于软件开发的一个“奇怪”的转折点。
和我交谈过的每一位初级开发人员都全天候使用 Copilot、Claude 或 GPT。他们交付代码的速度是比以往任何时候都快了。但是当我深入了解他们对自己交付的内容的理解时,事情就变得有些令人担心或担忧了。
当然,代码可以跑起来,但要问为什么它能这样运行而不是其他方式?回答就毫无进展。我再问是不是有极端情况?他便给我一脸茫然。
过去通过努力解决问题而获得的基础知识,现在却……消失了。
我们正在用深刻的理解来换取快速的解决方案,虽然目前感觉很棒,但我们以后一定会为此付出代价。
我们不妨来回味一下。
Stackoverflow 图例:
当然,我最初的问题得到了彻底的回答,但他并没有就此止步。我学到了很多新知识。有些知识我甚至根据不知道,有些知识我甚至不想知道,但现在它们永远铭刻在我的脑海里。
如果你有问题,这是最好的情况。如果您偶然遇到一个特别困难的问题,并且找不到已经回答过你的问题的人,那么运气真不好。
真是方便又快捷。但是,StackOverflow 仍然有一个更优越的原因:
阅读经验丰富的开发人员关于你发表主题的讨论是最好的学习方式。
下面的图表,可以解释我想说的意思:
人工智能可以为你提供答案,但你获得的知识却很肤浅。
使用 StackOverflow,你必须阅读多位专家的讨论才能全面了解情况。虽然速度较慢,但你不仅了解了什么方法有效,还了解了为什么有效。
想想你认识的每一位优秀开发人员。他们是通过复制解决方案而变得如此优秀的吗?不,他们是通过深入了解系统并理解其他开发人员的思维过程而达到这一水平的。这正是我们正在失去的。
我并不是想成为那种抱怨“现在的孩子”的人。我每天都在使用人工智能工具。我真的在开发一个(https://nmn.gl/blog/giga)。
但是,我们需要诚实地对待,为了这种便利而牺牲了什么。
我们能做什么?
我一直在尝试解决这个问题的方法(因为我们需要面对现实吧,人工智能不会消失)。
以下,是对我们实际有效的方法:
首先,以学习的心态使用人工智能。当它给你答案时,询问它。问它为什么。当然,这需要更长的时间,但这正是重点所在。
接下来,找到你的部落。Reddit、Discord、Mastodon——这都是聪明人聚集的地方。在那里你会发现真正的讨论,那些让你说“啊,我从来没有这样想过”的讨论。
以不同的方式进行代码审查。不要只检查代码是否有效,而是要与团队展开对话。他们考虑过哪些其他方法?为什么他们选择这种方法?让理解过程与最终结果一样重要。
有时候,一切都是从头开始构建的。是的,人工智能可以为你生成该身份验证系统。但请先尝试自己构建一个。你会写出更糟糕的代码,但你会理解其中的每一行。这种知识是累积的。
期待
现实情况是这样的:加速已经开始,我们对此无能为力。开源大语言模型正在接管,我们将在不知不觉中拥有通用人工智能。
但是,这并不意味着让它使我们成为糟糕的开发人员。
未来并不取决于我们是否使用人工智能,而取决于我们如何使用它。也许,只是也许,我们可以找到一种方法,将人工智能的速度与我们需要学习的理解深度结合起来。
如果你找到了其他方法来平衡这个问题,请告诉我。或者告诉我,我只是一个对着云彩大喊大叫的老头。
不管咋样,让我们一起解决这个问题吧!
作者:聆听世界的羊
原作者:
Namanyay,从十四岁起成为一名专业开发人员,现在致力于构建 AI 工具来增强人类潜能。我撰写有关技术、初创企业和工作未来的文章。
X平台:
https://x.com/namanyayg
参考:
https://nmn.gl/blog/ai-and-learning
本文为 @ 万能的大雄 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。