漫话:程序员要失业了? 机器人开始在GitHub上修Bug了。

电子说

1.3w人已加入

描述

 

 

程小员

擅长编程

周末午后,我正在家里疯狂的撸着代码,沉浸在Coding之中。这时候,女朋友急急忙忙的跑过来。

还在写代码么,程序员小哥哥。 

是啊,怎么了?

快来看看新闻吧,程序员要失业了?  

刚过完1024,咋就突然要失业了呢?  

会编程的机器人已经被开发出来了呀。  

额?你确定?

据 MIT Technology Review 报道,一位名为“Repairnator”机器人在 GitHub 上“卧底”数月,伪装成人类,查找错误并编写和提交修复补丁,结果有多个补丁成功通过被采纳。

在GitHub上,可以找到repairnator的介绍:

介绍说,Repairnator 是由 KTH 瑞典皇家理工学院的软件技术教授 Martin Monperrus 及其朋友构建的机器人,目前已被证实可以发现错误并编写高质量补丁。Martin Monperrus 表示:“这是自动修复程序研究中的里程碑,它拥有和人类开发者竞争的潜力。”

这类新闻太多了,介绍也可能是吹牛呀。

可是新闻说在GitHub上可以找到这个机器人提交的代码呀。  

额、这我要去看看啦。

据报道,团队将 Repairnator 伪装成了一个名为 LucEsape 的 GitHub 用户,他们给 LucEsape 上传头像并填写个人资料,看起来就像是一个普通的开发者一样。

在GitHub上可以找到这位LucEsape的主页:

在LucEsape的个人介绍的主页中,贴的就是机器人Repairnator的项目地址:https://github.com/Spirals-Team/repairnator

更重要的是,这位LucEsape一共关注的24个项目中,23个是Java项目,另外一个是JavaScript项目。看来他对Java还是挺感兴趣的啊。

并且,这位机器人开发者,还挺勤奋的。在过去的几个月中多次提交过代码。

看到了吧,好像这个机器人还真的挺厉害的嘛。

其实也没有报道中说的那么悬啦。

为什么这么说呢?

因为我看了他提交的代码呀,都是些静态扫描可以扫出来的简单问题修复。

让我们看一下这位机器人老兄提交的代码:

code 1 :  

code 2 :  

code 3 :  

可以看到,LucEsape提交的代码中,大部分都是做NPE的修复。其实只是在很多静态代码扫描工具的基础上更近了一步,他提供了修改意见,然后做了pull request。

况且,他所有的提交也并没有被完全接受。比如下面这个commit就被作者拒绝merge了:

哦,那就是说他还有进步空间咯?  

是的,还有很大的进步空间。  

不过,这也未尝不是一件好事。 

为什么这么说呢?

现代软件开发时非常复杂的,在开发过程中难免会出现错误。查找和修复bug是一件需要耗费大量资源的事情,虽然现在已经有很多成熟的静态代码扫描工具可以发现问题,但是还都需要程序员人工的改代码。

如果这类bug修复的机器人真的成熟起来,在代码交付之前,帮助开发团队寻找并修复一些Bug也是一件很不错的事情。

嗯嗯,那未来会不会出现更厉害的机器人,可以写代码的哪种呢?  

额、我拒绝回答这个问题。

关于这件事,你怎么看?

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分