<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          白嫖把“開源”搞崩了!

          共 2760字,需瀏覽 6分鐘

           ·

          2021-12-16 15:11

          英文作者:Christine Xe 是一名全棧工程師

          中文編譯:“云頭條”

          “開源”崩了!

          或者換句話說,除非你付錢給我,否則為何我要編寫有用的軟件?

          4642f0567f263a9b288b19e799a02ae3.webp

          近日 Java 生態(tài)系統(tǒng)一個(gè)至關(guān)重要的軟件包 log4j2 曝出了一個(gè)嚴(yán)重的安全漏洞,對(duì)整個(gè)互聯(lián)網(wǎng)構(gòu)成了嚴(yán)重的威脅。一旦完全淪為了武器,該漏洞讓攻擊者就可以脅迫 Java 服務(wù)器執(zhí)行從 LDAP(輕型目錄訪問協(xié)議)服務(wù)器獲取的任意代碼。

          我認(rèn)為這起事件是一個(gè)完美的縮影,揭露了“開源”軟件方面存在的所有主要的生態(tài)系統(tǒng)問題。

          對(duì)此我確實(shí)有幾點(diǎn)想法要一吐為快,因?yàn)槲艺J(rèn)為 log4j2 是一個(gè)堪稱完美的例子,表明了這方面面臨的最糟糕的情況之一。與該問題有關(guān)的所有人都完全有理由聲稱自己提供有效的方案解決實(shí)際問題,但也在這個(gè)過程中造成了一個(gè)巨大的漏洞。

          a2d3df013325294805309f131706bac7.webpXKCD 漫畫 Dependency

          所有軟件都是站在巨人的肩膀上開發(fā)而成的

          不妨考慮像在 Linux 內(nèi)核上運(yùn)行 SSH 服務(wù)器這么基本的事情。就這個(gè)組合而言,你將至少面對(duì) 10 家供應(yīng)商(假設(shè)使用默認(rèn)配置下的精簡版 Alpine Linux 系統(tǒng)),這就意味著至少有 10 家獨(dú)立的組織仍然需要用真金實(shí)銀來支付賬單,無論有多少數(shù)量的用戶在使用它們免費(fèi)贈(zèng)送的軟件。Alpine Linux 也是表明該問題的一個(gè)典例,因?yàn)樗?jīng)常在 Docker 語境下使用,在實(shí)際的生產(chǎn)環(huán)境下為許多公司提供支持。你認(rèn)為這些公司中有多少家資助 Alpine Linux 項(xiàng)目?你認(rèn)為這些公司中有多少家甚至考慮過資助 Alpine Linux 項(xiàng)目?

          我以前與別人探討過此類話題,但令我感到驚訝的是,大家對(duì)這個(gè)觀點(diǎn)有很大的抵抗力:確保真正讓企業(yè)運(yùn)轉(zhuǎn)起來的零星自愿開發(fā)者能夠支付房租

          現(xiàn)在盛行的是這種陋習(xí):從開源社區(qū)那里獲取利益,而不給予回饋。好像開發(fā)依賴項(xiàng)的那些人無關(guān)緊要

          一方面是由熱情的開發(fā)人員維護(hù)開源軟件,另一方面是一味獲取而不給予的做法,形成了鮮明對(duì)比

          9707e201417c5bc02c316547a0011c97.webp

          眾所周知,GitHub 的星標(biāo)(star)是無法用于支付租金。這方面的一個(gè)例子是鬧得沸沸揚(yáng)揚(yáng)的 core-js 烏龍事件。

          core-js 是一個(gè) JavaScript 庫,它為 JavaScript 的標(biāo)準(zhǔn)庫提供了許多的核心原語(primitive),這些核心原語可以讓你無需使用其他庫。但這個(gè)庫同樣臭名昭著,原因是每當(dāng)你在 CI 中安裝它,就可以知道項(xiàng)目作者在尋找工作。你可能已經(jīng)看到下面這個(gè)消息已有上千次了:

          6290553d36a8a9a21ad3c7ffab8dd2b6.webp

          該項(xiàng)目的開發(fā)者因車輛過失殺人罪可能還在坐牢,也可能已經(jīng)被釋放出來。core-js 是 React 的一個(gè)依賴項(xiàng)。你們中又有多少人實(shí)際為這個(gè)項(xiàng)目捐過款?尤其是如果你平常使用 React?

          現(xiàn)在我們不妨把目光轉(zhuǎn)向 log4j2。該項(xiàng)目實(shí)際上在標(biāo)準(zhǔn)庫中,供 Java 用戶使用。這個(gè)庫在現(xiàn)代 Java 中是如此地根深蒂固,以至于你會(huì)以為它的開發(fā)人員會(huì)資金充裕,除了那個(gè)庫之外不需要專注于其他任何事情,是不是?

          然后事實(shí)并非如此。

          9df8d9de3539fcd3bc67d0d973fdb237.webp

          沒有人付錢給 log4j2 的維護(hù)者!?

          Apache 軟件基金會(huì)官網(wǎng)有整整一頁內(nèi)容來描述“項(xiàng)目管理委員會(huì)”的職責(zé)。..... 卻沒有人付錢給他們?

          從昨日起,開源社區(qū)需要成長起來。

          Log4j 維護(hù)者一直在通宵達(dá)旦地開發(fā)緩解措施、修正版、文檔、CVE、回復(fù)咨詢及處理其他事務(wù)。可是沒有什么阻止人們因?yàn)槲覀兎治膱?bào)酬未得的工作,因?yàn)槲覀兌疾幌矚g卻因向后兼容顧慮而需要維護(hù)的某項(xiàng)功能而炮轟我們。

          f37fbc70b466322ac2d25cbcd82a3f11.webp

          這是修復(fù)了導(dǎo)致數(shù)至少百萬美元損失的漏洞的維護(hù)者(Ralph Goers)。

          • 我在業(yè)余時(shí)間開發(fā)維護(hù) Log4j
          • 始終夢(mèng)想著能專職從事開源工作
          • (截圖時(shí))有 3 個(gè)贊助人資助@rgoers 的工作:Michael、Glenn 和 Matt

          b96680434cfbb1c407c29ae10d792573.webp

          我現(xiàn)在是 Apache 軟件基金會(huì)的成員,也是 Apache Commons、Apache Flume、Apache Logging Services 和 Apache Maven 的項(xiàng)目管理委員會(huì)(PMC)成員。我開發(fā)了 Apahe Log4j 2 的初始版本,繼續(xù)把我的大部分精力投入在這方面上,以提供支持和改進(jìn),從而設(shè)法使 Apache Log4j 2 成為 Java 開發(fā)人員眼里最出色的日志框架。*

          我目前有一份專職工作:軟件架構(gòu)師。我在業(yè)余時(shí)間開發(fā) Log4j 及其他開源項(xiàng)目,因此我通常處理我最感興趣的那些問題。我始終夢(mèng)想著能全職從事開源工作,希望能得到您的支持,以便這個(gè)夢(mèng)想成真。*

          如果你使用別人在業(yè)余時(shí)間開發(fā)的軟件,覺得它很有用,那就付錢給他們

          到昨天為止,Log4j 項(xiàng)目總共也就 3 個(gè)贊助商。沒錯(cuò),總共就 3 個(gè)。

          到今天為止,這個(gè)數(shù)字現(xiàn)在增加到了 14 個(gè),然而這不是借口。這個(gè)人獲得的資金數(shù)量應(yīng)該與使用 log4j2 在整個(gè)生態(tài)系統(tǒng)的重要程度相匹配。

          這點(diǎn)不容置辯。這個(gè)人在業(yè)余時(shí)間出于愛好所搞的項(xiàng)目居然影響到半個(gè)互聯(lián)網(wǎng)的運(yùn)作。容易受到該問題影響的公司包括蘋果、谷歌、我的手機(jī)運(yùn)營商以及基本上在默認(rèn)配置中使用 JavaEE 的每家公司。

          如果 log4j2 關(guān)系到貴公司的成功,你在道義上就有義務(wù)向費(fèi)力不討好地創(chuàng)建這個(gè)庫的人捐款。

          我有一個(gè)朋友長期以來一直在費(fèi)力不討好地維護(hù)一家在線廣播電臺(tái)的技術(shù)堆棧。他受到了其用戶不公正的對(duì)待。用戶們會(huì)在小費(fèi)罐中投入 5 美元,然后如果他沒有扔下手頭的所有工作、立馬解決用戶異常具體的問題,用戶就會(huì)非常生氣。他曾試圖在一些地方找到工作,但每當(dāng)對(duì)方老是試圖逼他放棄維護(hù)自己的項(xiàng)目,他不得不拒絕這些工作。與此同時(shí),收入來源減少的現(xiàn)象仍在繼續(xù)。

          這就是為什么我在下面這一點(diǎn)上很小心謹(jǐn)慎:如果沒有任何可靠的方法讓我可以為自己付出的努力獲得報(bào)酬,我不輕易開發(fā)“有用”的軟件,并將其發(fā)布給全世界。

          我根本不想到頭來落入這種境地:我出于熱情作為一個(gè)副業(yè)項(xiàng)目開發(fā)的軟件將許多人的公司緊密地聯(lián)系在一起。這就是我開發(fā)軟件以及把軟件開發(fā)到何種程度的方式或原則。

          沒有冒犯他人之意,但我真的不想白白付出我的努力。現(xiàn)有的寄生蟲文化將“開源”視為免費(fèi)勞動(dòng)力池,因而我很難想讓自己的副業(yè)項(xiàng)目像 log4j2 那么真正有用,除非你付錢給我。

          長話短說

          如果你想讓我為你開發(fā)有用的軟件,那就付錢給我。

          如果你使用別人在業(yè)余時(shí)間開發(fā)的軟件,覺得它很有用,那就付錢給他們。

          這個(gè)觀點(diǎn)應(yīng)該不會(huì)有大的爭議。這應(yīng)該不是什么新鮮事。這應(yīng)該已經(jīng)是行業(yè)現(xiàn)狀,我們軟件正常運(yùn)行所依賴的開源項(xiàng)目,眼看著那些開發(fā)者忍饑挨餓、乞求捐贈(zèng),確實(shí)很糟心。

          歡迎添加小編微信,進(jìn)入交流群


          推薦閱讀:


          瀏覽 47
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  懂色av一区二区 动漫操逼视频网站 | 久久精品夜色 | 中文字幕第6页 | 日韩免费一级 | avxxxxx |