▓成人丝瓜视频▓无码免费,99精品国产一区二区三区不卡 ,大长腿白丝被c到爽哭视频 ,高清无码内谢

澎湃Logo
下載客戶端

登錄

  • +1

創造無數價值的開源程序員們,竟是在為愛發電?

2023-07-31 16:20
來源:澎湃新聞·澎湃號·湃客
字號

開源正在面臨崩塌。

這是從1987年到2020年,世界上最大的開源開發者平臺Github上的項目活躍度和貢獻者人數變化趨勢。

你很容易發現,從2012年起,兩個指標都出現了斷層式下滑,現在已經掉回了本世紀初的水平。

讓我們從一個開發者的故事中,來看看這一切發生的原因。

一、崩塌的理想

九年前的一晚,俄羅斯開發者Denis Pushkarev發布了Core-js。

五年之后,他卻面臨牢獄之災。

2014年,當時的JavaScript(一種在Web開發中具有非常重要地位的腳本語言)缺乏一個足夠龐大的標準庫,也就是編程語言的常用功能和工具集合,而且有著嚴重的兼容性問題。

開發人員必須要自己編寫一些數據結構和算法,或者使用第三方庫才能夠完成自己的工作。而有些代碼在不同瀏覽器之間存在差異,經常無法運行。

世界各地的互聯網公司和程序員屢次嘗試,但都沒有很好地解決這些問題。

那一晚,Denis讓這些問題成為了過去式。為了讓無數的開發者更加方便地使用JavaScript,他將自己的Core-js作為開源項目發布了出去。

但是如今,Denis卻將這一決定稱為“一生中最大的錯誤”。

Core-js是一個全面的JavaScript標準庫,可以在很大程度上讓開發者們避免JavaScript之前一直存在的問題。

用一個簡單的比喻,Core-js對于Java開發者而言就像一把瑞士軍刀,易攜而且能夠很快解決他們此前頗為棘手的各項問題。它的出現意味著開發者們可以更快速、便捷地開發和部署Web應用程序。這給開發者們帶來了曙光。

得益于此,Core-js一經開源就深受開發者們的歡迎,初期傳播便呈指數級增長。下面的第一張圖表示的是Core-js的每月下載量的變化趨勢,而第二張則表示下載量累加值的變化趨勢。你會很快發現它的下載量是多么驚人,并且長期以來處于增長態勢。

時至今日,Core-js的下載量累加值已經超過了76億次,相當于地球上每個人都人均下載一次。當然,考慮到前端程序員在我們生活中占比少數,可想而知它在代碼世界中的重要性。

“我可以肯定地說,大多數流行網站都在使用Core-js。而且不僅僅是關于網站前端,幾乎所有使用JavaScript的地方都有Core-js的身影。”Denis說。

這句話展現了他的能力非凡,但帶有一絲自嘲的味道。

原因在于:如此高的下載量卻沒有給他帶來一分錢的收入,只因為這是一個開源庫。進一步的,這個開源庫的維護工作還將他拖入了深淵。

Core-js并不是一個可以寫完就丟在一邊的項目,它和Web的狀態綁定,需要時刻更新維護。出于對項目的負責,Denis身陷于此。他漸漸發現,自己沒有精力同時兼顧本職工作和對它的維護。

一開始,Denis希望能夠找到與他志同道合的其他開發者加入維護項目,但均以失敗告終。沒有人愿意和他完成這項沒有任何報酬的工作。

于是,他最終選擇辭掉原本的高薪工作,全職從事開源——那時候的他以為“金錢不是第一要義”。

之后的幾年,雖然Denis失去了工作,但靠著一些短期合同,還能夠保持體面的生活。

直到2019年的那場車禍。

那年,Denis因摩托車禍致人傷亡,被判入獄18個月。這意味著,在一年半的時間里,這個對世界互聯網如此重要的Core-js將無法被維護。

Denis試圖與受害者和解,但高昂的賠償和律師費讓他無力承擔。他在開源平臺上募集贊助,結果一個月間,只收到了57美元。與此同時,Denis聯系了很多開源開發者,希望對方能夠在他服刑期間幫助維護Core-js,但乏人響應。

