Categories
程式開發

懷疑開發者在“造核彈”? GitHub不斷封禁開源項目


GitHub狠起來連自己都打。今天它封掉了自家的開源項目Aurelia,只因項目中有兩名來自伊朗的外部貢獻者。

繼去年封禁伊朗等地區賬號後,GitHub今天再次封禁了一個屬於微軟的前端開源項目Aurelia,理由是項目中有兩名來自伊朗的外部貢獻者。雖然GitHub首席執行官致歉表示“這次的確是個錯誤”,但是開發者們顯然不買賬:GitHub封禁項目的行為是否太隨意了?這樣的行為難道不是與開源信念背道而馳嗎?

GitHub一不小心封掉了自家的項目

今天,一個名叫“Aurelia”的前端項目被GitHub封禁了。 Aurelia是微軟開發的JavaScript框架,開源已有5年,由一家美國公司管理。

懷疑開發者在“造核彈”? GitHub不斷封禁開源項目 1

作為項目負責人,微軟首席UX工程師Rob Eisenberg表示非常懵:“一覺醒來,發現Aurelia網站被關了,數T歸檔都沒辦法訪問了。之前也沒有收到正式的通知,這對我們是毀滅性的行為!”他開玩笑說:“難道是因為微軟又有了一個新的JavaScript框架,所以要封掉Aurelia?!“

更為諷刺的是,在微軟工作的Rob Eisenberg還不得不通過發Twitter並知會GitHub的方式,來解決公司內部問題(畢竟微軟已經收購了GitHub呀)。 GitHub的支持賬號隨後也給了他一個不痛不癢的回复:

如果你認為自己被錯誤標記了,你可以向GitHub申訴啊。可以參看我們的說明網頁。

正式上訴後,GitHub重新啟用該項目的組織帳戶。 Rob隨後向公眾解釋了封禁原因:

因為我們有兩名來自伊朗的外部貢獻者(非GH組織成員),所以GitHub自動標記並封禁了賬號。

事件不斷發酵,快速的就頂到了HackerNews頭版,GitHub的首席執行官不得不也對此表示了歉意:

關閉此帳戶顯然是一個可怕的錯誤,我對受此影響的人表示歉意。我們正在調查具體過程,並更改規則以確保此類問題不會再次發生。

被封掉的另一個普通開發者賬號

無獨有偶,類似事情可不是孤例。

一位叫Nikolay的俄羅斯小哥最近有點煩。他是一名Web開發人員,平時的愛好就是編寫開源庫。像很多開發者一樣,他把這些開源庫都託管到了GitHub上。看看下邊這張圖,Nikolay過去一年有3,236 個contributions,足見又勤奮又活躍。但是最近他遇到點麻煩:他的GitHub賬號被封了。

懷疑開發者在“造核彈”? GitHub不斷封禁開源項目 2

圖注:這小哥在GitHub上確實很活躍

3月9日,GitHub在沒有通知我的情況下突然就封了我的賬號。一開始我都沒發現,還是有人給我發郵件說我的託管庫已停止工作,並問我為什麼刪除GitHub帳戶(我沒有),我才發現不對勁兒。
更讓人崩潰的是,如果有人去到我的GitHub頁面,那上邊顯示的是“ 404未找到”,甚至都不是一個“該用戶帳戶暫時無法訪問”的頁面,就好像我這個人根本不存在一樣。

這位俄羅斯小哥開始向GitHub申訴,並且在Medium上全程直播接下來的申訴過程。引來眾多開發者圍觀。

GitHub的唯一提示是當我點到他們的網站時(僅對我而言),頂部顯示一條通知:您的帳戶已被標記。因此您的個人資料不公開。如果您認為這是一個錯誤,請與支持人員聯繫以審核您的帳戶狀態。

雖然第一時間Nikolay就向GitHub發送了郵件申請解封,但是一個星期過去了,沒有收到任何回應。

image

然後Nikolay就開始猜:為什麼封我的號呢?是我的源代碼深處有某個“列入黑名單”的網站超鏈接?或者是最近我在網上稱呼某人為白痴? (最終證明還真就是因為這個!)

讓Nikolay最為接受不了的是,賬號被封後,除了他自己以外,所有人對庫中所有issue(問題)的評論都瞬間消失了,其中一些評論其實是很有價值的。 Nikolay要被氣炸了:

