今冬本來就裁員神僵,阿里Antd圣誕彩蛋幾行代碼直接讓程序員祭天了

我的按鈕被狗啃了

12 月 25 日腿宰,正當人們沉浸在節(jié)日的氣氛中時呕诉,部分開發(fā)者突然發(fā)現(xiàn)他們開發(fā)的 Web 網(wǎng)頁的界面發(fā)生了變化,按鈕上方出現(xiàn)“積雪”特效吃度,并增加Ho Ho Ho的title甩挫!

而且,因為色彩的原因椿每,很多程序員驚奇的發(fā)現(xiàn):我的按鈕被狗啃了伊者!

這對于一些政企類嚴肅網(wǎng)站來說簡直就是一場災(zāi)難!

找出來间护!快把原因找出來亦渗!

經(jīng)過一番艱苦探索,大家終于發(fā)現(xiàn)汁尺,這是前端 UI 組件庫 Ant Design(簡稱 antd)提前埋入一個未經(jīng)聲明的定時“彩蛋”法精!

不過估計這位開發(fā)者似乎是對彩蛋有什么誤解。這種在人不注意的時候突然跳出來嚇人的蛋,根本就不是什么彩蛋搂蜓,是跳蛋……不……是炸彈呀狼荞!

事件隨之迅速發(fā)酵,引起了巨大爭議帮碰。

很多遭殃的程序員直接跑到antd的Github倉庫瘋狂吐槽相味!一時間場面壯觀!

有程序員被祭天了

這一次的積雪來的很突然殉挽,還莫名其妙的自己“Ho Ho Ho”的叫喚丰涉,可謂驚悚。

很多程序員急忙跑到電腦跟前一頓忙此再,然后一臉懵:“沒發(fā)現(xiàn)有什么異常啊昔搂,不會是網(wǎng)站被黑了吧?”

解決無果之后输拇,老板臉色開始陰沉,臉上早已寫滿了“你這不行啊”的鄙視贤斜。但無奈焦灼之余依然無法合理解釋策吠,隨即遭到開除。

誰能想到是源頭要給你一個“蛋”呢瘩绒?這下好了猴抹,直接滾蛋了。

這大冬天的锁荔,本來經(jīng)濟就不景氣蟀给,各大公司都在找各種理由裁員,這下理由來了阳堕!好端端的就這樣被祭天了跋理!

開除可能就有點過了。但是被莫名其妙的罰款也受不了疤褡堋前普!

阿里這是故意的吧!螞蟻金服是不是給 Antd 團隊換產(chǎn)品經(jīng)理了壹堰?而且這一幫人他們是不是早就串通好了拭卿?!

網(wǎng)上贱纠,遭殃的程序員開始了瘋狂的吐槽:

而且就連第三方開發(fā)者設(shè)置的 title峻厚,竟然也會被完全覆蓋。

而由于無法手動關(guān)閉谆焊,自力更生的人們惠桃,便給出了一個在頂層 app 容器中添加一段代碼的解決方案。

說是彩蛋,但提前也沒有個聲明肮羯洹军拟!這突然蹦出來怪老嚇人的!?

彩蛋提交者:是我愚蠢了

說起來誓禁,這已經(jīng)是兩個月之前的事了懈息!

一位阿里的開發(fā)者在今年9月10日的時候,準備給大家一個驚喜摹恰,于是就埋下的一個定時的彩蛋辫继。哪知道驚喜變成了驚嚇!

下面就是改動的代碼:如何在按鈕上加一個雪花樣式俗慈。

const?now =?new?Date();

const?isChristmas = now.getMonth() ===?11?&& now.getDate() ===?25;

const?classes = classNames(prefixCls, className, {

[`${prefixCls}-${type}`]:?type,

[`${prefixCls}-${shape}`]: shape,

[`${prefixCls}-${sizeCls}`]: sizeCls,

[`${prefixCls}-icon-only`]: !children && icon,

[`${prefixCls}-loading`]: loading,

[`${prefixCls}-background-ghost`]: ghost,

[`${prefixCls}-two-chinese-chars`]: hasTwoCNChar,

[`${prefixCls}-block`]: block,

christmas: isChristmas,

});

const?iconType = loading ??'loading'?: icon;

const?iconNode = iconType ? :?null;

const?kids = (children || children ===?0)

? React.Children.map(children,?child?=>?insertSpace(child,?this.isNeedInserted())) :?null;

const?title= isChristmas ??'Ho Ho Ho!'?: rest.title;

一開始姑宽,這一彩蛋的提交者還認為這不是什么大事,直到不少開發(fā)者通過各種社交軟件“炮轟”闺阱,才在github發(fā)表了一個不痛不癢的聲明炮车,稱是在自己的“一意孤行且愚蠢的決定”。

Ant Design 圣誕彩蛋起源自 2018 年 9 月 10 日我的一次提交:https://github.com/ant-design/ant-design/commit/00aebeb9756afecc884ad48486084836b9a2707a

代碼實現(xiàn)會在 12 月 25 日當天給所有按鈕添加積雪效果酣溃,并增加?Ho Ho Ho!?的瀏覽器默認提示信息瘦穆。這完全是我個人的一意孤行且愚蠢的決定,是我的錯誤給大家造成了不良影響赊豌,非常抱歉扛或。

他還提到,這一“彩蛋”的影響范圍是 Ant Design 3.9.3碘饼、3.10.0~3.10.9熙兔、3.11.0~3.11.5版本,并且目前已經(jīng)發(fā)布了修訂版本3.9.4艾恼、3.10.10住涉、3.11.6,更新至相應(yīng)的版本即可修復(fù)蒂萎,使用了語義化版本的直接重新安裝node_modules并重新下載即可秆吵。

