慎防 CodePlex 令人困惑
作者:Richard Stallman我們社群中的許多人對 CodePlex 基金會抱持懷疑態度。由於其董事會主要由微軟員工和前員工,以及辯護者 Miguel de Icaza 掌控,因此有充分的理由對該組織保持警惕。但這並不能證明其行為會是負面的。
總有一天,我們將能夠根據其行為(包括其公共關係)來判斷該組織。今天,我們只能根據其聲明和微軟的聲明來嘗試預測它將做什麼。
我們看到的第一件事是該組織迴避了使用者自由的問題;它使用「開放原始碼」一詞,而沒有提及「自由軟體」。這兩個術語代表基於不同價值觀的不同哲學:自由軟體的價值觀是自由和社會團結,而開放原始碼僅引用實用的便利價值觀,例如強大、可靠的軟體。請參閱為何開放原始碼錯失了自由軟體的重點以獲得更多解釋。
顯然,微軟寧願面對開放原始碼的實際競爭,也不願面對自由軟體運動的道德批判。它長期以來僅批判「開放原始碼」的做法具有雙重作用:攻擊一個對手,同時分散對另一個對手的注意力。
CodePlex 遵循相同的做法。其聲明的目標是說服「商業軟體公司」為「開放原始碼」做出更多貢獻。由於幾乎所有開放原始碼程式同時也是自由軟體,因此這些程式很可能將是自由的,但「開放原始碼」哲學並未教導開發人員捍衛他們的自由。如果他們不理解這種自由的重要性,開發人員可能會屈服於微軟的策略,鼓勵他們使用較弱的授權條款,這些授權條款容易受到「擁抱與擴展」或專利合作的影響,並使自由軟體依賴於專有平台。
這個基金會並非微軟第一個以「CodePlex」命名的專案。還有 codeplex.com,一個專案託管網站,其允許的授權條款列表排除了 GNU GPL 第 3 版。這可能反映了 GPL 第 3 版旨在保護程式的自由軟體狀態免受微軟專利的顛覆,例如透過 Novell-微軟協議。我們不知道 CodePlex 基金會是否會試圖阻止 GPL 第 3 版,但這符合微軟的模式。
「商業軟體公司」一詞體現了一種特殊的混淆。每個企業在定義上都是商業性的,因此企業開發的所有軟體——無論是自由軟體還是專有軟體——都自動是商業軟體。但是,公眾普遍將「商業軟體」和「專有軟體」混淆。(請參閱應避免或謹慎使用的詞語。)
這種混淆是一個嚴重的問題,因為它錯誤地聲稱自由軟體業務是不可能的。許多軟體公司已經為自由軟體做出貢獻,而這些商業貢獻非常有用。也許微軟希望人們認為這些事實是不可能的。
基於這些事實,我們可以預見 CodePlex 將鼓勵開發人員不要考慮自由。它將巧妙地散播一種觀念,即在沒有像微軟這樣的專有軟體公司的支持下,自由軟體業務是不可能的。但是,它可能會說服一些專有軟體公司發布更多的自由軟體。這將是對電腦使用者自由的貢獻嗎?
如果如此貢獻的軟體在自由平台上、在自由環境中運作良好,那麼這將會是貢獻。但這與微軟聲稱尋求實現的目標恰恰相反。
現任 CodePlex 總裁 Sam Ramji 幾個月前表示,微軟(當時他的僱主)希望促進鼓勵使用微軟 Windows 的自由應用程式的開發。也許 CodePlex 的目標是誘使自由軟體應用程式開發人員將 Windows 作為他們的主要平台。現在 codeplex.com 上託管的許多專案都是專有軟體的附加元件。這些程式陷入了類似於前 Java 陷阱的困境。
如果它成功了,那將是有害的,因為一個在自由世界中無法執行(或執行不佳)的程式不會為我們的自由做出貢獻。一個非自由程式會剝奪使用者的自由。為了避免以這種方式受到傷害,我們需要拒絕專有系統平台以及專有應用程式。CodePlex 為專有基礎提供的自由附加元件增加了社會對該基礎的依賴——這與我們需要的恰恰相反。
自由軟體應用程式開發人員會抵制這種破壞我們邁向自由的進程的企圖嗎?這裡他們的價值觀變得至關重要。堅持不重視自由的「開放原始碼」哲學的開發人員,可能不在乎他們軟體的使用者是在自由作業系統還是專有作業系統上執行它。但是,為自己和他人要求自由的開發人員可以識別陷阱並避開它。為了保持自由,我們必須將自由作為我們的目標。
如果 CodePlex 基金會希望成為自由軟體社群的真正貢獻者,它就不能以非自由套件的自由附加元件為目標。它需要鼓勵開發能夠在基於 GNU/Linux 和其他自由作業系統的自由平台上運行的可攜式軟體。如果它試圖引誘我們朝相反的方向發展,我們必須確保拒絕。
無論 CodePlex 基金會的行為是好是壞,我們都不能接受它們作為微軟侵犯我們社群行為的藉口。從最近試圖將專利出售給代理專利蟑螂,然後他們可以對 GNU/Linux 進行骯髒的勾當,到長期推廣數位限制管理,微軟繼續採取行動傷害我們。如果我們讓任何事情分散我們的注意力,那將是愚蠢的。