坐擁千萬用户的大佬,竟然窮到刪庫跑路?_風聞
差评-差评官方账号-2022-01-24 07:48
本文原創於微信公眾號:差評 作者:差評君
關注科技圈的差友,前段時間應該聽過這麼一個事情。
開源項目 faker.js 和 color.js 的開發者 Marak,一夜之間清空了所有項目,並塞進一些惡意代碼。
雖説 Marak 名聲不大,但這兩項目可是在開源界極其火爆。
Faker.js 可以幫開發者生成偽數據,Color.js 可以幫助網頁着色。它倆在 NPM**( 組件庫網站 )**上每週下載量加一起近乎 2700 萬。
所以 Marak 這通操作,讓很多用户突然無法工作,引起了不小的混亂。
用户應用輸出亂碼 ▼

當然,Marak 這麼做可不是因為中午多喝了 2 杯。
而是作品一直被各大公司白嫖的同時,經濟上還遇到了困難,心裏不平衡引發的。
這故事裏細節還挺多的,差評君簡單給大家講講。
2020 年 10 月,Marak 發推特説它的公寓失火,家當都燒沒了。希望大家走過路過,多少意思一下。

但看這寥寥無幾的轉發和點贊數,我估摸他是沒收到多少錢。
接着,他又從小道消息得知,不少大公司都在大量使用他的項目。
而他作為作者,不僅沒撈到啥錢,甚至現在都要流浪街頭了。
換做是誰,可能心裏都有點不爽。
於是 Marak 就發了一個通告説,不想搞免費了。
你們這些白嫖怪要麼給個 6 位數的合同,要麼 Fork ( 類似於復刻 )一份代碼自己研究去。

然而,理他的人並不多。
後來為了生存,他基於 Faker.js 做了一個網頁版的應用 Faker Cloud。
但沒多久他發現別的公司也開發了一款類似的,服務正是基於 Faker.js,於是他向那個公司發郵件,問要不收購 Faker Cloud 算了。
但是對方只是敷衍了一下,沒有再回應。
最後,這個擁有頂級開源項目的老哥,由於一窮,二賺不到錢,三總被白嫖,選擇了刪庫。。
關於這件事,網友觀點也不太一致。
有人説他不守規則:你都開源了,別人再怎麼白嫖你,也是按規矩來的。
但也有很多的人認為“ 為眾人抱薪者,不可使其凍斃於風雪 ”。
圖源IT之家 ▼

意思就是這些開發者是為大家提供便利,在他們遇到困難時,那些白嫖他們成果的公司,理應提供點支持。
不知道各位差友怎麼看,差評君先就事論事:
老哥刪庫可以,但他想法不對,推送惡意代碼更不對。另外那些公司白嫖 Faker.js 在法律上沒啥毛病。
看到這可能有的差友急了,你這是公開支持白嫖怪?
當然不是,看看文章結尾的點贊和在看,你就知道差評君向來不鼓勵大家白嫖。
在解釋觀點之前,大夥兒不妨先認識一下開源這個玩意。
為了更好的理解,我們把代碼比喻成菜譜。
你擅長做一個菜,併為此寫下一份菜譜。

開源呢,就是你把這份菜譜公開出來,用的原材料和配方,別人都能看到,也能複製一份。
當然,別人也可以根據自己口味,在你的菜譜上做點改動。
這就是開源。
但通常來講,為了維護開源社區,代碼不被濫用,大家開源時還會加一份開源協議。
大大小小的開源協議有上百個,非常複雜。目前主流的有:MIT、GPL、BSD、Apache。
它們主要區別就是,別人修改代碼後是否可以閉源( 私藏起來 ),是否要遵循同樣的開源協議。
圖源阮一峯博客 ▼

比如你選了 GPL 協議,那別人改動你的菜譜之後,他也要公開出來,不能藏着掖着。
但如果你選了寬鬆點的 MIT 協議,別人改動菜譜後就無需公開,還能把它作為“ 秘方 ”,開個排檔賺點錢啥的。
刪庫這件事中的老哥 Marak,選的是 MIT 協議。
這個協議裏可沒規定別的公司不能用 Faker.js 賺錢,也沒規定使用 Faker.js 後要付錢給 Marak。
所以人家白嫖,在法律上,確實是沒啥毛病。
那為什麼説 Marak 想法不對呢。
首先啊,一個項目開源了,相當於給別人提供了自己的結晶,方便了大家。
第二,項目開源後,參與的人自然變多了。那大家一起改善優化,技術也會進步得快。
所以,開源本質是給大家提供便利**,促進技術發展。**

