刚刚过去的圣诞节,算是在年轻人中极受欢迎的“洋节”。当然,这个充满了甜蜜氛围的节日其实更适合情侣,和“注孤生”的程序猿们好像没多大关系——但今年不一样了。
为什么呢?今年圣诞节不少程序猿因一颗隐藏在代码中的彩蛋差点踩雷,有些甚至因此丢掉工作,被公司裁撤。
圣诞节对程序猿还真是不太友好,身为单身狗要被情侣虐心,好好的代码也埋下了坑,过节倒成了“过劫”。
彩蛋变炸弹
antd 即 Ant Design,是阿里蚂蚁金服一套开源企业级 UI 设计语言和 React 实现,这套开源代码不但提供完整的类型定义文件,还附带了从企业级中后台产品中提炼的交互语言和视觉风格,可以说是开箱即用,一直备受开发者们的喜爱。
就是这么个广受喜爱的框架,在今年的圣诞节,让所有使用 Antd 开发的程序员们,都度过了一个难忘的 " 圣诞劫 "。
事故发生在 UI 界面的一个按钮上,平安夜过后,圣诞节来临,这些开发者开发的前端页面的按钮上,突然多出来了一片积雪,还配着一个 "Ho Ho Ho!" 的提示。
这个不曾提前告知、无法手动禁止、并且 " 潜伏 " 了 106 天之久的按钮 " 惊喜 ",打得开发者们措手不及。更有甚者,因为很多政府项目、军事项目、宗教项目等严肃场景中也一个不落地中了招,导致许多项目方遭遇客户投诉,开发者们背锅被裁。
对于这次事件,GitHub、微博、知乎等平台的开发者都一边倒地对这个未曾事先告知的圣诞彩蛋进行了批判吐槽。
而且,因为是无法手动禁用的,很多开发者就只能自力更生地思考解决方法。
开源谁来背锅
很快,蚂蚁金服前端工程师 @偏右悄悄地 表示,这个 Ant Design 圣诞彩蛋起源今年9 月 10 日的一次提交(居然都埋了一百多天才被发现),代码实现会在 12 月 25 日当天给所有按钮添加积雪效果,并增加 `HoHoHo!` 的浏览器默认提示信息。他还表示,这完全是他 " 个人的一意孤行且愚蠢的决定 "。
此外他还提到,这一 " 彩蛋 " 的影响范围是 Ant Design 3.9.3、3.10.0~3.10.9、3.11.0~3.11.5 版本,并且目前已经发布了修订版本 3.9.4、3.10.10、3.11.6,更新至相应的版本即可修复,使用了语义化版本的直接重新安装 node_modules 并重新下载即可。
最后他郑重强调,代码里已经没有其他的彩蛋了!未来也会继续接受开发社区的监督,但是开发者们显然不是很买账,仍然颇有微词。
这次antd 被批评的主要原因还在于,antd 在宣传时自称为企业级开源项目,这样随意修改代码显然与企业级的承诺相违背。
同时,antd 是公司级的开源项目,这样欠缺考虑的修改也损害了背后公司在开源上负责任的形象。最后,能力越大,责任也越大,antd 作为很多项目的底层依赖,在做功能修改后未告知用户,在用户发现后没有迅速解决问题而是用不当言辞继续激怒用户。
不管怎样,antd 作为业内领先的前端组件库之一,此次却无视不同文化、政治背景乃至于宗教信仰的因素,强行上演这么一出 " 强买强卖 " 的乌龙事件,毫无疑问会让开源社区的信任度大打折扣。
閱讀更多 IT科技精選 的文章