最終,Denis籌措不到和解資金,認罪入獄,并在十個月后提前出獄。在此期間,Denis只能委托一位不搞開源的朋友負責項目基礎維護。

出獄后,Denis仍在堅持維護Core-js。但一個月400美元的微薄收入,讓已經成為父親的他力不從心。他正在重新考慮自己的選擇和努力是否真的正確。

“我受夠了以犧牲我和家人的幸福為代價,來幫助無數大公司了。我想要確保我家人的生活,想讓我兒子有一個光明的未來。”

二、無名的英雄

在萬千開源工作者的生涯中,這樣的故事不是個例。他們為了更美好的互聯網世界作出貢獻,但現實很難報之以歌。

開源項目,指的是開放源代碼、公開使用且非盈利的項目。它們可以是完整可用的應用程序,而有一些項目是用于組成其他程序的模塊。程序員們使用這些開源模塊來構建自己的應用程序、網頁等。

用最簡單的話說,開源等于你將自己的軟件工作贈予了世界。

這樣做的意義是什么?在于它打破了大公司的技術壟斷,讓平民能夠用上便宜的技術。

傳統的商業軟件通常需要支付昂貴的許可證費用才能夠使用,這是小企業和個人無法承受的。但開源的出現打破了這一局面,讓小型組織獲得以往難以想象的創新和發展機會。開源者在其中謀求的,是精神上的富足。

此外,開源項目的開發模式與人們此前理解的軟件開發,有著很大的區別。

你可以把開源程序看做積木,在一個開源程序的生命周期中,它們會參與成千上萬個應用程序的構建,就像一塊塊積木可以搭建成不同的城堡。也正因如此,開源程序必須時刻保持更新,使其能夠兼容最新版本應用程序的開發。

當人們想要開發一個開源項目時,他們一般會先提出問題和建議,這些問題和建議由一個或一組維護者來管理。接著,維護者與開發者討論開發的方向和實現方法,并規劃好每個階段的目標和時間表。

開發者根據討論和規劃編寫代碼,并定期將代碼提交到Github上的倉庫中。每個提交的代碼都對應一個特定的功能或修復,這些功能和修復可能由多個開發者完成。開發者通常采用分支開發模式,每個分支對應一個特定的功能或修復。

當一個功能或修復完成后,開發者會提交一個合并請求到倉庫中,請求維護者審核并合并代碼。維護者會審核合并請求中的代碼,并提出修改意見或建議。開發者再根據維護者的反饋進行修改,再次提交請求。維護者最終審核通過后,會將代碼合并到主分支中。這樣,開源項目就能不斷地得到更新和改進,更好地滿足用戶的需求。

簡單來說,做開源項目就像是很多人一起蓋房子,維護者是這座房子的總設計師,但是其他開發者也都可以一起完善這座房子,根據自己的想法提出意見并改建。久而久之,這座房子在眾人的加工下變得日益精美、完善。最后,不僅是開發者,任何人都可以拷貝這套房子的圖紙,用它來修繕自己的家。

開源開發者們也有自己的生活和工作,但是為了更好的互聯網、更好的世界,他們成為了志愿者,無償地分享自己的技術和天才般的想法,為社區和用戶提供更好的產品和服務。

而在這樣的共建過程中,開發者們可以自由坦誠地相互交流和學習。遇到不懂的難題,總會有“大佬”伸出援手,帶領更多的后輩繼續探索無垠的代碼世界。這樣的模式與環境培養了可觀的技術人才。

因此,你可以從這樣的模式中理解,開源開發者們很難獲得收益。一般來說,一個開源項目也提倡捐款,或者由開源基金會統一收集捐贈款項。但作為一個非強制性的政策,捐款得來的收益自然就聊勝于無了。

下面是Github歷史上最熱門的開源項目。

你還會看到那些提交了最多代碼的開源貢獻者們,他們對于今天的世界互聯網搭建舉足輕重。但他們的名字卻鮮為人知,就像是黑夜里的英雄,無法被人關注。

