acm-header
登录

ACM通信

BLOG@CACM

机器人要接管了!(也许还没有)


Bertrand Meyer

你知道这种感觉吗?你打开一本你已经开始信任的出版物的最新一期,因为这么多年来,它在你的领域之外的许多领域教会了你很多东西;你注意到这一次它谈论的是你知道的事情;你知道作者根本不知道她在说什么吗?

几周前纽约书评发表了一篇文章,作者是Sue Halpern,标题是“机器人和算法如何接管”。作者指出,以前也有人做过类似的预测,但她的预测是真实的。我不确定机器人是否正在接管,但我注意到这段话:

在未来20年内,编程也有50%的可能被外包给机器。
事实上,这种情况已经发生了,部分原因是程序员越来越依赖于“自我纠正”代码——即自我调试和重写的代码。

哇!很快就会没有测试人员的工作,不久之后程序员也会失业!

事实证明,自动校正是我了解的一个领域,我已经在这方面研究了好几年。我们的系统名称非常清楚:AutoFix。在[2]中,您可以找到AutoFix的概述和预期的软件工程和验证场所(ISSTA、TSE、ASE、FASE和最新的ICSE)的最新出版物列表。其他几个小组也在这个领域工作;请参阅我们论文中的参考书目。我认为我们的研究结果相当先进,所以哈尔彭的说法让我很感兴趣。

目前在自动bug修正方面的工作做得很好,但如果你读过相关文章,你会发现大量测试人员和程序员失业的风险并不会很快出现,因为机器人已经取代了他们的工作。我将能够说明AutoFix等工具能够解决程序修正问题;但即使我的社会良知不会伤害(这些是帮助程序员的工具,而不是取代它们),恐怕我们距离自动bug检测和修正的大规模适用性还很遥远。是的,近年来我们已经取得了很多进步,你已经可以下载和使用AutoFix,但这仍然是前沿技术。它假设程序员使用Eiffel并在代码中包含契约,而现在全世界都还没有这么做。(该领域的一些其他工作对技术做出了不同的假设。)

我读过出版的哈尔彭的文章;在查看在线版本时,我注意到她在上面一段的末尾添加了一个脚注,以支持她的主张:这是引用了Vivek Haldar,一个“资深谷歌开发人员”,他在与尼古拉斯·卡尔(Nicholas Carr)的采访中说的,尼古拉斯·卡尔是最近这本书的作者《玻璃笼子:自动化和我们,这

所有这些工具(ide)鼓励的行为不是“深入思考并仔细编写代码”,而是“只写一个蹩脚的代码初稿,然后这些工具不仅会告诉你哪里出了问题,还会告诉你如何改进它”。

这句话至少有一半是正确的:实际上程序员确实经常编写“他们代码的第一稿很糟糕(虽然不是所有人都这么做)。Haldar还说得对,现代ide提供了一些改进代码的指导。但这些设施很原始。它们与哈尔彭的读者认为普遍使用的那种人工智能风格的魔法相距甚远。

为了确保——谁知道呢,我可能错过了我自己领域的一个重大发展——我把这篇文章给几个从事程序自动修正的同事看,他们都笑了。我还查阅了多产的博主Haldar;意料之中的是,我不同意他的所有观点,但他显然是一个经验丰富的软件工程师,我不相信他自己会做出关于自我纠正程序的耸人听闻的声明,Halpern从他对Carr的评论中推断出来——这是一个简单的尝试,查阅最近的软件工程文献,或与该领域的研究人员交谈,会立即显示为没有根据。

新闻记者的夸大倾向并不仅限于小报。高雅的出版物,如纽约书评一般都有较高的标准;但是,关于科技的写作有某种东西让作者和编辑抛弃了所有的谨慎。

参考文献

[1]苏Halpern,机器人和算法将如何接管(尼古拉斯·卡尔的评论《玻璃笼子:自动化和我们),纽约书评, 2015年4月2日版,网上可查在这里

苏黎世联邦理工学院[2]自动修复页面,可在se.inf.ethz.ch /研究/ autofix /,并链接到Andreas Leitner, Carlo Furia, Yu Pei, Yi Wei, Martin Nordio, Andreas Zeller (Saarbrücken大学),Bertrand Meyer的文章


没有发现记录

登录为完全访问
»忘记密码? *创建ACM Web帐户
Baidu
map