誰該為阿里的彩蛋背鍋?
頭圖來自視覺中國。
圣誕本該是開心的節(jié)日,即便有些許雜音,歡樂、祥和的氣氛仍然成為了中文互聯(lián)網(wǎng)的主旋律。
但就在這樣的日子,卻有很多人因為“圣誕”慌張起來:他們是一群大小機構的產品經理和程序員,在自己負責的項目中,突然發(fā)現(xiàn)了這樣的奇景:
先別在意那個拼錯的 Christmas。除了企業(yè),嚇一跳的機構當然也包括部分政府部門:
甚至有一些程序員發(fā)消息表示自己已被憤怒的老板開除——這是不白之冤嗎?
誰出了問題?
一番 GitHub 熱議后,眾人終于鎖定了罪魁禍首。
這個彩蛋源于許多開發(fā)者使用的一個開源產品,來自巨頭阿里巴巴的“Ant Design”。在 Ant Design 官網(wǎng),我們可以看到,螞蟻金服體驗技術部稱該產品是一個服務于企業(yè)級產品的設計體系。
你可以簡單地將其理解為一個開源的 UI 產品,目前其用戶包括螞蟻金服、阿里巴巴、騰訊、百度、口碑、美團、滴滴、餓了么及……受害或未受害的其他用戶。
事情爆出后不久,Ant Design 的開發(fā)人員便出面解釋:這一彩蛋純屬個人行為,與企業(yè)無關。此外,螞蟻很快回滾了代碼,并推出了官方修復版本。
我們并無證據(jù)得知這位程序員是被螞蟻推出來“背鍋”的,還是這真的只是其個人行為。如果該事件最終被確認為團隊乃至公司行為,不知螞蟻還要牽扯多少麻煩??纯茨莻€拼錯的 Christmas(如今已修復),說是個人行為,好像也有些根據(jù)……吧?
不過我想起了一個相似的故事。2016 年,阿里“搶月餅”事件曾經引發(fā)互聯(lián)網(wǎng)企業(yè)大討論,那個因為寫了“搶月餅代碼”而被開除的程序員也曾受到廣泛的關注和同情。至于阿里系企業(yè)是否有讓程序員“背鍋”的傳統(tǒng),就不得而知了。
誰遭了殃?
受這件事影響最直接的,其實是和螞蟻距離最遠、最不直接接觸的用戶,也就是各路機構產品的直接使用者。在中國自然無妨,但在一些比較敏感的國家,產品上突然跳出圣誕節(jié)彩蛋,或許是會令用戶充滿疑惑。如今,與我們遠隔重洋的北美,已經有大批無信仰、輕信仰者不說“Merry Christmas”而改稱“Happy Holiday”。
這自然由于北美的信仰較為分散、復雜,但在另一些信仰相對集中但并非基督教信仰的國家,事情可能會更糟。已經有人聲稱自己在伊朗的項目也出現(xiàn)了彩蛋問題,如果是真的,只能祝老兄好運。
但受影響更大的可能是應用 Ant Design 的企業(yè)。對用戶來說是個文化層面的問題,企業(yè)則需面對安全、穩(wěn)定、可控等一系列質疑。畢竟,自己的產品中冒出個自己不知道的彩蛋,那是不是意味著今后也可能出現(xiàn)其他自己不知道的情況呢?而且,手忙腳亂的追責、修復工作,想必也給企業(yè)帶來了不少直接困擾。
不過被坑得最慘的,恐怕還是這些產品的具體開發(fā)者和負責人,也就是 Ant Design 最直接的用戶。事發(fā)時,他們的慌亂想必不在自己老板之下;考慮到一些開發(fā)者比較“菜”,可能一時半會兒連病根兒都查不出來,他們的血壓要飆到多少?此外,如果一些開發(fā)者并未對雇主或客戶講清楚自己用了開源設計,那么他們又該怎樣解釋這口“天降大鍋”?
對有些人來說,可能真不只是開除那么簡單。
誰該背鍋?
不管怎樣,事情已經發(fā)生了,有人要為此負起責任。那么,誰該負擔損失,或者說,誰的責任更大些?
我們應該注意到一個細節(jié):該彩蛋源于 2018 年 9 月 10 日的一次升級,且官方并未聲明。那么,使用 Ant Design 并遭遇彩蛋的開發(fā)者就此分為兩類:在 9 月 10 日前使用并于當天 merge 代碼的,在 9 月 10 日后才***開始使用的。
對于前者而言,他們要查看的升級內容相對較少,但考慮到官方日志并未提及這次彩蛋,沒發(fā)現(xiàn)恐怕要一半怪自己、一半怪螞蟻了。
但對于那些 9 月 10 日后使用,一開始便將 Ant Design 作為一個“企業(yè)級產品”來使用的初體驗者而言,讓他們完整 review 該開源產品未免有些苛求——不排除一些大企業(yè)有專人負責此類工作,但對于絕大多數(shù)小微企業(yè)乃至已經有相當體量的企業(yè)而言,完整 review 開源代碼都并非確定的工作流程或某種職位的義務,遑論企業(yè)外的其他機構。
這是為什么?在客觀上,review 完整代碼的工作量實在太大,對很多開發(fā)者而言,如此開源還不如自己重寫;在主觀上,使用開源的基礎組件(Ant Design 絕非某種特定功能組件),追求的本來就是穩(wěn)定、可控、高效,結果該組件并不能如愿,那到底是誰的問題呢?
在 Ant Design 官網(wǎng),我們可以看到“用最小的工作量”是 Ant Design 迄今引以為豪的一句宣傳語,不知道這句宣傳語潛在的含義是否是“用最小的工作量,但你要花絕大精力去 review 一遍”。
而且,強調 Ant Design 是企業(yè)級產品同時,螞蟻還突出了“確定”和“自然”的價值觀。突然冒出來的圣誕彩蛋,恐怕在任何人眼里,都既稱不上“確定”也稱不上“自然”吧?
無論如何,在產品(無論是否開源)里擅自添加彩蛋并且默認開啟,絕不是單個程序員該做的事情。如果該行為并非來自個人而是來自團隊,那么螞蟻團隊或許該重新審視自己在表面上反復強調的價值觀了。
不過,想想阿里旗下支付寶曾經的“六一節(jié)默認給用戶名+寶寶”事件,以及“隱私賬單默認勾選”事件,會有此事,大概也不是一朝一夕了。
希望各位讀者能做出自己的判斷。節(jié)日快樂。