創作者熱門電子商務平臺 Gumroad 已向公眾釋出了其原始碼,但此舉在開發者社群內引發了關於什麼才是真正開源軟體的激烈爭論。儘管 Gumroad 創始人 Sahil Lavingia 在社交媒體上宣佈這是開源釋出,但許多開發者指出,其許可條款並不符合行業標準定義。
限制性許可條款
Gumroad 原始碼附帶的許可證包含重大限制,使其無法根據開源定義(OSD)被認定為真正的開源軟體。最值得注意的是,該許可證將使用範圍限制在年收入低於100萬美元且商品交易總額(GMV)低於1000萬美元的公司,或非營利組織和政府實體。這些限制直接違反了OSD的第五條標準,該標準要求開源許可證不得歧視任何個人或群體。
「如果你的公司有可能超過100萬美元收入,這是有風險的,因為一旦達到這個數字,許可證將終止,你將不得不重寫所有內容。」
這一限制對可能基於 Gumroad 程式碼庫構建產品的企業造成了重大風險,因為如果他們過於成功,就需要完全重建他們的平臺。該許可證還根據美國勞工統計局的消費者價格指數對收入閾值進行通脹調整。
Gumroad 許可證限制:
- 限制年收入低於100萬美元的公司使用
- 限制商品交易總額(GMV)低於1000萬美元的公司使用
- 適用於非營利組織和政府實體
- 收入門檻根據美國勞工統計局的通貨膨脹率進行調整
與開源定義的衝突:
- 違反了開源定義(OSD)標準5(不得歧視個人或群體)
- 與自由軟體基金會的定義不相容
- 被歸類為"原始碼可用"而非真正的開源軟體
Gumroad 技術棧:
- Ruby on Rails 應用程式
- 開發需要 Docker 和 Docker Compose
- 使用 MySQL 8.0.x、Elasticsearch、ImageMagick、libvips、FFmpeg 和 PDFtk
原始碼可見 vs. 開源
Gumroad 釋出的更準確地說是原始碼可見而非真正的開源。這一區別在軟體社群中很重要,因為開源有由開源促進會(OSI)和自由軟體基金會(FSF)等組織定義的特定含義。這兩個組織都維護著要求軟體可以被任何人自由使用且不受歧視的定義。
許多評論者對他們認為是為營銷目的而盜用開源一詞的行為表示失望,同時施加與其基本原則相矛盾的限制。有些人建議 Gumroad 應該更透明,明確將他們的程式碼描述為原始碼可見而非開源。
儘管有限制但仍有潛在好處
儘管存在許可爭議,這次釋出仍然為開發者社群的某些部分提供了價值。作為一個 Rails 應用程式,Gumroad 代表了可供學習的較大程式碼庫之一,這對學習目的和人工智慧訓練可能有益。該公司還為解決程式碼庫中的問題提供賞金,為開發者創造了貢獻並獲得獎勵的機會。
對於不預期超過收入閾值的小型企業和個人開發者來說,這些程式碼可以為構建自己的電子商務平臺提供基礎。非營利組織和政府實體也可以充分利用這些程式碼庫,而不必擔心收入限制。
Gumroad 的商業策略
一些評論者推測 Gumroad 以這些特定限制釋出原始碼的動機。自14年前成立以來,該公司經歷了重大變化,包括當 Kleiner Perkins 以1美元將其股份賣回給 Gumroad 時,公司轉向遠離風險資本融資。
Sahil Lavingia 在社交媒體上提到,他相信人工智慧將在未來大幅度使軟體商品化,這可能解釋了為何決定使程式碼可用於人工智慧訓練,同時仍然保持限制以防止來自大型企業的直接競爭。
此次釋出正值 Gumroad 已將費用提高到10%加上處理費,而之前是固定1美元加上處理費,這表明商業策略可能發生了轉變,包括利用社群對其程式碼庫的貢獻。
總之,雖然 Gumroad 的原始碼釋出為某些開發者和組織提供了寶貴資源,但圍繞其許可條款的爭論凸顯了在開源社群中精確術語的重要性,以及商業利益與開源原則之間持續存在的緊張關係。
參考:gumroad