Language Shapes The Way We Think

試圖回答知乎上這個問題:如何看待谷歌擬棄用「黑名單」這一說法,助力反種族歧視運動?黑名單是否涉嫌種族歧視?

關於很多時事,我一直希望自己能夠銘記一點:不要輕易把我第一反應無法理解的人都想得真的很傻。即使真的不同意,試圖理解和尊重以及和平討論顯然比嘲諷有意義得多。

我不太擅長表達觀點。不過我可以先轉發(…並翻譯)幾條國外網友對這件事情的評論。基本都來源於在 reddit 的 golang 板塊上的討論貼。斜體的括弧內容是我加的,非原文。

比如這個黑人的留言:

這裡是個做技術的黑人。從 90 年代上高中的時候開始我就一直因為這些辭彙遇到麻煩,那時候在學校用「主從模式」之類的詞建一個 mac 的網路。

master/slave(主人 / 奴隸),whitelist/blacklist(白名單 / 黑名單)這樣的詞並不是必要的,而且有時候它們是有排他性的。

我不認為這是一種公司行動主義(corporate activism,不太清楚中文怎麼翻譯好,指的是大公司靠行動來影響社會規則的一種現象),這只是有人想試著做正確的事情——並且要做成了。

就當它是公司行動主義或者是更糟糕的——virtue signalling(「道德信號」,指表現出支持某些社會事業但不做什麼有意義的實際行動,是個用來嘲諷自以為「清醒」的人的詞)(我很確定不是)…如果結果是我們都在使用更加包容性的語言,它的出處重要嗎?

如果這件事對你來說並沒有什麼風險,想想為什麼它會讓你感到討厭。問問自己為什麼避免使用可能讓別人感到被排斥的詞語是個問題。

更新:我沒法回復所有給我的評論。我只是說說我自己的感覺。我沒興趣改變你的觀點。

https://www.reddit.com/r/golang/comments/gy9ylr/go_has_removed_all_uses_of_blacklistwhitelist_and/fta2ezm/

還有這個 Go 開發團隊核心成員的回復:

大家好。關於這個改動的一點評論。

「白名單」和「黑名單」的意思對於在這個帖子底下評論的所有人來說可能很顯而易見,但對我第一次看到它們的時候來說並不是。這兩個詞並不是不言自明的,也都不是中性詞。如果我們可以避免使用它們,新的 Go 使用者就可以少學一個東西了。

這些詞也讓一些人不舒服,因為它們隱藏的含義——就是這些詞的意思——「白色就是好的/允許的/通過的」,「黑色就是壞的/不允許的/拒絕的」。在有人想跟我爭論「並沒有人真的因為這些詞不舒服」之前我想先說清楚,我本人就對這些詞很不舒服。實際上,五月中旬我度假的時候發現這些詞也在 GCP 的公共文檔里使用,然後記了一筆準備回來把它們給刪了。我很後悔我還沒有把這個 TODO 給完成,我也很後悔我沒有想過看看我們自己的項目。

這些詞也很容易被更好的詞所替代。想表達「a whitelist of functions」(一個函數的白名單),我們也可以說「a list of allowed functions」(一個函數的允許列表)。想表達「a blacklisted package」(一個被拉黑的包),我們可以說「an ignored package」(一個被忽略的包)或者「a disallowed package」(一個不被允許的包)。以此類推。這些替代既不言自明,又可以避免使用黑白的問題,是個雙贏的行為。

(原版的改動主要是做了個全局搜索,直接把所有詞給替換成了「allowlist/blocklist」(允許列表 / 阻止列表)。這些詞也比「whitelist/blacklist」好了,而且有時候確實有必要使用那些詞,但大部分情況甚至還可以使用更簡潔的語言。我用一些更常見的片語發起了一個跟進的改動。還有,所有的這些都對 master/slave 片語一樣地適用,但那個只是這次改動的一小部分。)

選擇使用的辭彙真的很重要。如果你曾讀過我們 issue tracker 上任何一個提案的討論,你就應該知道我們花了多少時間才讓每個命名都正確。這只是我們稍微能做到的一小步,我們能用不同的詞去變得稍微更有包容性的稍微一小步。每一個「稍微」都是有意義的。

而且,名詞也一直隨著時間變化。過去幾十年里我們也看到「he」(他)這個普遍的辭彙的變化。對今天的我們來說,可以接受這些辭彙的改變,可以承認多年之前用的一些語言是會造成麻煩的。在那時候用那些詞也並沒有自動地讓我們成為性別主義者或者種族主義者,就像用那些新詞並不會自動地讓我們變得不是性別主義者或者種族主義者一樣。但是我們還是可以也應該從小事出發,在我們意識到潛在的問題時變得更包容。

這甚至不是我們第一次調整用詞了。Go 這個名字取自 Google 的前兩個字母。`strings.TrimPrefix("Google", "Go") == "ogle"`(這句代碼意思是從 Google 里去掉 Go 兩個字母會得到 ogle 這個詞,意思是「用一種色眯眯地眼神看」。),我們曾經覺得這個對 Go 的調試人員來說是個特別棒的名字。從字典定義的角度,尤其是考慮到是從 Google 這詞來的梗,這個名字簡直完美。但之後有人向我們指出,對於有些女性來說,她們不得不應付不想要的注意或是不恰當的行為(尤其是上班的時候),然後在工作中還不得不調用一個叫「ogle」的命令,這樣的事情是多麼有問題。那絕對不是我們想要的包容性,所以我們改了。

最後,這是一個我們對自己的項目做出的決定。我們並沒有去強迫別的任何人也這麼做。對我們來說,在包容性和可讀性上的收益比這些詞歷史遺留的價值更大。如果你想在自己的代碼項目里決定使用相反的決定也沒關係。我們能同意「不同意」這件事,努力相互理解,並且相互尊敬。

這條討論串上有一些太激動了的評論,請冷靜一點。

謝謝大家!

https://www.reddit.com/r/golang/comments/gy9ylr/go_has_removed_all_uses_of_blacklistwhitelist_and/fte1zk0/

還有不少黑人網友表示,完全不覺得這些詞會冒犯到自己,但也對 Go 團隊的決定不支持也不反對。很多時候語言的冒犯性並不是像我們想的一樣,作為習慣中文語言環境的我們不能理解確實很正常(說實話,我也不理解,但是我想努力理解)。網上也有一些文章(比如這篇)就在討論語言確實是會影響人的思維的。

看到很多回答里在用很多現有的帶黑白的詞(中文的或是英文的)吐槽為什麼這些不改,如果他們在項目里用到了而且感受到不夠好當然會想改。拿比如「白宮」這樣用顏色字面意思的例子拿來反駁不是很恰當。我個人覺得最恰當的類比可能是「黑匣子」(或者「黑箱」、「黑盒」)這個詞,「黑」這個字跟「黑名單」一樣原意是「不透明」。一個比較好的解釋(也許會有人覺得很強行?但我個人能接受)是,「黑匣子」這個詞因為能讓我們感受到一個不透明的盒子的感覺,是個具體的一個東西,但「黑名單」不是一個具體的東西,對一些人(尤其是跟我們用不同語言所以很難理解的人)來說可能一點也不直觀。用 「blocklist」、「阻止名單」 這樣的直觀的詞真的就很不好嗎?

即使並沒有什麼用這也是一種態度,而且只是一個團隊自己的主觀決定,並沒有道德綁架外部的任何人。大家也都能理解雖然「白左」們真的有很多令人噁心的行為,他們也是無法代表所有白人的。有(可能沒什麼用的)理想的人被嘲諷真的是太可惜了。

957 views

Leave a Reply