“每天擠時間持續維護了8年,不僅累,而且不賺錢,也沒幾個人用,純靠興趣,但還是會繼續維護下去。”國內知名開源開發者Ruki表示。盡管面臨重重困難,但他仍舊打算繼續自己的開源之路。

2021年,知名軟件包管理平臺Tidelift發布的開源維護者調查報告顯示,開源維護者們最在意的事情是通過自己的努力讓世界更美好,只有很少的人會在意獲得的報酬。

同樣的,Tidelift也調查了這些開源開發者們每年的收入。發現近半數開發者并不能從他們的開源工作中獲得一分錢的收入,而只有約13%的開發者能夠僅憑開源項目維持生計。

三、困獸的牢籠 

“為愛發電”很難持續。Github社區因此面臨了我們開頭提到的衰落。 

尤其是,停止維護的開源項目數量也在逐年增加。截至2021年,可獲取的數據顯示,絕大多數開源項目已處于廢棄(超過一年不再更新)狀態。

到了現在,GitHub上有近半的代碼已經無法使用(無法適配其依賴內容),可以預見,這樣的比例還會繼續上升。

而是什么導致了這一現象?

首先,開源開發的志愿者基數正在減少。隨著免費開發開源項目的志愿者的數量減少,有償的開源開發工作并未增加到足以填補這個空缺。就像一塊大蛋糕被削掉了一大塊,但我們又沒有足夠的奶油去填滿這個大洞。越來越多的開源項目因此慢慢被放棄維護。

其次,公司的資源管理模式也影響了開源開發。現在,比起無償的志愿代碼貢獻,有償的代碼貢獻變得越來越常見。公司希望程序員們將更多時間用于開發公司需要的功能,縮減了他們的空閑時間,影響他們無償開發自己想要的開源功能。

此外,參與開源項目的行為正在發生變化。越來越多的人選擇偶然性地參與,比如修復一些小錯誤或提出一些建議,而非長期貢獻。這就好比過去的志愿者愿意長期在公園做環保清潔工作,現在則更多的人只是路過時順手撿起一片垃圾。

最后,開源項目的質量正在逐年下降。越來越多參與者提交的代碼質量低,讓開源項目擁有者的審核工作量加大,負擔加重。就像在一個篩選果子的過程中,如果我們發現大部分的果子都有病蟲害,那么這個篩選過程就會變得更加繁重和復雜。

不僅如此,開發者們開源的目的正在悄然改變。開源曾經是純粹的集體志愿服務,現在則更多地被看作是個人職業發展的方式。這就像過去人們為了公益而志愿植樹,現在則是為了積攢履歷和提高職業技能。

隨著技術的不斷進步,代碼變得越來越復雜,對開發人員的技能要求也越來越高。對于初學者來說,這就好像他們剛剛學會了游泳,卻被要求跳進一個無底深淵。

以下是一些具體的例子,它們能進一步揭示開源領域的問題和挑戰。

第一個案例是James,他曾參與一個名為Apache的開源項目。然而,他很快就遇到了困境。他表示:“治理問題對我來說遠比提交的補丁更為復雜,讓我感到束手無策。”就像一個家庭主婦在整理一堆雜亂無章的衣物,不知道從哪里開始,這種情況無疑讓人感到挫敗。

第二個例子是一個開發者遇到了一種新的編碼風格,也就是每一位開發者寫代碼時所獨有的特殊風格,他在此前的編程工作中從未接觸,因此他對此并不認同。他需要將自己的模塊修改到這種規范格式上,他感到既無意義又無聊。這就像讓一個藝術家在畫布上需要嚴格按照他不贊同的風格創作,創作過程自然乏味。

最后一個例子是一個項目的糟糕維護。該項目的一位貢獻者表示,他搞不清楚自己做的事情是否符合項目的要求。當他向項目維護者提出這個問題時,維護者的回復是讓他自己找方法解決。這就好像一個廚師正在準備一道復雜的菜肴,卻發現菜譜描述得太糟糕,而當他向寫菜譜的人詢問時,卻被告知需要自己去摸索。這種情況無疑令人感到沮喪,最終他選擇了放棄。