但 Marak 呢?
他選擇了 MIT 協議,就理應做好會被別人“ 白嫖 ”的準備。
卻因別人用他項目賺錢,自己沒賺到錢,一怒之下刪庫甚至放入惡意代碼。
這,恐怕有點違背了開源精神吧。如果每個開源維護者都像 Marak 這樣,不全亂套了麼。
Marak 真想賺錢,其實辦法挺多的。
就憑這 2 個火爆的開源項目,我想他不難找到一份好工作吧?

或者,他也可以像 Redhat 一樣,提供免費版產品,當用户遇到技術問題,再提供付費支持。
要實在不行,就想躺平,也可以和之前一樣,每個平台都放上贊助碼。只不過人家幫你是情分,不幫是本分。
當然了,差評君寫這篇文章並不是要背刺一下 Marak,而是因為這件事****映射出了開源界的現狀:
絕大多數開發者們和 Marak 一樣,在開源項目上幾乎就沒啥回報。
美國有一家公司叫 Tidelift,他們的產品可以幫別人管理開源項目,所以平時會和大量優秀的開發者打交道。
去年,他們做了一份《 開源維護者現狀調查 》報告,有 400 人蔘與了調查。
調查發現,46% 的開源維護者在開源項目裏賺不到 1 分錢。

我們假設 1 萬美元可以供一個人吃住行 1 年,那只有 13% ( 7%+1%+5% )的開發者能達標。
也就是説,10 個開發者中,僅有 1 個人能靠開源生活。
真實情況可能更慘。
差評君寫文章時採訪了一個 7 年程序員同學,他説開源是好的,利於互聯網發展。
但當我問到他,開源就是用愛發電嗎,如何賺錢呢。
他説:我不太懂其中的商業模式。

事實上,大部分開發者和他一樣。
他們沒有商業思維,開源時就沒太考慮要怎麼賺錢。
關於開源帶給自己的物質利益,他們能想到的,除了是把它作為個人簡歷,好找一份得當的工作,最多也就是放上一個收款碼賺點零花錢( 收入全靠他人自願 )。
他們想法都很純粹,就是要促進技術發展。
當然,大家都是普通人,誰會不愛錢呢?如果開源能多賺點錢,那肯定開心。

但,賺不到錢,他們也不會怎麼樣。
當初選擇開源,就已經決定用愛發電了,該更新的還會更新,該修補的漏洞還會去修補。
前段時間 log4J2 漏洞事件大家都知道吧。
出事之後,有人追責甩鍋,有人擔心漏洞影響,卻很少有人關心 log4J2 的維護者。
説出來你不信,Log4J2 這麼大一個開源項目,只有 3、4 個程序員在業餘時間來管理和維護。
曝出漏洞後,他們第一時間就在努力修復,他們有問別人要過回報麼?

雖然吃力不討好,但他們依然堅持着。。
這樣的事情,這樣的開源維護者,還有很多很多。
我知道,我們沒有贊助他們的義務,但差評君還是希望,大家可以在力所能及的地方,多給給這些人一些關注和支持。
他們把工具和知識分享出來,為別人帶來便利,也加快了技術進步。
他們為互聯網發展帶來了很大的貢獻,他們在做一件非常有意義的事。
如果真要問,是什麼讓他們選擇開源,是什麼讓他們堅持下來。
也許 Tidelift 上的投票會給你答案。

71% 的開發者選擇了 Making a positive impact on the world。
——為世界創造積極的影響。
圖片、資料來源:
魔術師卡頌:2021全球開源維護者生存現狀
魔術師卡頌:Faker.js作者:要麼付錢要麼你行你上
機器之心:暴力拒絕白嫖,著名開源項目作者刪庫跑路,數千個應用程序無限輸出亂碼
2021_Tidelift_Maintainer_Survey_FINAL.pdf
阮一峯博客
知乎:如何看待faker.js 開源作者刪除了所有的代碼?
IT之家:開發者自己破壞 GitHub 兩個知名開源庫,大量用户受影響
