AI是放大器,提升软件交付能力。报告显示开发者对AI不信任,但这“健康的怀疑”是成功的关键。应像对待问答网站答案一样,批判性验证AI输出,而非盲目信任。
译自:Developers Do Not Trust AI, and That's a Good Thing
作者:Steve Fenton
我过去的一个爱好是为独立音乐杂志撰稿,例如《Spill Magazine》(在音乐场所免费派发)和《DV8》(在发廊免费派发)。多年来,我见证了数百支未签约乐队,并学到了一个重要的教训:扩音器能让你的声音变得非常响亮,但它并不能从根本上改变你所做的事情是好是坏。
根据 DORA 的 AI 辅助软件开发现状报告,这个扩音定律同样适用于软件开发。AI 是一种放大器,它将 提升你软件 交付能力的音量,无论是好是坏。
这就是为什么我发现报告中关于信任的发现如此令人欣慰。
我们不信任 AI
报告发现 AI 几乎无处不在。几乎所有人都(95%)在工作中使用 AI,并认为它提高了他们的生产力(80%)和代码质量(59%)。但他们并不信任它。事实上,当被问及是否信任 AI 生成的输出时,回应是压倒性的“有点”。
这让许多人思考我们如何才能提高对 AI 的信任。有一种看法认为,如果我们能让技术人员信任它,我们将获得更大的收益。然而,这并不是我们应该努力实现的结果。
AI 成功采用的一个因素无疑是对其提供的答案保持健康的怀疑态度。鼓励人们增加对 AI 的信任会降低自主性,削弱个人责任,并降低警惕性。
无需绝对信任
成功的软件开发者都掌握了批判性思维技能,使他们能够预见潜在的陷阱,并预测事情可能出错的方式。当你创建大规模使用的软件时,你认为不典型的情况会频繁发生。
当我为全球汽车巨头使用的平台工作时,我们会在短短五分钟内处理超过 400 万个请求。我们正在开发一个功能,我的大脑正在思考潜在的 故障场景和边缘案例。当我强调一个潜在的陷阱时,业务人员常常不予理会。他们说:“发生的几率是百万分之一。”然而,这意味着它每天可能发生超过 1,152 次,所以我们必须加以考虑。
当开发者抱有怀疑心态时,这是健康的。他们正在以规模化的方式思考,并防止一系列持续的破坏性事件。我的团队遵循“你构建,你运行”的模式,因此我们非常有动力通过 创建健壮的软件 来让寻呼机保持静默。
优秀的 开发者能够提前思考,并在编写一行代码之前预防问题。对 AI 生成的输出保持低信任度是这种思维模式的关键方面。
AI 模型就是问答模型
尽管 AI 通常被认为是颠覆性的,但通常情况下,现有模型可以(也应该)被应用。那些不理解这一点的人正在重新学习小批量和以用户为中心的经验教训,因为 AI 只会加剧一次性改变太多,以及在了解某个功能创意是否对用户有帮助之前过度投资该功能的问题。
同样,我们有一个现有的模型可以应用于 AI 生成的代码:问答模型。
当你在 Stack Overflow 上找到一个答案时,你不会仅仅将其复制粘贴到你的应用程序中。这些网站上的答案通常包含几行直接解决问题的关键代码,以及许多完成示例的额外辅助代码。采用这些核心代码行存在一定的风险,而采用辅助代码行的风险更大。
你会看到开发者偶尔评论强调这些辅助代码行的危险,虽然他们没错,但如果辅助代码行中包含更多更好的代码,答案的帮助作用就会减弱。
经验丰富的 开发者会使用答案来理解 如何解决他们的问题,然后编写自己的解决方案,或者对答案中的代码进行实质性调整。我们应该对所有非我们编写的代码保持同样的保留态度,无论是来自问答网站还是 AI 助手。你没有理由比信任问答网站上的答案更信任 AI 生成的代码,而问答网站上的答案很可能最初就是 训练数据 的一部分。
AI 警告过你
对 AI 生成的代码持怀疑态度不应该是一个有争议的立场。当你开始使用这些工具时,它们本身就提供了这些警告。所有使用编码 助手和 AI 聊天 的人都曾点击过类似“ChatGPT 可能会犯错。请检查重要信息。”的消息。
如果我们对它们抱有高度信任,那将是愚蠢的,而且结果会更糟。
虽然 AI 辅助相对较新,但经验丰富的软件开发者正在运用健康的模型来处理它生成的代码。这就是为什么减少繁重工作热情最好与适度的信任水平相结合。