最后他鄭重強調(diào),代碼里已經(jīng)沒有其他的彩蛋了五慈!未來也會繼續(xù)接受開發(fā)社區(qū)的監(jiān)督纳寂。

讓我以后怎么相信你了

Ant Design被稱為全世界最好的React前端組件庫之一,前端優(yōu)秀的框架泻拦,目前Github已經(jīng)有接近4萬的star. 因為其專業(yè)毙芜,穩(wěn)定,受到不少人的青睞争拐,國內(nèi)外不少企業(yè)都會選擇使用antd做前端開發(fā)腋粥。

如果只是普通的應(yīng)用場景晦雨,其實給提交按鈕增加這樣一個特效并無傷大雅。但需要注意的是隘冲,很多政府闹瞧、企業(yè)網(wǎng)站都在使用Antd的框架,而這些網(wǎng)站很多都是極其嚴肅的展辞,并不適合這些玩笑似的“彩蛋”奥邮。

尤其是這一彩蛋被設(shè)定在12月25日這天出現(xiàn),指向性的含義非常明顯罗珍,因此導致第三方開發(fā)者承受了不必要的壓力洽腺,給不少網(wǎng)站的維護人員帶來了很大的麻煩,甚至據(jù)說還有前端因此而丟掉飯碗覆旱。

有開發(fā)者半開玩笑說蘸朋,如果不是圣誕節(jié)而是中國的傳統(tǒng)節(jié)日也許就不會引起那么大的爭議了:因為有些單位有明令禁止過洋節(jié)的規(guī)定。

試想一下扣唱,如果這些禁止過洋節(jié)的網(wǎng)站(如個別政府網(wǎng)站)的按鈕都是圣誕節(jié)的 logo藕坯,對于那些特別敏感的人來講后果可想而知。

總之画舌,對于這種“毫無開源的責任意識”堕担、“非常不專業(yè)的做法”,不少開發(fā)者認為值得商榷 —— 至少你也該提供個 API曲聂,讓大家在想關(guān)閉的時候手動關(guān)閉啊佑惠!

開源軟件的每一個細節(jié)朋腋,都暴露在“陽光之下”,只要有心膜楷,人們都可以發(fā)現(xiàn)旭咽。所以理論上任何一點想拿開源產(chǎn)品“圖謀不軌”的做法都不會得逞。

但是赌厅,這起事件的發(fā)生穷绵,又反映了什么?為什么理應(yīng)有人看到并監(jiān)督的問題特愿,卻安靜地躺了兩個月都沒人發(fā)現(xiàn)仲墨?

不過,盡管由于Antd是開源項目揍障,根據(jù)協(xié)議即使這一彩蛋給開發(fā)者帶來困擾甚至害人丟了工作目养,開發(fā)者也很難追究添加彩蛋的運營人員的責任,因為開發(fā)者在使用Antd框架的時候并沒有付費毒嫡,該框架也并非用于盈利癌蚁。

但是這一事件給Antd項目的聲譽造成了嚴重的負面影響,一些開發(fā)者已經(jīng)著手在網(wǎng)站頁面中將Antd框架刪除。

總而言之努释,這次“彩蛋事件”雖然是個別人員的非主觀惡意造成的碘梢,但是卻給整個開源社區(qū)帶來了一場“信任危機”。

而這次事件也給廣大開發(fā)者敲響了警鐘伐蒂!

一直以來煞躬,很多開發(fā)者認為“開源”的東西一定的安全的,因為所有代碼對外開放饿自,任何人都可以查看汰翠。但是當一些大型的開源項目涉及到很多行代碼的時候,不一定有開發(fā)者能夠完整的閱讀所有的開源代碼昭雌。

而且像Antd這樣由團隊負責運營的開源項目复唤,很多時候默認就是安全的,人們使用它就是為了提高工作效率烛卧,不大可能把所有代碼都讀一遍佛纫。這就使得一些開源項目存在了隱患的可能。

這次僅僅只是加入了一個彩蛋总放,如果下次增加點后門什么的呈宇,后果不堪設(shè)想。

源:江戶川雨

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末局雄,一起剝皮案震驚了整個濱河市甥啄,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌炬搭,老刑警劉巖蜈漓,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異宫盔,居然都是意外死亡融虽,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門灼芭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來有额,“玉大人,你說我怎么就攤上這事彼绷∥∮樱” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵苛预,是天一觀的道長句狼。 經(jīng)常有香客問我,道長热某,這世上最難降的妖魔是什么腻菇? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任胳螟,我火速辦了婚禮,結(jié)果婚禮上筹吐,老公的妹妹穿的比我還像新娘糖耸。我一直安慰自己,他們只是感情好丘薛,可當我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布嘉竟。 她就那樣靜靜地躺著,像睡著了一般洋侨。 火紅的嫁衣襯著肌膚如雪舍扰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天希坚,我揣著相機與錄音边苹,去河邊找鬼。 笑死裁僧,一個胖子當著我的面吹牛个束,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播聊疲,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼茬底,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了获洲?” 一聲冷哼從身側(cè)響起阱表,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎贡珊,沒想到半個月后捶枢,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡飞崖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了谨胞。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片固歪。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖胯努,靈堂內(nèi)的尸體忽然破棺而出牢裳,到底是詐尸還是另有隱情,我是刑警寧澤叶沛,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布蒲讯,位于F島的核電站,受9級特大地震影響灰署,放射性物質(zhì)發(fā)生泄漏判帮。R本人自食惡果不足惜局嘁,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望晦墙。 院中可真熱鬧悦昵,春花似錦、人聲如沸晌畅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽抗楔。三九已至棋凳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間连躏,已是汗流浹背剩岳。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留反粥,地道東北人卢肃。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像才顿,于是被迫代替她去往敵國和親莫湘。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內(nèi)容