GitHub如果想要阻止你登陸,它可以保證你的代碼不會丟失,但不能保證你在issues/pull-requests/commits/etc 中的評論不會丟失。可笑的是,GitHub一直宣揚“共享”和“共建”,但卻輕易地阻止人們登陸他們花費了大量時間和經歷共同創建的源代碼和知識庫社區,一味地針對一個不知道為啥被封號的人,這就是所謂的“寬大包容”嗎?

過了一陣,Nikolay的文章又做了一個更新:

賬戶被封一周之後,GitHub終於有回應了。但是可疑的是,這個回應發生在別人把我這篇文章發在Hacker News,引起很多人關注之後。

Nikolay在文章裡解釋了他為什麼會被封號。原來是因為他在GitHub上開玩笑地稱一個傢伙為prick。對方因為感覺被侮辱而申訴,雖然不當言論確實該被懲罰,但是GitHub沒有給Nikolay任何申訴的機會,也沒有給他任何通知,直接就封了他的帳戶。

“審查”高於一切?

雖然這些被錯誤封禁的項目都已重新開放,但是的確增加了人們對GitHub的不信任,開發者們群情激憤:到底有多少項目的存儲庫已被禁用?如果不是因為Aurelia是微軟的項目並且進入HackerNews頭版,還不知道類似問題能不能都得到解決。

俄羅斯小哥Nikolay顯然也很失望:“GitHub雖然是一個開源社區,但更是一個商業公司。對外形象和求穩才是他們真正在意的吧。只要有人施壓,他們可以輕易處置任何人。”

你直說自己是一家商業公司也行,可是你卻還處處標榜自己是一家非盈利組織。現在想想,那些在社交媒體上稱讚並且向別人推薦GitHub的人該是多麼天真啊。

去年7月,一位伊朗開發者的 GitHub 賬號被禁,他在社交媒體上分享了自己的經歷,並向 GitHub 官方發起質詢。最後得知,因為自己的所在地伊朗受到美國製裁,目前整個伊朗地區的 GitHub 賬號均無法使用。更讓人憤怒的是,GitHub 在沒有任何事先通知的情況下屏蔽了所有伊朗賬戶,連讓該地區開發者下載備份數據的機會都沒有。隨後的消息表明,被美國貿易制裁的國家和地區的開發者賬號,還包括克里米亞、古巴、朝鮮、伊朗和敘利亞。

開源是軟件時代非常關鍵的一條技術路線,幾乎所有的軟件公司都會基於開源軟件棧來構建他們的應用。開源軟件是全人類的財富,不屬於任何個人,開源的邊界已經超越了某個組織或公司。它代表的是信念,是精神,是文化。

但是GitHub能夠跟開源劃等號嗎?肯定不能。

一直以來,GitHub 都是託管開源項目的最佳選擇,但是微軟收購 GitHub 後,無論你是否承認,它的身上都無法擺脫商業公司的標籤。

微軟對開源社區的態度一直很微妙,這不是什麼秘密;反過來,一些開源界人士也秉持著“反微軟”的態度。微軟掌控下的 GitHub 將如何發展,目前還難下定論,不過肯定會有一些開源人士會“擇良木而棲”,去往別處。包括這些事件的主人公們在內,眾多開發者給出了各種各樣的建議:

  • 要不轉去 GitLab?
  • Google Code也不錯,有免費Git以及 2 GB存儲空間呢。
  • SourceForge也不錯。
  • 試試不在美國的代碼託管平台?

……

然而,GitHub 仍是這世界上最流行的代碼託管平台,對這些開發者來說,沉沒成本太大了。

當然這一切也未必是微軟的錯,如果沒被微軟收購,GitHub一定比現在好?除了自身發展所遭遇的困境外,對於開發者來說,如果GitHub長得太大,難道就是好事?

傅盛曾在一次演講中說:你把一個App放在網絡上,可以讓幾十億人下載,讓全世界的人知道你。時過境遷,谷歌、蘋果、Facebook這樣超大平台的出現,使得事情又走向了另一個極端。當涉及到各種商業利益和社會因素的時候,它們同樣可以在一天內讓幾十億的用戶完全接觸不到你,讓你建立的基業瞬間湮滅——這就是壟斷平台的力量。

這句話放在GitHub身上,同樣適用。