Categories
程式開發

又是聖誕彩蛋惹的禍?微軟在VS Code中添加聖誕圖標惹爭議


對於開源項目來說,一個細微的改動就會影響到無數使用該項目的產品、公司、生產環境。聖誕節在即,為了增加一些節日氣氛,微軟對 Visual Studio Code 進行了一些小的更改,在開源 IDE 左下角的“設置”圖標上放了一頂聖誕老人的帽子,然而這很快就收到了用戶投訴,在技術論壇以及 GitHub 社區引起了廣泛討論。

又是聖誕彩蛋惹的禍?微軟在VS Code中添加聖誕圖標惹爭議 1

事件回溯

近日,為了慶祝即將到來的聖誕節,微軟在其開發的代碼編輯器 Visual Studio Code 左下角的“設置”圖標上放了一頂聖誕老人的帽子,如下圖所示:

又是聖誕彩蛋惹的禍?微軟在VS Code中添加聖誕圖標惹爭議 2

隨後,一位用戶在 GitHub 上表示,這頂帽子非常令人反感:

vscode 的聖誕老人帽對我來說非常冒犯,聖誕節在數百年的時間裡已經使數百萬猶太人喪生,將宗教象徵作為產品更新的一部分是完全不可接受的。請立即將其刪除,並將其作為頭等大事。對我而言,這幾乎和十字記號一樣令人反感。

又是聖誕彩蛋惹的禍?微軟在VS Code中添加聖誕圖標惹爭議 3

在事件發生後,微軟方面及時做出回應,並表示這是因為在菜單中添加了一個“Happy Holidays”的命令,該命令可以顯示出覆蓋圖的效果(也就是圖標被雪花覆蓋的樣子),但因為聖誕帽的圖案受到了個別用戶的指責,所以微軟決定去掉該樣式,這又受到了一群支持該圖案用戶的反對。一時之間,社區中充斥著各種各樣的言論,甚至上升到人身攻擊層面。

最終,微軟對VS Code 的repository 實行了24 小時鎖定,做了很多更改,並出於遵守價值觀和行為準則,刪除了一些評論,創建了一個名為* off-topic 的標籤,手動添加了關閉原因,並為那些支持聖誕節日圖標的用戶開通了新的選擇。在聲明中,微軟方面表示:

我們決定遵循這種模式,並讓用戶配置圖標的外觀。我們添加了新設置,您可以自行選擇。如果您喜歡紅色的帽子,那就去吧!也許您住在南半球,或者在假期前往海灘,也有另外的圖標。

打開設置(Mac:CMD +,Windows / Linux:CTRL +,)並蒐索“ Holiday Gear Icon Style”,然後選擇圖標。如果喜歡編輯 settings.json,請設置 holiday.gearIconStyle。

又是聖誕彩蛋惹的禍?微軟在VS Code中添加聖誕圖標惹爭議 4

據了解,微軟的其他產品在推廣聖誕老人 方面並沒有遇到問題。多年來,Bing 一直在推廣“ NORAD Santa Tracker”,其中包括網站和倒計時的計時器。當然,這種方式與在嘗試編寫代碼時將意識形態強加於開發人員並不相同。

如何看待開源項目的責任歸屬?

如今的開源,早已不是自由軟件時代的理想主義。很多公司都參與到開源中來,它們的動機,除了一些回饋社區和分享精神外,還摻雜著商業和利益上的考量,其中包括:

  • 通過領導關鍵開源項目,成為某行業事實標準,從標準中獲取利益;
  • 開源核心代碼,基於核心代碼提供付費的諮詢和外包、資源服務;
  • 通過開源項目,提升團隊成員的技術能力和凝聚力,打造技術品牌,方便對外做技術招募。

作為受到全球各地開發人員廣泛使用的一款編輯器,VS Code 在本次事件中的響應速度和處理速度都非常之快,雖然不少用戶認為這種添加節日圖標以烘托氛圍的做法沒什麼不妥,但考慮到這款開源代碼編輯器面向的是全球不同地域、不同種族、不同文化的開發者,並且是聖誕節這樣的宗教性節日里,還是應該遵守開源準則,適當做出調整。

經過此次事件,想必很多公司在操作開源項目時會更加謹慎。對於底層依賴型的代碼,我們要盡量保持穩定,不要隨意修改代碼。

其次,在修改導致任何功能變化的代碼後,一定要在 changelog 裡體現出來,這才是負責任的做法。

最後,完善開源項目的管理流程,要有人能夠把關代碼,不讓一些欠缺考慮的代碼合併到主線。如果真想做好開源,這些是必須要做到的。

對於開源項目的用戶來說,要跟踪所有依賴代碼的所有更改顯然是不太可能做到的,這就要求在技術選型時要慎之又慎,在不同的場景選擇不同的技術。值得慶幸的是,這是一款開發編輯器,而不是前端項目,因此造成的影響還比較可控。