高中生手機寫出2.5萬行程式碼的熱門專案,GitHub 1900星,網友:給孩子捐個電腦
机器之心發表於2024-12-15
最近,有一個 GitHub 開源專案引發了眾人的關注。這是一個名叫 markview.nvim 的外掛,作為高度定製化的 Neovim markdown 預覽器,Star 量已有 1900 個。乍看起來似乎有點平平無奇,炸裂的是它的研發背景:全部 2.5 萬行程式碼竟然都是作者用手機敲出來的。 手機敲程式碼?兄弟你太猛了,能出來讓大家認識認識嗎?圖中對話出現在一個 issue 裡面(已解決了),專案作者 OXY2DEV 說自己沒法在手機上正確的測試,Reddit 帖子的樓主說那我來吧。樓主轉念一想,問道:不是哥們,這是臨時不方便,還是你在告訴我,你已經在一部手機上完整開發了這個外掛,我怎麼感覺是後者?如果是這樣,我也必須加把勁了,這是一種什麼層次的奉獻精神啊!OXY2DEV 答道:不好意思,全部 24461 行(如果只算程式碼的話大約 18K 行)都是手機打字完成的。他還謙虛了一下,說其中約 6000 行僅用於儲存數學符號、數學字型、HTML 實體等。現在,OXY2DEV 開發的「markview.nvim」專案星標量已經達到 1.9K:- 專案地址:https://github.com/OXY2DEV/markview.nvim
這是一個基於熱門編輯器 neovim 的外掛,包含 Markdown 渲染器、HTML 渲染器、LaTeX 渲染器。回到那個 Reddit 帖子,訊息一出,網友們紛紛表示震驚,直呼想要給他送個電腦。 網友:繃不住了,誰來送他個膝上型電腦吧?要不我們發動一場募捐?發帖人在 Reddit 上 cue 了 OXY2DEV:「希望你不會對這個提議感到不快,這是你感興趣的事情嗎?」對方(在 Reddit 上的網名是 Exciting_Majesty2005)回覆道:那可太謝謝了,然而在沒有銀行卡的情況下,我沒法把你們捐的美元轉換成本國貨幣。我還沒有身份證,所以我不能開設自己的賬戶。數字支付這裡也是沒有的。除了這些問題之外,我所在的地方硬體價格過高(畢竟第三世界國家)。所以,你們最終會為普通硬體花費過高價格。此外,如果我設法進入了一所好大學,那麼我顯然會買一臺膝上型電腦。只是現在還沒有而已。有人問:那你什麼時候申請大學?如果你已經在開發流行的外掛,我想北美、歐洲的大多數電腦科學系都會很高興給 offer。也許,使用者社群可以寫一封推薦信?OXY2DE 回覆道,大學申請應該是在明年 3 月。我將首先參加醫學院考試,如果我沒有透過,那麼我就會上大學。在這裡,嘗試獲得電腦科學專業的 offer 是一種賭博,分數太高或是太低都沒戲。總之事情很複雜。看起來想要幫助這位新星開發者,網友們還面臨著一些挑戰,不過在後續的討論中漸漸有了眉目。另外對於用手機程式設計這一做法,有很多人感到好奇。不過,OXY2DE 並不是唯一一個選擇這樣做的。有網友分享了自己在手機上的程式設計經驗,這位網友表示自己曾經在 Termux ( 一款基於 Android 平臺的開源 Linux 終端模擬器)上使用 ACode 或 NeoVim 來編寫程式,並且使用 Termux 和 NeoVim 可以獲得 PyDroid 提供的所有功能,而無需每月訂閱。還有網友好奇在手機上敲程式碼會不會經常出現拼寫錯誤。OXY2DE 表示「他的準確率大約為 60-70%,但由於使用了具有補全能力的 nvim-cmp,所以也可以使用它來修復拼寫錯誤。此外,程式語言的所有關鍵字都是非常通用的詞,因此隨著時間的推移,拼寫錯誤會越來越少。」還有網友建議將藍芽鍵盤連線到 Android 裝置上進行程式設計,這樣效果也不錯,該網友還推薦了一款名為 iClever BK-05 的藍芽鍵盤,不用時可以摺疊起來,非常方便。對此,OXY2DE 表示有些檔案非常龐大,很容易讓 Neovim 變得緩慢。因此他不得不停用 LSP、自動補全、Tree-sitter 和語法高亮,只是為了讓它不卡頓。在某種程度上,無法繞過硬體的限制。還有人感慨道:如今 99.99% 的人都依賴先進的工具來完成工作,而這位學生卻在用手機做著這些事情。難以置信,簡直太瘋狂了。「不知那些需要機械鍵盤才能敲程式碼的人感想如何?」markview.nvim 專案作者 OXY2DEV 的真名是 Mouinul Hossain,是一名來自孟加拉國的高中生,自稱喜歡程式設計和電子裝置。他在空閒時間製作 Neovim 外掛,有時還會製作一些基本的網站。OXY2DEV 小小年紀就有了使用 Lua、C、Javascript 和 Sass 語言的經驗。此外,他還有一些使用 Bash 的經驗。不過可能是因為生活條件有限,或是其他什麼原因:他表示自己現在只有智慧手機、沒有電腦,所以是在 neovim 跟 Termux 中完成這所有工作的。看起來,OXY2DEV 在努力為開源社群做出貢獻的同時,開源社群也在回報他。在 Reddit 帖子裡甚至有人推薦他來申請新加坡國立大學,這讓一直以來想要學醫的他有了更多的思考。幾天前,OXY2DEV 終於決定開啟一個募捐專案。「根據其他人的建議,我決定捐款買一臺膝上型電腦。」據說他在 10 個小時內就籌集到了 2300 美元。https://www.reddit.com/r/neovim/comments/1h7vhmg/bro_been_developing_his_2k_star_plugin_on_a/https://www.reddit.com/r/neovim/comments/1hb5szp/please_help_me_raise_funds_for_a_laptop/https://github.com/OXY2DEV/markview.nvim