文 | 羅奇奇
出品 | OSC開源社區(ID:oschina2013)
基于 Java 的日志記錄工具 Apache Log4j2 近日出現了一個高危漏洞,攻擊者可以利用其 JNDI 注入漏洞遠程執行代碼,此漏洞牽涉面非常廣,以至于國內外的個人或公司用戶都對此高度關注,而 Log4j2 開發組在漏洞曝光后及時發布了 Apache Log4j 2.16.0 維護版本,默認禁用 JNDI,使此漏洞得到控制,
但小編在學(mo)習(yu)的時候,發現 Log4j2 的維護者之一 @Volkan Yaz?c? 在推特上吐槽:Log4j2 維護者只有幾個人,他們無償、自愿地作業,沒有人發工資,也沒人提交代碼修復問題,出了問題還要被一堆人在倉庫里留言痛罵,

Log4j 維護者一直在為緩解措施而失眠:修復、檔案、CVE、對查詢的回復等,然而,沒有什么能阻止人們痛罵(bush)我們,因為這份沒有報酬的作業,其實我們都不喜歡這個出于向后兼容性問題而需要保留的功能(指 JNDI ),
這是一個非常現實的問題,我們姑且將這個問題稱之為“開源可持續性問題”,通常來說,一個開源專案,要不就是反響平平無法形成生態,導致開發者熱情逐漸降低、慢慢停掉;或者專案是大熱門,很多個人和公司都在用,但 —— 除了出問題的時候問一下,幾乎沒有人會為開發者提供財務支持或貢獻代碼修復,
而那些使用免費資源而從不回饋社區的公司,他們對開源軟體的利用一直是開源專案維護者的痛處,他們使用開源專案達到企業成本最小化和利潤最大化,然而這些利潤跟開發者一毛錢關系沒有,甚至還有公司出了問題趕緊甩鍋給開源作者,比如前段時間 curl 作者吐槽蘋果把他當做免費工具人:
“想象一下,一家市值萬億美元的公司將各種開源組件應用到自己的產品中,每年賺取數十億美元的利潤,當這家公司的一個用戶向它提供的產品尋求幫助時,公司卻把用戶推給開源專案,這個開源專案是由志愿者運營和維護的,這家公司從未贊助過一分錢,”
這樣的情況已經持續了相當一段時間,不過現在已經有人在思考這個問題,并給出了一些權衡的建議,上周六,谷歌密碼學家和 Go 語言安全負責人 Filippo Valsorda 在個人博客呼吁:開源專案維護者應當和那些使用軟體的公司進行更專業的交流,以獲得付費支持,使開源更具可持續性,
Filippo 指出一個問題:目前大多數開源專案維護者屬于以下兩類之一:志愿者或大公司員工,有時兩者兼而有之,但這兩種模式其實都不健康,一個成功專案的普通維護者其實有資格成為高級軟體工程師,這些人每年可以輕松賺取 15W-300W+ 美元的年薪,但現在他們的開源專案經濟來源只有 GitHub Sponsors 和 Patreon(一個募捐網站),這是兩種不嚴肅且不穩定的薪資來源,
而被聘為大廠的全職開源員工也并非上策,踏入公司的第一步你就成為了資本的一部分,隨著主管和績效組的“如何證明你的作業和工資相匹配?”開發者開始背上各種 KPI ,主動或被動地卷,將越來越多的時間花在努力證明自己的作業和價值都非常重要 —— 在這種壓力之下,大部分開發者將逐漸喪失對開源專案的熱情,這種情況在多個公司和生態系統中一遍又一遍地上演,
綜合目前的情況,Filippo 提出了一個新的觀點:既然大公司需要專案供應鏈安全和質量達到標準,那么他們就有必要為使用的開源專案付費 —— 公司可以跟開源軟體開發者建立合同關系,按照市場價的薪資支付,然后要求開發者保證專案的質量和漏洞問題,反過來,專案的維護者仍然可以自由地持續關注專案,優先考慮專案的長期健康狀況,并滿足公司對專案的要求,
這種流程和生態的建立需要一些時間,重點在于如何轉變公司的態度 —— 公司,尤其是資本控制的上市企業,完全沒有為大型產品、專案和服務核心的開源組件付費的熱情,它們只會在開源許可證和法律底線的條件下做利益最大化的事情,而不是“公平交易”,而目前流行的一些許可證,像 Apache 、MIT,都是提供所有內容但要求的東西很少,更進一步滿足了企業白嫖的需求,
目前世界 500 強企業所使用的許多重要的開源專案都由志愿者在下班后的業余時間維護,這些企業甚至連代碼安全性都懶得審查和測驗,開源維護者創造了大量價值,但幾乎一無所獲,這種開源文化是無法長久持續的,是時候做出一些改變了 —— 開源維護者這個角色應當成為一個真正的、有適當報酬的職業,而不是依賴寥寥無幾的捐款的業余愛好者或者企業的免費勞動力,

題外話:
Log4j2 的開發者和維護者 Ralph Goers 在 GitHub 上僅有 3 名贊助者,
我是 Apache 軟體基金會的成員,也是 Apache Commons、Apache Flume、Apache Logging Services 和 Apache Maven 的 PMC 成員,我創建了 Apache Log4j 2的初始版本,并繼續將我的大部分精力放在提供支持和改進上,以使 Apache Log4j 2 成為目前從事軟體架構師全職作業的 Java 開發人員的最佳日志記錄框架,我在業余時間從事 Log4j 和其他開源專案,我通常從事我最感興趣的那些問題,我一直夢想著全職從事開源作業,希望您的支持能實作這一夢想,

近期熱文推薦:
1.1,000+ 道 Java面試題及答案整理(2021最新版)
2.勁爆!Java 協程要來了,,,
3.玩大了!Log4j 2.x 再爆雷,,,
4.Spring Boot 2.6 正式發布,一大波新特性,,
5.《Java開發手冊(嵩山版)》最新發布,速速下載!
覺得不錯,別忘了隨手點贊+轉發哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/385250.html
標籤:Java
