> 新闻 > 国内新闻 > 正文

新闻联播结尾

每一行代码都令人敬畏吗?蚂蚁代码鸡蛋炸出一个圈子

    本文来自微信公众号:InfoQ(ID:infoqchina),作者:覃云、徐川,编辑:小智。对于开源项目来说,一个细微的改动就会影响到无数使用该项目的产品、公司、生产环境。阿里是中国开源的先锋公司,对于事故的处理也一直都很有担当,阿里云“敬畏每一行代码,敬畏每一份托付”曾是公关文的典范,但 Antd 项目彩蛋变炸弹这件事儿,我们却只能表示遗憾和可惜。开源项目的责任如何看待?怎样避免类似事件再次发生?12 月 25 日,正当人们沉浸在节日的气氛中时,部分开发者突然发现他们开发的 Web 网页的界面发生了变化,按钮上方出现“积雪”,经过探索发现这是前端 UI 组件库 Ant Design(简称 antd)提前埋入一个未经声明的“彩蛋”,事件迅速发酵,引起了巨大争议。 事件背景 现在让我们再来回顾一下整个事件的发展过程:12 月 25 日上午,Antd 的用户发现网站上一个正常的按钮上方出现了“积雪”的 logo,如下图所示:经过查看,Antd 的用户在工作后台上发现按钮的 class 多出一个 chrismas,title 变成 Ho Ho Ho,然后再去查看 antd 源码,发现:最开始,开发者以为是被黑客代码植入了,在反复检查之后才确定是代码中埋入了定时的“圣诞节彩蛋”。不久,此事就开始在知乎和 Antd issue 上引起讨论,很多开发者表示愤怒与不满。很多开发者认为,Antd 是一个通用库,不应该在里面加彩蛋,尤其 Antd 大都是 2B 的,它的用户对安全、稳定、可控性的要求更高,发生一些细微的错误都可能影响一个公司的业务,再者,如果今天被随意加入一个彩蛋,那么明天就可能被人引入病毒,这让开发者很是恐慌。最后,这个彩蛋没有下线机制,让开发者无所适从。有开发者半开玩笑说,如果不是圣诞节而是中国的传统节日也许就不会引起那么大的争议了,因为有些单位有明令禁止过洋节的规定,试想一些,如果这些禁止过洋节的网站(如个别政府网站)的按钮都是圣诞节的 logo,后果可想而知。更有传言,个别程序员因为此事被用来祭天。 当事人的回应 由于事态持续发酵,昨天下午,在 Antd 开源库中加入这些彩蛋代码的工程师偏右在知乎上对此事做出了回应:Ant Design 圣诞彩蛋起源自 2018 年 9 月 10 日我的一次提交:,并增加 Ho Ho Ho! 的浏览器默认提示信息。这完全是我个人的一意孤行且愚蠢的决定,是我的错误给大家造成了不良影响,非常抱歉。同时,他还给出了修复这个问题的方案:目前圣诞节彩蛋影响的 Antd 版本包括:3.9.3、3.10.0~3.10.9、3.11.0~3.11.5为此,Antd 团队发布了修订版本:3.9.4、3.10.10、3.11.6,相关用户只需更新至相应的版本即可,使用了语义化版本的直接重新安装 node_modules 并重新下载即可。蚂蚁前端负责人玉伯也在知乎回应(摘录):这件事确认是由我们在代码中预埋的彩蛋导致,现在明确认定这一举动是错误的。这个彩蛋有多么欠妥我们不再赘述,对大家造成的各种影响,antd 开发团队致以诚挚的歉意。感谢所有热心用户提出的批评指正,感谢你们的中肯建议。开源得益于大家的信任,我们会立刻开展复盘并深刻吸取这次教训,并重新 review 代码更新评审机制。后续 antd 代码库里不会再加入与功能无关的代码,请大家持续监督。不过,关于后续处理等,InfoQ 联系了蚂蚁金服相关人士,他们不愿公开。 如何看待开源项目的责任 如今的开源,早已不是自由软件时代的理想主义。很多公司都参与到开源中来,它们的动机,除了一些回馈社区和分享精神外,还掺杂着商业和利益上的考量,其中包括:通过领导关键开源项目,成为某行业事实标准,从标准中获取利益;开源核心代码,基于核心代码提供付费的咨询和外包、资源服务;通过开源项目,提升团队成员的技术能力和凝聚力,打造技术品牌,方便对外做技术招募。不过,在遍地商业化的开源里,前端的开源又有其特殊性,因为前端的技术很难直接带来利益,上面的三种好处里,最多占第三条。这导致前端开源有一定的随意性,之前在前端开源领域也发生过人为原因的影响非常大的恶意事件:left-pad 事件:作为很多项目的依赖的作者基于个人原因将项目从 NPM 包管理器中删除,导致很多项目和网站无法正常工作;event-stream 事件:一个令人尊敬的开源作者因为项目众多缺人维护,将项目权限转送他人后竟然被植入比特币钱包后门。前端开源代码缺乏商业化元素,让一部分人认为随意修改代码并没有责任,对于一些个人的小型项目来说这么说并没有错。antd 的修改本身并不会带来直接损害,但在宗教性节日在生产环境做无法下线的“彩蛋”,显然欠缺考虑,并带来一系列的间接损害。而且,antd 在宣传时自称为企业级开源项目,这样随意修改代码显然与企业级的承诺相违背。同时,antd 是公司级的开源项目,这样欠缺考虑的修改也损害了背后公司在开源上负责任的形象。最后,能力越大,责任也越大,antd 作为很多项目的底层依赖,在做功能修改后未告知用户,在用户发现后没有迅速解决问题而是用不当言辞继续激怒用户。这些才是我们对于 antd 批评的主要原因。 怎么避免类似事件再次发生? 从 antd 的 issue 区可以看到,事件在很短时间内就演变成一场狂欢,这其中固然有因为当事人在 Github 上的回应不当导致事件失控的原因,也不乏一些人带节奏或者借题发挥,这显然已经超出了界限。在这里,我们也呼吁读者不要参与,不要传播那些恶意段子图。现在,我们应该思考的,是怎么避免类似事件再次发生。经过此次事件后,想必国内公司在操作开源项目时会更加谨慎。对于底层依赖型的代码,我们要尽量保持稳定,不要随意修改代码。其次,在修改导致任何功能变化的代码后,一定要在 changelog 里体现出来,这才是负责任的做法。最后,完善开源项目的管理流程,要有人能够把关代码,不让一些欠缺考虑的代码合并到主线。如果真想做好开源,这些是必须要做到的。对于开源项目的用户来说,要跟踪所有依赖代码的所有更改显然是不太可能做到的,这就要求在技术选型时要慎之又慎,在不同的场景选择不同的技术,在面对严肃的场景时,一定要选择成熟 / 稳定 / 可靠的技术,这也能从一定程度上避免问题。在面向年轻用户时,选择更新潮的技术,这样即使出现问题也有更高的容忍度。本文来自微信公众号:InfoQ(ID:infoqchina),作者:覃云、徐川,编辑:小智。

    

    

     *文章为作者独立观点,不代表网立场

     本文由 InfoQ 授权

     网 发表,并经网编辑。转载此文请于文首标明作者姓名,保持文章完整性(包括注及其余作者身份信息),并请附上出处(网)及本页链接。原文链接:

    

    

     未按照规范转载者,保留追究相应责任的权利

    

    

     未来面前,你我还都是孩子,还不去下载 App 猛嗅创新!

