天天看點

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

新智元報道

編輯:好困 袁榭

【新智元導讀】在開源程式界惹出「删庫跑路」大新聞的開發者Marak Squires,最近發聲:「人無完人,程式設計錯誤而已,GitHub你就不用再封我号了嘛!」

2022年的開源社群,全是瓜!

1月初,開發者Marak Squires給大夥兒表演了一個删庫跑路,而且針對的還是自己的兩個項目。

躺槍的碼農們一覺醒來發現,自己程式跑出來的全都是「亂碼」。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

雖然Marak表示自己「已經在努力修複了」,但群衆的眼睛是雪亮的。

很快他們就發現:這根本不是什麼bug,而是Marak本人在搞事情!

于是,作為項目的托管平台,GitHub讓Marak見識到了什麼是開源社群的鐵拳——封号。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

時間過去了10天,這位始作俑者似乎有點「後悔」了:

GitHub你怎麼回事?封号十天了,既不讓我修複項目的bug,也不回我的郵件。每個人都會時不時地犯程式設計錯誤。沒有人是完美的。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

嗯?「程式設計錯誤」?

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

對于Marak的控訴以及希望能回到GitHub的想法,網友們普遍表示:「大可不必」。

老兄,這不是一個「程式設計錯誤」,你知道的。這是在破壞公共資源。沒有人強迫你做出貢獻,而現在希望你做出貢獻的人更少了。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

你真的認為有人會讓你再次為一個廣泛使用的開源項目作出貢獻嗎?在你耍了這套把戲之後?

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

這二位網友在封号這件事上也是針鋒相對:

「他的代碼屬于他自己。他可以在代碼上做任何他想做的事。」

「GitHub的平台也屬于他們自己。他們可以在平台上做他們想做的事。」

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

删自己的庫,「斷」自己的路

作為兩個非常受歡迎的開源庫,「colors」在npm上每周的下載下傳量就超過2000萬次,并且有将近19000個項目正在使用,「faker」在npm上每周的下載下傳量超過280萬次,有超過2500個項目使用。

甚至連亞馬遜的雲計算開發工具包(aws-cdk)也用上了。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

1月5日,Marak釋出了「faker」的6.6.6版本。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

1月8日,Marak又在「colors」加入了v1.4.44-liberty-2。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

在新版中,Marak引入了一個無限循環的bug,會讓所有使用「colors」的程式在控制台無休止地列印各種非ASCII字元序列,進而讓數以千計的的項目直接崩潰。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

新美國國旗子產品

這些資訊包括文本「LIBERTY LIBERTY LIBERTY」,以及在後面跟着的一大串非ASCII字元。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

對于「faker」,Marak除了炸了自己程式之外,還修改了GitHub repo的README頁面。

這次,Marak直接攤牌了:endgame。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

1月7日,Marak發了一段自述視訊,不過現在已經看不到了。

同日,GitHub将他賬号封禁。

随後的幾天裡,事件在不斷地發酵,而他的推文也收到了1800個轉發和3700個點贊。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

然而,當網友對這位删庫跑路的「大神」越發地了解之後,支援他的人也越來越少。

也不知是不是想挽回點名聲,Marak在1月15日的時候發文表示自己已經在3天前就修好了程式的「bug」,但因為自己被封了是以沒辦法上傳至NPM。

不過,這個時候已經沒有人在關心這個項目了。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

而對于Marak撂挑子的「Faker.js」,很快就有8位開發者接手,并且表示會把項目做得得更好。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

https://fakerjs.dev/update.html

話說回來,雖然都是開源項目,但是協定分了很多種,GPL、MIT、Apache等等。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

比如GPL就要求,但凡你的程式用到了這個協定下的項目,你就需要公開出來。

而MIT就相對寬松得多,你可以随便修改和使用,隻需要在軟體和軟體的所有副本中包含著作權聲明和許可聲明即可。

而Marak采用的正是MIT協定。

是以,公司拿着他的項目去賺錢這個看似「白嫖」的行為,在法律上并沒有什麼問題。

Marak:打女友、造炸彈,但我是個寫碼好男孩

當然了, Marak并不這麼認為。