四、最后的吶喊

上面的數據在冷酷無情地告訴我們:開源正在逐漸消失。早晚有一天,它可能會不見蹤影。充滿熱情與自由的互聯網世界,恐怕真的會離我們遠去。

那么,我們能為開源做些什么呢?

或許我們并不懂編程,但是我們可以打開Github,看看那些開源作者們都做了哪些貢獻,要是看到比較欣賞的,可以點個星標或者關注。是的,對于開源開發者們而言,精神上的鼓勵,比金錢更能讓他們滿足。

如果手頭有點閑錢,我們可以很方便地找到一些開源基金會,給它們一些資金上的支持。這些資金可謂雪中送炭,會幫助開源開發者們讓他們渡過難關,繼續堅持自己的理想,為這個世界做出更多貢獻。

或許你也學過一點編程,也有時間和興趣繼續在這個領域鉆研。那么歡迎你加入開源共建,和廣大的開源開發者們一起,成為這個世界的英雄。不用擔心自己技術不夠好,能力不夠強,因為你會發現身邊的每一個開源作者都會耐心地指導你,你的疑問和困難總是會有人給你意見。

直到有一天你也成了他們。

作者:池光耀,沈巖松,梁子平,趙靖文

指導老師:趙鹿鳴

本文為上海外國語大學新聞傳播學院《數據可視化》(本科)課程作品

 

參考資料:

[1]知乎:如何看待國內開源項目的不可持續性https://www.zhihu.com/question/355691918/answer/2076173699

[2]差評:坐擁千萬用戶的大佬,竟然窮到刪庫跑路?https://mp.weixin.qq.com/s/gZkyKtzPD4RsXS7DVl-Vpw

[3]2021_Tidelift_Maintainer_Survey_FINAL.pdf https://tidelift.com/subscription/the-tidelift-maintainer-survey#form

[4]白開水不加糖: 開源如此火熱,但研究表明該領域已不再增長 - OSCHINA https://www.oschina.net/news/118100/open-source-is-not-growing-anymore

[5]CSDN:入獄 10 月、網暴不斷,并掙扎在溫飽線!超 90 億次下載的開源項目,背后是這樣的9年 https://mp.weixin.qq.com/s/TSY5_ZWzkaaS0obhFfs3Vg

[6]Michael Dornera, Maximilian Caprarob, Ann Barcombc, Krzysztof Wnuka:A Replication Study on Measuring the Growth of Open Source https://arxiv.org/pdf/2008.07753.pdf

[7]michaeldorner:Quo Vadis, Open Source? - GitHub https://github.com/michaeldorner/quo-vadis-open-source

    本文為澎湃號作者或機構在澎湃新聞上傳并發布,僅代表該作者或機構觀點,不代表澎湃新聞的觀點或立場,澎湃新聞僅提供信息發布平臺。申請澎湃號請用電腦訪問http://renzheng.thepaper.cn。

    +1
    收藏
    我要舉報
            查看更多

            掃碼下載澎湃新聞客戶端

            滬ICP備14003370號

            滬公網安備31010602000299號

            互聯網新聞信息服務許可證:31120170006

            增值電信業務經營許可證:滬B2-2017116

            ? 2014-2025 上海東方報業有限公司

            反饋
            主站蜘蛛池模板: 罗江县| 桦南县| 三原县| 邹平县| 巴南区| 邯郸市| 嫩江县| 如东县| 公安县| 丁青县| 江都市| 辽宁省| 健康| 卢氏县| 广安市| 三河市| 积石山| 磴口县| 嘉善县| 丹江口市| 犍为县| 图木舒克市| 安阳市| 巴青县| 华阴市| 邵武市| 沈阳市| 汽车| 丹凤县| 通海县| 夏邑县| 阿荣旗| 康乐县| 西宁市| 北流市| 新源县| 双桥区| 天津市| 万山特区| 美姑县| 金溪县|