您现在的位置是:新闻

因代码不规范,美国WTS程序员枪击 4 名同事,一人情况危急

2018-09-23 13:57新闻

简介我们见过平安因一个需求,程序员和产品经理打架被开除的个案。现在看来码农打架已经算温柔的了,前几天来自美国的一名程序员因同事不写注释,不遵循驼峰命名,括号换行,最主要还天天 git push -f 等因素枪击了 4 名同事,导致一人情况危急。凶手已死,身份现...

我们见过平安因一个需求,程序员和产品经理打架被开除的个案。现在看来码农打架已经算温柔的了,前几天来自美国的一名程序员因同事不写注释,不遵循驼峰命名,括号换行,最主要还天天 git push -f 等因素枪击了 4 名同事,导致一人情况危急。凶手已死,身份现已由警方查明;一名员工情况危急,两人伤情严重。


本周,一名程序员在WTS Paradigm这家美国企业资源规划软件(ERP)开发商的办公楼持枪杀人,警方已查出了他的姓名。他向四名同事开火,导致一人情况危急。


周三上午10点20分左右,43岁的安东尼·汤(Anthony Tong)出现在办公室,拿出一把事先藏起来的半自动手枪开火。他在威斯康星州米德尔顿的这家公司工作了一年多。


工作人员纷纷逃离办公楼,跑到附近的公司避难。


行凶者随后向短短几分钟内赶到WTS Paradigm现场的警察开枪。四名警察随后开火,击中了嫌犯。嫌犯一送到医院就被宣布死亡。


WTS Paradigm的业务分析员朱迪·拉默斯(Judy Lahmers)说,当时自己正伏案工作,突然听到“像是有人把木板扔在地上,声音很响很响”。拉默斯说,她赶紧跑出大楼,躲在一辆汽车后面。


她说,办公楼的玻璃大门被打碎了。


她告诉美联社:“我头也不回地拼命跑。你只想知道‘该躲起来还是跑远?”


她表示她知道一名同事被子弹擦伤,但无大碍。她不知道关于枪击案的任何其他信息,但表示“完全出人意料。我们都是搞软件的。我们是很好的团队。”


2018年9月19日,紧急救援人员抵达威斯康星州米德尔顿WTS软件公司的枪击现场。据市政府官员称,四人在麦迪逊郊区的枪击事件中受枪伤。


这家ERP公司的营销经理赖安·梅兰德(Ryan Mayrand)在昨天的一份声明中说:“WTS Paradigm的整个团队对今天发生在米德尔顿办公室的这起事件感到震惊和伤心。”


“我们向我们的所有员工及其家属表示最诚挚的问候。遇到这种情况下,你明白抱团取暖有多重要。我们为米德尔顿警察局、戴恩县警长办公室及其他急救人员深表谢意,他们的反应非常迅速。”


在周四招开的记者招待会上,警方表示这名死者自去年4月以来一直在WTS工作,没有犯罪记录,枪击事件发生时独自作案。目前,没有任何迹象表明到底是什么原因引发了这起流血事件;警方已呼吁目击者与警方取得联系。


一名受害者仍情况危急,另外两人身受重伤。第四个人被子弹擦伤。受害者的身份尚未确定。如下是WTS公司官方网站首页:

 这件事目前在国外引起了广泛的讨论,有人猜测说可能是:“同事不写注释,不遵循驼峰命名,括号换行,最主要还天天 git push -f 等因素”激怒了这名行凶者。还有人猜测是 PM 老改需求!不管真实情况如何,我们都应该具有认真的人生。


 从这个新闻,工匠小猪猪来说说个人看法:


 1、代码不规范,代码像一坨屎,交接给别人或者一起合作确实难受,代码是给人看的。一个技术团队一定要有代码规范。包括git提交代码的commit info也是要有规范的,这种"test1"、"asdafa"、"123"的git commit信息想死吗?参见小猪猪公众号之前发的几篇讲规范的文章《【译】How to Write a Git Commit Message》《我崇尚的工程师文化(一)之开发规范》。


 2、代码是会腐烂的,我们经常见到一个方法几千行、大量的if else逻辑、命名不规范等等,每次提交代码,需要像美国童子军军规一样,“让代码比你来时更干净”。


3、团队内部需要对一个业务模块,如交易、商品等建立AB角的code review机制,每个新的技术项目做完了都可以团队内都可以对新的技术项目进行整体的code review。


4、美国没有阿里巴巴Java开发插件p3c,在进入正题介绍这款插件之前,首先来谈一下《阿里巴巴Java开发手册》,电子版下载地址:链接: https://pan.baidu.com/s/1KhgjjYNJJ6fD1LQim1-Bdw 提取码: pcce



IDEA怎么使用P3C插件呢?打开IDEA,选择Preferences - Plugins - Browse repositories后,在输入框中输入"alibaba",可以看到返回结果中有"Alibaba Java Coding Guidelines"。

有三种方式可以扫描代码:

1、 在项目目录上右键点击也会出现这两个功能按钮,点击绿色的按钮即可开始扫描代码,或者在工程目录上右键也会出现检测的功能按钮。

2、 如果不想全部扫描,只扫描当前编辑的文件的话,在当前文件面板中点击右键也会出现此功能按钮。

3、前面说的两种方式是手动检测,插件也提供了实时监测的功能,此功能默认开启,一旦开启则会在你编写代码时就会实时监测,一旦有不符合规范的语句就会出现错误提示。

由于大括号不规范的问题,if下方有错误红线的提示。

idea中有quick fix快捷键option/alt+enter,点击后则可以自动添加大括号。

扫描代码后,不符合规约的代码会按Blocker/Critical/Major三个等级显示在下方面板中,如图:

左边是扫描出的不符合规范的代码,依次点进去可以看到是代码的多少行出现了规约问题以及哪一个规约问题,右边则是规约的详细描述及实例代码。

不仅如此,右侧还有quick fix的按钮,点击后直接可以改正代码,但是并不是所有的问题都有此按钮,有些问题还是需要手动修改。

Tags:代码,规范,美国,WTS,程序员,枪击,同事,一人,情况,危