早在2020年11月,Marak就曾表示他不會再用「免費工作」來支援大公司了,而這些企業應該考慮用每年「六位數」的工資來補償。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

「恕我直言,我将不再用我的免費工作來支援财富500強(和其他較小規模的公司)。」

「你們可以把這當作一個機會,給我發一份六位數的年薪合同,或者把這個項目fork之後,讓别人來做。」

張嘴就要六位數美元年薪的Marak Squires,究竟是誰?

Marak Squires的公衆印象,集中在2010年代與2020年代的開頭。

2010年代開頭的Marak Squires,是最早一批「平台即服務」公司的聯合創始人。

他的高中同學與他創辦的Nodejitsu公司,被2011年的Business Insider雜志評為「紐約地區最值得關注的25個新星創業項目之一」,風投人還在文章中贊譽「這家公司擁有全明星陣容的軟體開發團隊」。

2013年Nojitsu成為彭博新成立的投資基金Bloomberg Beta首批投資的公司。

2011年,他還帶Nojitsu四分之三的碼農一起開發了一款多人實時用浏覽器合作寫歌的音樂小程式JSONloops。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

不過,從2010年代初的報道,就可以看得出Marak Squires雖然碼力一流,但實在不适合做老闆:

他在接受Observer采訪時,非常牛逼地自誇「哎呀我的缺陷就是不善于俯就……我司招人就招最尖子的軟體工程師,雖然損失了一些聲望,但成效很顯著哦~」。

而實際盈利的搞錢能力卻不一定相稱,在同一篇Observer采訪中,Marak Squires與老同學Charlie Robbins都表示「能盈利最好,盈利不了……呃反正我們有夢想!」的态度,JSONloops除了噱頭以外,就隻在Kickstarter上衆籌化緣了兩萬美元。

并且情商真的不線上,2010年底因為不滿Hacker News對他們公司的報道,Marak Squires黑掉了Hacker News的網站,讓登入者強行浏覽「此站對Nodejitsu的報道不确實」的彈窗,搞得 Hacker News封禁所有關于Nodejitsu的報道,甚至帶公司域名的貼就删。

2015年2月,Nodejitsu被GoDaddy收購,Marak Squires下一次被公衆關注,得等到2020年做炸彈客未遂被捕了。

2020年9月15日,Marak Squires在紐約租住的較高價的電梯大廈發生火災。火起後Marak Squires做出了經典的跳窗跑路動作,但跳到較高價的電梯大廈後院就躺平不跑,毫無懸念地被捕。被捕時「情緒狀态不穩」且「雙手有明顯燒傷」。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

火頭撲滅後,較高價的電梯大廈房東與他的鄰居在火場中發現了長導火索、「可疑粉末」、大批快遞盒後,被吓到報警。執法部門之後宣布以「魯莽危害他人安全」罪名起訴。

執法部門的現場采證與清查發現,盒子裡裝的、和公開的粉末都是猛料:導火索、硝酸鉀化肥、鎂粉、硫粉、銅粉、鋁粉和混合杯,軍用爆炸物、詭雷制作的教材,生存主義者宣傳品,等等。

其實不消之後的執法部門聯合釋出會确認,光看這些材料的目錄就知道,物主肯定是動了做炸彈搞個大新聞的念頭了。

畢竟托各種文藝作品普及的福,氮鉀化肥+鎂粉+導火索的配料組合是要幹啥簡直是婦孺皆知。而「生存主義者」現在在美國的公衆形象就是腦子有貴恙的怪咖:出大事要鑽洞避難做野人,沒有大事搞個大事也要……

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

而且Marak Squires的當下精神狀況的确堪憂:

2018年Marak Squires因打傷女友被捕,他在搶奪女友手機時挫傷女友手臂并留下劃痕;當時他有一個5歲的女兒,但目前「他和女孩的母親已經分居」。

2020年事發時,Marak Squires的鄰居紛紛表示他實在孤僻,幾乎沒和鄰裡有人際交往。不過也有鄰居表示寬容:「畢竟這年頭我跟自家孩子都交流得少」。

但事發後鄰居就不寬容了:「這貨簡直就是下一個郵包炸彈客嘛」「這貨跳到後院草坪上就躺倒不動了,跟沒事人一樣等差佬來抓,實在神經病。」

