没有一个经过职业道德训练的人会同意写一个摧毁巴格达的程序。基本的职业道德会让他们写一个摧毁城市的程序,巴格达只是其中的一个参数。——Nathaniel Borenstein
Uber利用软件在数百个城市非法开展业务
在两个小时以前,纽约时报报道了关于Uber的大新闻。Uber从2013年起就利用一个复杂的工具来破坏当地的额法律。
这个项目被称作Greyball,它的工作原理如下所示:
- 在Uber还不是合法的城市(还有很多城市),Greyball可以识别那些会破坏司机,扣留他们的车辆的便衣警察。
- 当那些便衣警察打开Uber的APP想要抓捕司机时,他们看的是虚假的Uber在城市行驶,他们从来都逮不到一辆车。
- 因为那些在APP上显示的车并不是真的,那些警察也抓不到司机,他们没法逮捕任何人。
最后的结果是,Uber可以轻松地忽视这个城市还没有批准共享驾驶,并在任何地方开展他们的业务。
让我们花点时间来看看这件事情的本质。Uber实际上已经利用它强大的技术凌驾于法律之上了。
Uber利用了天才般的手法来识别乘客。根据警察使用的信用卡,Uber可以交叉检查商户的数据库和公务员数据库,来最后找出谁最有可能是警察,然后禁止他们使用Uber。
知道警察总是在错误的时间出现在错误的地点,他们才知道他们永远不可能成功地逮捕一个司机。这就是为什么Uber可以在几年的时间里在有的城市非法开展业务,直到一些Uber的工程师出于负罪感揭发了这件事。
Zenefits 利用软件非法认证了一些保险机构
Zenefits.jpegZenefits是一家为公司提供软件的公司,然后向他们推销保险包。
在2016年,被揭露出CEO, Parker Conrad曾要求开发团队开发一个工具来帮助Zenefits通过代理欺骗的方式来通过授权的过程。
在定制浏览器插件的帮助下,Zenfits的代理人可以跳过一个法律规定的52小时的课程和所有的考试。
Zenefits的代理人可以直接开始销售保险而不用雇佣一个人花一周半的时间来学习所有的课程。
Conrad在发现这件事情后,很快就辞职了。这个丑闻让公司蒸发了一般的估值(25亿美元),也导致了几百个人失去了他们的工作。
大众利用软件卖了1000万超排量的车
Volkswagen.jpeg从2008年到2015年,大众生产了超过了1000万”干净柴油车“。很多工程师对柴油车可以比标准的无铅汽油车排量少这么多,却依然可以有很大的行驶里程感到很惊讶。他们的疑问终于在2014年被证明,当有些研究员发现这些车使用"defeat device"(defeat device是汽车ECU里的一段代码,这段代码可以让汽车辨别出自己是不是正在被检测尾气,以此来调节尾气处理装置,通过尾气排放检验。)
大众的CEO曾经要求软件工程师想办法来骗过环境保护机构在他们进行排放测试时。他们知道在这些测试中,监管机构将使用特定的参数。所以他们写了一个这样的逻辑:如果这些参数被选中,引擎将运行在一个特殊模式。
这个“defeat device”的代码使得大众柴油车的氮氧化物比法律规定的要高得多。最高达到联邦标准的40倍。
这种排放物会导致肺癌。根据麻省理工估计这些排放的尾气最终会导致60个人过早死亡,而这仅仅只是在美国。
没错,开发者写出来的代码杀死了无辜的人。
大众在2016年花了147亿美元解决这个问题,至今还在这件事情的阴影下。受损的声誉永远不会恢复。这个事件留下了对我们这个时代的永久环境威胁,而这一切都是因为几个遵守命令的程序员带来的。
巨大的权力应该有巨大的责任——Uncle Ben
这个世界越来越依靠程序员创造出的代码。因此,很多程序员很快地变成了世界上最有权力的人。
代码有巨大的威力。通过代码,你可以把想法变成现实。你可以让世界变得更美好,或者你也可以毁灭它。
你也许可以愚弄监管者,警察和法官。你也可能可以欺骗公众,你也可能继续标记警察不被抓到。
但这不是对的。
程序员有巨大的权力,他们应该负责任地使用这个权力。
如果你是一个程序员,或者正在成为一名程序员,我强烈要求你读一读Bill Sourour的文章The code I'm still ashamed of.
如果有人叫你开发出明显是非法的,或者彻头彻尾的邪恶的程序,去媒体曝光出来。上述三个例子的程序员都本可以拯救这个世界和避免一些心痛。
记住only YOU can prevent evil code.
网友评论