昨天圣诞节,本应该一个开心的日子,但对有些前端开发者来说,是非常糟糕的一天。在很多技术开发群里,在技术论坛以及 GitHub 社区都炸天了。
因为他们网站上按钮,莫名其妙地就和往常不一样了,多了一块东西,title 居然还是 HO HO HO,有开发者直接吐槽像「像狗啃了一块」。
究其原因,是因为这些网站用了一个开源项目Ant Design,而该开源项目埋了一个在圣诞节触发的「彩蛋」。
据吐槽的开发者称,
①Ant Design 并未之前的更新日志(ChangeLog)中提及这个「彩蛋」;
② 这个「彩蛋」默认是开启,没有提供关闭「彩蛋」的配置。
Ant Design 是什么东西?
Ant Design 是阿里旗下蚂蚁金服的一个开源项目,在 GitHub 上有着 38k+ Star,13k+ fork。从这 2 个数据来看,就知道是一个用户量大的开源项目,而且还有阿里的招牌背书。
Ant Design 官网上有这样一句话:
(Ant Design )服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。
从上面也可以看出,虽然使用Ant Design 的人,基本都是开发者或设计师,但并不是一个开发者或设计师工具。因为它是一个 UI 项目,如果是用在生产项目中,设想一下,会是什么场景。
爆发大量吐槽
对于某些 zf 类网站来说,这个彩蛋简直就是灾难,原因你们懂的。
这些网站的前端,可能就悲催了。有人说因彩蛋导致被迫离职,有人说被扣奖金或绩效了。(希望这些受罚的消息不是真的)
如果你们要问今天开源圈中最忙着关闭 issues 的项目是哪个?
第一名恐怕要颁给 Ant Design。截至 2018-12-25 12:13:50 为止,他们已关闭了 23 个 issue。
工程师的回应
彩蛋引发吐槽后,Ant Design 的工程师是怎么回应的?
此次圣诞彩蛋,正是由蚂蚁金服前端工程师@afc163 在今年 9 月 10 日提交。他在最初的回应中曾提到:「早就最好了被骂的准备」
为何不在更新日志(changelog)中说明有彩蛋,或许可以从@afc163 在 9 月 10 日的一次回复中看出来:
什么才是真正的彩蛋?网友@Winter 评论到:
我来介绍一下什么叫彩蛋,这玩意来自于西方复活节的找彩蛋游戏。这一天,家长会把鸡蛋涂上漂亮的花纹,藏在屋子里庭院里各种隐藏的角落,找到的孩子会获得幸运礼物。
看到没,人家活动是找彩蛋!对,彩蛋是要找的,不找发现不了的!这种突然自己跳出来的蛋,不是彩蛋啊,这叫跳蛋!
有本事就别用???
在昨天跟今天相关的网帖中,少数技术圈网友的观点,就显得不那么体面了。比如:「用人家开源的东西还瞎 bb」、「得了便宜还卖乖,有本事就别用」……
可能他们理解中的开源,和大多数工程师眼中的开源,是两回事。
Ant Design 已删除那个「彩蛋」
圣诞彩蛋事故,在网上引发热议后。Ant Design 在 12 月 25 日中午左右,终于删除了「彩蛋」。
@afc163 也在 12 点左右发了一个 issue,做出了新回应:
另外,蚂蚁金服工程师@玉伯 25 日中午在知乎讨论帖中做出回应:
综合整理:程序员的那些事(ID:iProgrammer),部分内容来源于网络,如侵删。
对于开源项目来说,一个细微的改动就会影响到无数使用该项目的产品、公司、生产环境。
阿里是中国开源的先锋公司,对于事故的处理也一直都很有担当,阿里云“敬畏每一行代码,敬畏每一份托付”也一直是公关文的典范,但 Antd 项目彩蛋变炸弹这件事儿,我们却只能表示遗憾和可惜。开源项目的责任如何看待?怎样避免类似事件再次发生?
对于这次事件,我们也应该反思,并不是所有的开源项目都是安全的,可以放心使用的。而开源项目的作者,也应该有自己的原则和操守,既然开源了,就得想的更多,能力越大,责任就越大。
最后,我想说:使用开源的人得有感激之心,但是贡献开源的人更应该要有敬畏之心。我们感谢每一个开源的人,他们为这个世界贡献了自己的力量,为这个社会提高了效率,而开源的人也应该怀有敬畏之心,尊重每一个使用者,更好的回馈使用者,使用者和开源者是相互成就。
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。