当前文章:http://www.theweps.com/vah1/8372-140250-73623.html

发布时间:10:50:49

广州设计公司  工业设计  免费VPS  二四六彩  二四六彩  二四六彩  广州设计公司  广州产品设计  免费VPS  广州设计公司  广州外观设计  

{相关文章}

日产传媒:前日产汽车公司代表董事凯利被保释出狱,新浪财经

    日吕丽萍反同_电脑主机声音大网本媒体:日产汽车公司(Nissan Automobile Company)前代表董事凯利(Kelly)已获保释。据共同社报道,12月26日,CNN,日产汽车公司(Nissan kn空滤_宋清晨网Automobile Company)前代表董事格雷格凯利(Greg Kelly),62岁,最近被指控违反金融商品交易法。25日,东京地区法院决定保释。保释金是七千万日元,是同日支付的。东京地区检察院拒绝接受法院的判决,提出申诉,但被法院驳回。凯利在25日晚上获保释。据报道,凯利被拘留了37天。日本媒体说,在东京地理检查和特别搜索部的案件中,被告很少在短时间内认罪并获得保释。凯利通过辩护律师发表声明说:“没有虚假的记录。法庭将证明我错了。我希望恢复www.jsyst.cn_wellbox网我的名誉,尽快回到我的家庭。法院认为,保释的条件包括限制在日本特定地点的居住、禁止出国旅行、禁止与日产相关人士接触、以及要求法院准许其出席董事会。根据辩护律师的说法善婷_新朗逸价格网,凯利的脊椎患有慢性疾病,并且抱怨手和脚麻痹。他直接从东京拘留中心前往茨城县的医院。凯利向广东省财政局提出申请,怀疑他为日产前董事长戈恩从2010财年到2014财年的薪酬支付了49.87亿日元的投资组合报告,并于本月10日与戈恩一起被起诉。据有关人士透露,戈恩辞职后得到的报酬并未包括在报告中。凯利说,“辞职后的付款尚未确定,没有义务在报告中写下来”,并否认了起诉性奴 小说_银河棋牌网的内容。本月10日,凯利因涉嫌在2天然核反应堆_数字钟课程设计报告网015财年至2017财年间承保薪酬而被再次逮捕。法院批准拘留10到20天,但拒绝延长地方起诉的申请。责任编辑:万鹿

