Linux官網被黑, Redis 被要求修改 “master-slave”幕後:政治正確會毀了技術嗎?
本文授權轉自 | 淺黑科技
“有人的地方就有江湖,有江湖的地方就有紛爭”。這話不僅適用於現實世界,也適用於網路世界。
就在前不久,全球三大作業系統之一 Linux 的官方社群就發生了一些紛爭,一位暴躁老哥本著“能動手儘量憋BB”的原則,直接黑掉了網站。
當天,主頁上除了掛滿綠色的吐槽文字,還盛開著一朵毛茸茸的菊花,令人窒息。
(為了不辣眼睛我決定打個馬賽克)
黑掉 linux 網站的技術原理其實不難,就是個典型的 DNS(域名解析)劫持。
一張圖,兩句話就能講明白:
(駭客盜走DNS賬號密碼,把網友帶進了溝裡)
雖然原理很簡單,但表面的衝突永遠都只是冰山一角,更深層次的恩怨情仇往往藏在深海之中。
Linux 官網為何被黑?主頁上的菊花圖片是何含義?黑底綠字又表達著什麼怨念?這一切是何人所為?是人性的扭曲還是道德的淪喪?本期么哥試圖走近真相,為大家揭開 Linux 社群被黑事件背後的故事與矛盾……
1.“礙著我寫程式碼了”
時間回到三個月前。
2018年 9月16日,Linux 的創始人Linus 冷不丁簽發了一份名叫“CoC”(Code of conduct )的行為規範,本意是想規範社群的行為,不罵人,不歧視,為社群營造出“其樂融融合家歡”的討論氛圍,不料卻點燃了衝突的導火索。
這套行為準則的大致意思是說:
為了營造開放、熱情的社群環境,社群的每一個人應該遵守這套行為準則,不得言語辱罵他人,不得在程式碼和討論中發表帶有歧視的內容,包括性別(歧視)、年齡、種族、國籍、經濟地位、外表、性取向、性認同等等方面。
然後具體羅列了一些處理辦法。
(大家感受一下這個意思就好)
支援平等,反對歧視;支援文明表達,反對言語辱罵。在常人看起來,這大概是一份鼓勵人們積極向上的行為準則。
可就這麼個準則,引起了巨大爭議,反對的聲音猶如滔滔江水連綿不絕……
一個典型的聲音是:“做技術的專心寫好程式碼就行,不應該受這些跟技術不相關的事影響。”,他們覺得 CoC 行為準則是一種“政治正確”,會影響他們寫程式碼。
聽起來似乎有些不講道理。
難道專心做技術就可以搞性別歧視、種族歧視、性取歧視? 一份尊重文化差異,追求人人生而平等的行為守則怎麼就礙著你們寫程式碼了?
別說,“尊重文化差異” 還真會影響寫程式碼。
說個真事。資料庫技術領域有個正兒八經的技術專業術語叫:“master-slave”,翻譯過來大意是“主從模式”或者“主僕模式,它是用來提高資料庫工作效率的一種排程方法。具體是什麼不太重要,總之,全世界的程式設計師都在用,而且很多年都沒什麼問題。
可是這兩年忽然人跳出來說,這個詞帶有歧視的意味!
因為“master“和“slave”分別是“主人”和“奴隸”的意思,分明是暗示“奴隸制度”,不符合當今人人平等的價值觀……
知名資料庫 Redis 的作者 Antirez 經常收到來自各地的請託郵件,要求他改掉 Redis 裡的 “master-slave”。他起初一臉懵逼,覺得雖然這個詞一開始確實可能源於奴隸制度裡的主僕關係,可是用著用著這個詞早已不帶任何感情色彩,只是一個很純粹的技術詞彙。
(其實這個表述還挺形象)
可是反對的呼聲越來越高,迫於壓力,Antirez 只得在網上發起一個匿名投票,結果六千多個投票者裡,居然顯示半數以上都支援改掉 master-slave。
面對這個結果,他能怎麼辦,他也很絕望啊,作為 Redis 的作者,Antirez 要對專案負責。他深刻知道,一個在常人眼裡看似簡單的程式修改實際會付出很昂貴的代價,因為這個術語牽扯到的其他命令非常多,很可能讓專案產生各種奇奇怪怪的相容性問題。
更關鍵的是,Antirez 打心底覺得這個詞不帶歧視。這種自由意志被多數人道德綁架甚至強姦的感受,讓他非常不好受。
或許是出於文化差異,其實我聽著也覺得這事兒挺扯。
這就好比,“奴隸”的“奴”字我們已經用了很多年,這時忽然有人扛著“女權主義”的旗子跳出來說“憑什麼奴隸的‘奴’字是“女字旁”,這是歧視女性啊!”
(奴字最早確實是一個“鹹豬手”伸向“女”)
而且這種呼聲還非常高,在“女權主義”這杆旗的庇護下,人們紛紛要求把所有字典、書、網上的 “奴”字都改成“僅”字或者“男又”字,理由很簡單,男女平等的時代,憑什麼奴隸的“奴”只用女字旁?
聽起來似乎也有那麼一丟丟道理。
可是倘若真的依照這個邏輯,把“奴”改成“僅”,很快就會有人要求把“嫖娼”二字也改了。憑什麼“嫖”的是“女票”,不能是“男票”?
發展到最後,所謂的“平權”只會淪為荒誕。
可 Antirez 最終還是沒能忍受人們沒完沒了的要求,他妥協了,在保留 master-slave 的情況下同時啟用 master-replica 用法,兩個術語是一個意思,開發者們愛用哪個就用哪個,相當於即可以用“女票女昌”,也可以“男票男昌”,愛嫖哪個嫖哪個,最大程度上兼顧左右。
看到這裡,或許大家已經開始理解為什麼 Linux 社群的一部分人要極力反對看似正能量的 CoC 行為準則了。
原因很簡單,一旦人們欣然接受 CoC,開了這個口子,未來的規矩和要求可能越來越多,沒完沒了,就像漩渦一樣把所有開發者捲進去。誠如陳醫生的那句名言:“得不到的永遠在騷動,被偏愛的都有恃無恐。”
到最後,如果開發者們連寫個程式碼也要步步驚心,一不小心就被扣上各種歧視、三觀不正的帽子,確實恐怖。
2 “SJW們的陰謀”
更恐怖的是,有人懷疑 CoC 行為準則其實是個陰謀,一個由“SJW”發起的陰謀。
SJW 全稱是“Social Justice Warrior”,社會正義鬥士,指那些大義凜然地扛著道德大旗到處指責別人,實際想法非常主觀,他們有的人或許是發自內心以為自己是聖人,有的人則是藉著這些名頭提高自己的權力。
這個詞在國內貌似不常見,但有兩個意思相似的詞:“道德婊”、“鍵盤俠”。他們都喜歡站在道德高點給別人扣帽,得不得理都不饒人。
在一些開發者眼裡,SJW 們不需要懂技術,但只要一扛起諸如“尊重女性”、“尊重同性戀”之類的旗幟,就變得神聖不可侵犯,一旦冒犯了他們,就給你扣上三觀不正的帽子。
這麼說當然不是空穴來風。
備受爭議的 CoC 行動原則最早是基於一個叫“貢獻者盟約”的文件而來,它的作者 Ada 在2015年,就幹過 “得理不饒人”的事情。
(行為準則最初的作者 Coraline Ada Ehmke)
當時,另一個開源專案 Opal 的核心開發者 Elia 在網上發表了一些對變性人不太友好的言論,Ada 被激怒了,因為她就是變性人,還是 LGBT活動家(LGBT——同性戀、雙性戀、變性人等性別觀點不同於常人的人),經常在外呼籲平等對待LGBT。
於是,她以“歧視 LGBT 群體”為由,要求 Opal 專案組將 Elia 驅逐出去。
由於 Ada 名氣不小,她的呼籲很快得到響應,Opal 專案組分成兩派撕了起來。一派覺得 Elia 的言論確實不妥,需要受到懲罰;
另一派則覺得 Elia 在社交媒體Twitter 上愛咋說咋說是言論自由,而且這事兒跟 Opal 專案無關,跟技術無關,所以不應該處罰。況且,Elia 是專案的核心程式碼貢獻者,一個為專案嘔心瀝血的人,憑什麼要被“從天而降”一行程式碼也沒貢獻過的“道德聖鬥士”幾句話就驅逐呢?
爭到最後,雙方各退一步達成和解, Opal 專案組沒有清退 Elia,但也妥協,採納了 Ada 的貢獻者盟約,對專案組成員未來的行為進行一定規範。
爭執本該結束,可是新的問題很快就出來了。
沒過多久,Ada 在貢獻者盟約裡更新了一些新條款。明眼人一看就知道是針對Elia的。大概意思是:
不發表歧視同/異性戀、變性人的內容,程式碼裡和討論區都不行;一旦發現,將被要求清退出專案組;並且要求貢獻者盟約的使用範圍進一步從專案組改成公共領域,在公共場合也不準發表不當言論……
這下徹底把 Opal 專案組給惹怒了,他們覺得Ada 有些理不饒人,仗著自己有修訂盟約的權力就胡來。
於是專案組決定甩開這幫人,自己弄一套大家看著都還滿意的行為準則。
從那之後,Ada 就成了許多開發者眼中的 SJW,喜歡扛著“平權大旗”到處橫插一腳,用正義的名義來傷害開源專案的核心開發者。
無獨有偶。類似的情況在 Linux 社群釋出 CoC 時又出現了。
Linux 核心組裡有個叫“曹子德”的元老級人物自始至終拒絕簽署 CoC 條約。
沒過幾天,一個 Ada 的追隨者 Sage Sharp 在網上指控曹子德是“強姦辯護者”。理由是,曹子德以前曾經寫過一篇文章說不少強姦案其實沒有真實證據,只是因為女方單方面指控就定了罪,值得推敲。
一石激起千層浪,全世界的開發者們又吵開了……
“有心之人又想借機把曹大神排擠出核心團隊……”
“再鬧下去,越來越多的技術大神都會被逼得離開社群……”
“哎,希望學術的歸學術,政治的歸政治……”
(圖片擷取自V2ex討論區)
之後,更多開發者們對 CoC 避而遠之,極端反對者甚至不惜對 LGBT 惡語相向,甚至黑掉網站來表達態度。
文章開頭的那朵的毛茸菊花,大概就是對變性人的嘲諷,對 CoC 和 SJW 的反感。
(左側寫著 “Fuck the CoC,Fuck SJWS”)
3.認錯的暴君
說來也怪,既然反對 CoC 行為準則的人那麼多,那 Linux 專案組為什麼還要簽發 CoC 呢?
因為在此之前,Linux 社群的氛圍確實不怎麼友好,時不時出現一些言語攻擊、辱罵。對那些出錯的人(尤其是技術新人),社群的反應非常嚴厲,欠缺禮貌寬容。
這一點在 Linux 的創始人 Linus 本人身上就體現得淋漓盡致。
Linus 本人是個遠近聞名的大噴子,暴君。當發現別人程式碼裡的問題,他會當眾用各種不堪又別具一格的話來嘲諷、羞辱你。
當 OpenBSD 專案的開發者在貼子裡強調了程式碼的安全性,Linus 會回帖說對方是“自慰的猴子”,只知道炫耀安全性;
當核心成員提交的程式碼不夠簡潔,Linus 會用獨有的方式爆粗口:“皇天在上,這踏馬寫得就是一坨屎……”
從上個世紀 90 年代 Linux 專案誕生至今,見識過 Linus 噴人功力的程式設計師手拉手連起來興許可繞地球一圈……
(一次公開演講中,
他透過鏡頭對英偉達公司表達不滿)
雖然在不少人眼裡,Linus 已經到了口無遮攔、語言虐待的地步。不過他自己卻解釋:“我只關心技術,不太擅長和人打交道,照顧別人情感這事對我來說太難了!比寫程式碼難多了……”
簡而言之:
“我控幾不住寄幾啊!”
哎……真是不知道該怎麼說他了。難道在他這樣的技術天才和完美主義者眼中,“在座的各位真的都是辣雞?” ,以至於按捺不住噴人的衝動?(話說賈伯斯生前也是個“暴君”)
不過,在噴人這件事上,Linus 確實做到了一視同仁。
有人專門用軟體分析過他所有公開罵人的郵件,發現沒有什麼地域、性別、種族、性取向等偏向和歧視,真如他所說,“只是聚焦於程式碼和技術本身的好壞”。
Linus 真的就像我們身邊那種學術很厲害但情商很低的大神一樣,一心只想做技術,懶得考慮別的……
總之,他就這麼噴了二十多年,許多人也習慣了他的作風。畢竟他是全球為Linux 貢獻程式碼最多的人,技術非常厲害,大家似乎也不能要求一個人盡善盡美。
到後來,有的人居然開始讚賞他不做作,不妥協的風格。人們也津津樂道於 Linus 的噴人技術……
(擷取自V2ex社群)
當然,因為不堪忍受言語辱罵而撂擔子離開專案組的技術大牛也不是一個兩個了……
我總是相信,一家公司的性格會越來越接近 CEO 本人的性格,一個社群也是如此。
在 Linus 的帶領下,整個Linux 社群在十幾年裡的氣氛都恰似他本人的行為作風。有網友直言:“反正作為一個新使用者,我從來沒有在 Linux 社群裡感受到自己是受歡迎的。”
這兩年 Linus 似乎意識到了這個問題,終於決定改變。CoC 就算是其中一個標誌。
在簽發 CoC 後不到30分鐘, Linus 群發了一封道歉信,一個二十多年的“暴君”居然開始對自己的不良行為道歉。
他說,整個社群也應該考慮考慮它的行為方式,現在的 Linux 社群是一個“航髒的泥潭”。對於 CoC 過度政治正確的爭議,他持保留意見。大概意思是“先試試看,不行再說。”
隨後,他宣佈給自己來個“不限期休假”,社群的事暫時交給他的二把手來打理。他要去好好學習一下如何與人好好說話,或者給自己寫一套專用的髒話遮蔽工具,幫助自己減少言語攻擊。
有人說,Linus 是被SJW 們道德綁架才被迫道歉,並簽發了CoC。也有人說Linus 受家庭尤其是幾個女兒的影響,姿態開始放低。(他的女兒都是90後和00後,可能他想當學著做個慈父也說不定),但最終原因無從考究,似乎也並不重要,Linus 已經做出選擇,決議改變。
4.平衡是衝突的結果
有人說,技術歸技術,政治歸政治,文化歸文化,不應該相互摻和。
也有人說,技術的最終目標是解決人類面臨的問題,讓世界更美好,它從來就是文化、政治的一部分,自然不能免俗,當觸及到模糊的政治文化地帶時,一味地迴避並不解決問題。
技術研究應不應該受政治文化的影響,我覺得永遠是個問題。CoC 的爭論還將繼續,有人扛著“平權”的旗,有人扛著“反對政治正確影響技術”的旗。
雙方都有各自的“政治正確”。
但是,世上絕大多數問題,本來就不是“黑”或“白”,“是”與“非”的問題。而是“平衡”的問題,是“度”的問題。
爭論雙方各自有立場,人的思想沒法量化,最終只能靠雙方一點點試探才能找到邊界。在這個過程中,免不了踏入對方的領地,引發衝突。
真理越辯越明,希望人們在無數次試探之後,能更加走近真理。
最後鳴謝一下 Linux 中國社群(linux.cn)的創始人王老師,感謝他提供的資料參考和觀點。
參考資料:
Linux 中國.資訊.《Linux 擁有了新的行為準則,但是許多人都對此表示不滿》
Linux 中國.資訊.《Linus 回應 CoC 風波:我是個好人,Linux 社群變髒了》
21IDC.《口無遮攔,出口傷人無數的Linux之父終於道歉了》
java程式設計師聯盟.《資料庫術語master-slave政治不正確,Redis 作者被迫修改》
部分截圖源於 linux.org 、git.kernel.org 和 Github
再介紹一下我自己吧,我是謝么,科技科普作者一枚,日常是把各路技術講得通俗有趣。想跟我做朋友,可以加我的個人微信:dexter0。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31545820/viewspace-2286787/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 沒有政治正確,遊戲世界會更好嗎?遊戲
- 一些正確的政治題
- 面試官:Redis 記憶體資料滿了,會當機嗎?面試Redis記憶體
- 設計模式毀了網頁設計嗎?設計模式網頁
- 教你正確認識WIFI無線聯網技術WiFi
- 企業官網建設完成以後還能進行修改嗎
- ToString()字串轉換你用正確了嗎?字串
- 面試官:你確定 Redis 是單執行緒的程式嗎?面試Redis執行緒
- 反對函數語言程式設計的政治正確函數程式設計
- 開發商設計的 Bot 程式會毀了多人遊戲嗎?遊戲
- 正確地使用加密與認證技術加密
- 技術漫談:為何KPI毀了索尼,而OKR卻成就了谷歌?KPIOKR谷歌
- 技術會帶來社會平等嗎?
- AI語音大牛加入國內AI創企,曾因“政治正確”問題被美大學驅逐AI
- 百度官方:網站被降權後會立即恢復嗎?網站
- 如何看懂白皮書 別讓ICO毀了區塊鏈技術區塊鏈
- Face++官網核心技術整理
- Redis的正確使用姿勢Redis
- Redis的正確安裝方式Redis
- 實屬無奈!Redis 作者被迫修改 master-slave 架構的描述RedisAST架構
- 谷歌被反壟斷訴訟後,美國網際網路會再度繁榮嗎?谷歌
- JavaScript 中錯誤正確處理方式,你用對了嗎?JavaScript
- Redis系列總結--這幾點你會了嗎?Redis
- Redis的持久化機制你學會了嗎Redis持久化
- Facebook工程釋出技術的幕後故事
- 女朋友面試回來抱怨說會redis,面試官問了一堆redis面試Redis
- 老師,你確定Java註釋不會被執行嗎?Java
- 兩個技術小錯誤會毀掉一場風暴事件事件
- 【linux運維】linux運維會被淘汰嗎?會消失在雲端計算中嗎?Linux運維
- 【遞迴題】正確的開啟方式,面試官聽了都說精闢遞迴面試
- 如何修改網站後臺的地址?公司網站被修改怎麼改?網站
- 十個正確使用 Redis 的技巧Redis
- 面試官瘋了嗎,問我為什麼浮點數不精確?面試
- 網路安全技術人才的高等教育失敗了嗎?
- [React技術內幕] key帶來了什麼React
- Linux正規表示式技術指南Linux
- 現在企業會要求JAVA人員會怎樣的技術呢?Java
- 你寫的 return null 正確嗎?Null