Marak Squires的精神狀況還在帶累家人,鄰居們都證明了他現在又有個小兒子,但他不準兒子出門,逼得小孩隻有坐在窗邊悄悄拉開窗簾往外招手。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

他的偶像亞倫·斯沃茨又是誰?

此外,在慘遭删庫的項目描述裡,Marak在還提到了一個人:亞倫·斯沃茨。

他寫到:「Aaron Swartz到底發生了什麼?」

這又是誰?

斯沃茨在網際網路經濟初起時,是常春藤名校中走出的又一個明星程式員和著名的網絡活動家,本來很有錢途,不過在一場法律訴訟後「自殺」身亡。

亞倫·斯沃茨的人生幾乎是2000年代的「碼力小天才」神話模闆:

1999年,12歲的他搭建自己的網站;

14歲時參與初代RSS的開發組;

2005年入學斯坦福後,與同道闖業闖得太投入,肄業開發内容平台Infogami;

憎惡「人生苦短快用Python」的風氣,就自己寫了與之競争的架構;

2005年他還參與了另一個後來人盡皆知的闖業項目:Reddit。雖然沒有工作很久,但Reddit被收購後的補償款,讓亞倫在還不能于美國合法買啤酒的年齡,就成了百萬富翁。

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

亞倫·斯沃茨還長得蠻帥,真是碼界萬裡挑一的人物

本來這個人生軌迹繼續走下去,很容易成為另一個紮克伯格。不過亞倫·斯沃茨的理想主義與不安分性格給自己惹了麻煩。

為标顯自己支援「知識開源」的态度,亞倫黑掉了MIT的校園内網,用JSTOR資料庫的MIT權限下載下傳了數百萬篇期刊文章并公布。據稱他通過反複旋轉自己的IP和MAC位址來繞過JSTOR和麻省理工學院設定的技術封鎖。

2011年1月,斯沃茨是以被起訴和逮捕,輸了官司的話,得吃35年牢飯。2013年1月,官司纏身的斯沃茨在家中自缢身亡,一直有人猜測他的死因有存在某種問題或陰謀。

Marak提到他,或許是以偶像自況:我,也是同樣被萬惡的牟利社會欺壓的天才啊!資本家大公司一定也會因為我不順它們意就迫害我!暗害我!

不過考慮到Marak當時的精神狀況,這實在是想多了。

畢竟大公司搞人的首選方式是派律師軍團告人告到崩潰,正如「教父」老師的金句:「我才用不着打手,我要更多律師。」「提着公文包的強盜比提着沖鋒槍的強盜狠多了」

删庫跑路大神“後悔”了?我隻不過犯了大家都會犯的程式設計錯誤!

雖然Marak似乎想把自己的「壯舉」和亞倫·斯沃茨對開源的貢獻聯系起來。

然而網友們并不買賬:「請不要把這麼一個因為制作炸彈時燒傷自己以及家暴女友而被捕的人,與亞倫·斯沃茨相比。」

現在,項目沒了,賬号沒了,甚至都沒人想再看到Marak開發的項目。

參考資料:

https://www.reddit.com/r/programming/comments/sawkw3/marak_the_guy_behind_the_recent_breaking_of/

https://www.businessinsider.com/the-best-25-hidden-gems-of-nyc-startups-2011-5#nodejitsu-does-cloud-hosting-23

https://observer.com/2011/02/music-hack-day-hackers-ask-for-20-k-for-realtime-webbased-jamming/

https://observer.com/2011/04/nodejitsus-co-founders-on-the-power-of-node-js-and-the-beauty-of-javascript/

https://nypost.com/2020/09/16/resident-of-nyc-home-with-suspected-bomb-making-materials-charged/

https://www.nydailynews.com/new-york/nyc-crime/ny-queens-bomb-materials-man-charged-20200916-bybbhwqwijbuxg7ndsuy43w6zu-story.html

https://abc7ny.com/suspicious-package-queens-astoria-fire/6425363/

https://www.technologyreview.com/2021/12/17/1042692/log4j-internet-open-source-hacking/

繼續閱讀