http://4xx9.com/out.php?id=8http://4xx9.com/out.php?id=7http://4xx9.com/out.php?id=6http://4xx9.com/out.php?id=5http://4xx9.com/out.php?id=4http://4xx9.com/articlelist-424.htmlhttp://4xx9.com/articlelist-402.htmlhttp://4xx9.com/articlelist-397.htmlhttp://4xx9.com/articlelist-390.htmlhttp://4xx9.com/articlelist-383.htmlhttp://4xx9.com/articlelist-379.htmlhttp://4xx9.com/articlelist-377.htmlhttp://4xx9.com/articlelist-343.htmlhttp://4xx9.com/articlelist-348.htmlhttp://4xx9.com/articlelist-341.htmlhttp://4xx9.com/articlelist-369.htmlhttp://4xx9.com/articlelist-363.htmlhttp://4xx9.com/articlelist-358.htmlhttp://4xx9.com/articlelist-350.htmlhttp://4xx9.com/articlelist-364.htmlhttp://4xx9.com/articlelist-349.htmlhttp://4xx9.com/articlelist-421.htmlhttp://4xx9.com/articlelist-351.htmlhttp://4xx9.com/articlelist-345.htmlhttp://4xx9.com/articlelist-372.htmlhttp://4xx9.com/articlelist-355.htmlhttp://4xx9.com/articlelist-353.htmlhttp://4xx9.com/articlelist-333.htmlhttp://4xx9.com/articlelist-440.htmlhttp://4xx9.com/articlelist-438.htmlhttp://4xx9.com/articlelist-435.htmlhttp://4xx9.com/articlelist-432.htmlhttp://4xx9.com/articlelist-431.htmlhttp://4xx9.com/articlelist-426.htmlhttp://4xx9.com/articlelist-425.htmlhttp://4xx9.com/articlelist-331.htmlhttp://4xx9.com/articlelist-399.htmlhttp://4xx9.com/out.php?id=6http://4xx9.com/out.php?id=5http://4xx9.com/articlelist-383.htmlhttp://4xx9.com/articlelist-379.htmlhttp://4xx9.com/articlelist-369.htmlhttp://4xx9.com/articlelist-363.htmlhttp://4xx9.com/articlelist-351.htmlhttp://4xx9.com/articlelist-353.htmlhttp://4xx9.com/articlelist-333.htmlhttp://4xx9.com/articlelist-438.htmlhttp://4xx9.com/articlelist-431.htmlhttp://4xx9.com/articlelist-426.htmlhttp://4xx9.com/articlelist-425.htmlhttps://www.chinactwh.comhttps://www.chinactwh.com/72_72805/https://www.chinactwh.com/72_72803/https://www.chinactwh.com/xuanhuanxiaoshuo/https://www.chinactwh.com/xiuzhenxiaoshuo/https://www.chinactwh.com/dushixiaoshuo/https://www.chinactwh.com/kehuanxiaoshuo/https://www.chinactwh.com/72_72748/https://www.chinactwh.com/72_72747/https://www.chinactwh.com/72_72743/https://www.chinactwh.com/72_72740/https://www.chinactwh.com/map/1.htmlhttps://www.46xs.com/xiaoshuodaquan/https://www.46xs.com/xuanhuanxiaoshuo/https://bbs.mlxcchina.com/https://bbs.mlxcchina.com/forum-119-1.htmlhttps://bbs.mlxcchina.com/forum-110-1.htmlhttps://bbs.mlxcchina.com/forum-113-1.htmlhttps://bbs.mlxcchina.com/thread-660-1-1.htmlhttp://www.kxzc.cn/ymt/yongsui66/a52045.htmlhttp://www.kxzc.cn/ymt/MNlksm26/a48982.htmlhttp://www.kxzc.cn/ymt/ciqizhidu7713/a52044.htmlhttp://www.kxzc.cn/ymt/xmwxjz1/a48838.htmlhttp://www.kxzc.cn/ymt/JXJdjsz66/a49390.htmlhttp://www.kxzc.cn/ymt/xingli0238/a48832.htmlhttp://www.kxzc.cn/ymt/ZMswzz12/a48829.htmlhttp://www.ak186.com/cp/p996852.htmlhttp://www.ak186.com/cp/p985316.htmlhttp://www.ak186.com/cp/p984722.htmlhttp://www.ak186.com/cp/p985313.htmlhttp://www.qimiweb.com/article/779406.htmlhttp://www.qimiweb.com/article/779410.htmlhttp://www.qimiweb.com/article/779429.htmlhttp://www.qimiweb.com/article/779452.htmlhttp://www.wuweiwang.cn/?p=108961http://www.wuweiwang.cn/?p=108951http://chengdu.liebiao.com/meirongbaojian/534913112.htmlhttp://tjsongming.com/news/show.phphttp://jwnyl.com/News/show.phphttp://hctbw.com/TBK/show.phphttp://027wt.com/data/show.phphttp://86zsb.com/honor/show.phphttp://www.cytslv.com/products/show.phphttps://www.yayf.net/beiyun/show.phphttps://www.chinactwh.com/72_72805/https://www.chinactwh.com/72_72743/https://bbs.mlxcchina.com/http://www.kxzc.cn/ymt/xingli0238/a48832.htmlhttp://www.ak186.com/cp/p996852.htmlhttp://tjsongming.com/news/show.php