都快 2022 年了,這些 Github 使用技巧你都會(huì)了嗎?
大家好,我是皮湯。
最近經(jīng)常有小伙伴問(wèn)我如何根據(jù)最新的技術(shù)進(jìn)展,讓自己學(xué)的東西不過(guò)時(shí),了解到這些需求我也特別的感慨,其實(shí)在計(jì)算機(jī)這個(gè)領(lǐng)域,尤其是皮湯所在的前端,更是日新月異,所以這個(gè)問(wèn)題還需要細(xì)細(xì)道來(lái)。
養(yǎng)成良好習(xí)慣
感覺(jué)跟不上技術(shù)的進(jìn)展,本質(zhì)上還是離前沿太遠(yuǎn),可能是因?yàn)闃I(yè)務(wù)繁忙,有可能是因?yàn)檎也坏铰纷?,但歸根到底可能是因?yàn)闆](méi)有養(yǎng)成良好的習(xí)慣。
給自己每天 15-30 分鐘的 “擴(kuò)展視野時(shí)間”,這個(gè)時(shí)間最好在早上。這個(gè)時(shí)間段你可以去訪問(wèn) Github Trending 榜單,查看自己所在領(lǐng)域的技術(shù)進(jìn)展:https://github.com/explore
可以說(shuō) Github Trending 是一個(gè)類(lèi)似今日頭條的 Feed 流,你平時(shí)逛 Github 越多,關(guān)注的感興趣的人越多,Star 的項(xiàng)目越多,你會(huì)發(fā)現(xiàn)這條 Feed 流會(huì)越智能,一旦你所在的領(lǐng)域有新鮮的技術(shù)項(xiàng)目出來(lái),那么你只要刷一下這個(gè) Feed 流,立馬能夠掌握到最新的前沿技術(shù)進(jìn)展。
為什么讓你刷 Trending 流,其實(shí)還有個(gè)原因就是,它不像抖音、今日頭條,是一個(gè)無(wú)限的黑洞,而是有限的,在一個(gè)時(shí)間段內(nèi),它只會(huì)有幾十條存在,而且可能絕大部分還一樣,這樣一個(gè)你可以快速的了解最新的事情,再一個(gè)不會(huì)因?yàn)? “日新月異” 而感到焦慮。
注意,Trending 流是有限的。
經(jīng)營(yíng)自己的 “技術(shù)關(guān)系”
你喜歡 CSS 嗎?CSS 領(lǐng)域最前沿的技術(shù)進(jìn)展當(dāng)屬 TailwindCSS 這類(lèi) “實(shí)用類(lèi)優(yōu)先” 的 CSS 框架了,那我可以做些什么來(lái)跟進(jìn)它的技術(shù)進(jìn)展呢?
第一步:Star 這個(gè)項(xiàng)目。
第二步:找到這個(gè)倉(cāng)庫(kù)的貢獻(xiàn)者的前幾名,關(guān)注他們!
可以看看大佬們是如何努力工作的,Github 幾乎全綠!??
當(dāng)你關(guān)注他們之后,之后你已進(jìn)入 Github 就可以在你自己的關(guān)注 Feed 流里面了解到這些人最近的動(dòng)態(tài),比如 Star 了哪些項(xiàng)目?Follow 了那些人?發(fā)布了那些包更新?久而久之,當(dāng)你關(guān)注的人越來(lái)越多,你的個(gè)人關(guān)注 Feed 流就成為了你每天獲取新技術(shù)信息的來(lái)源,站在這些 “巨人” 的肩膀上,獲取高效的信息!
再近一步,找到樂(lè)趣
這些大??赡苓€會(huì)參與一些其他的項(xiàng)目,或者加入或創(chuàng)建了一些其他的 Github 組織,嘗試順著這些項(xiàng)目、組織,進(jìn)行二次探索,繼續(xù) Star 更多的項(xiàng)目、Follow 更多的人,然后慢慢找到自己的興趣點(diǎn),并以此興趣點(diǎn)為基礎(chǔ),在某 1 個(gè)開(kāi)源項(xiàng)目駐足下來(lái),嘗試為其進(jìn)行貢獻(xiàn),如改個(gè)文檔的拼寫(xiě)問(wèn)題,幫助翻譯,或者開(kāi)始嘗試看源碼,修復(fù)一些 BUG 或者提交一些代碼貢獻(xiàn)。
比如 Node.js 大牛蘇千:
當(dāng)你花了足夠長(zhǎng)的時(shí)間在這個(gè)上面之后,你會(huì)發(fā)現(xiàn)突然某一天,你的提交被某個(gè)大牛合并進(jìn)了倉(cāng)庫(kù),你成為了某知名開(kāi)源項(xiàng)目的 Contributor !?? 這個(gè)幸福感是不言而喻的。
比如給 Vite 提交一些極小的改進(jìn):https://github.com/vitejs/vite/pull/6083/files
開(kāi)始耕耘自己的領(lǐng)地
如果你能堅(jiān)持經(jīng)歷上面幾個(gè)階段,那么你現(xiàn)在可能 Follow 了很多 “技術(shù)明星”,Star 了很多感興趣的項(xiàng)目,你的個(gè)人關(guān)注 Feed 流已經(jīng)有了很多內(nèi)容,同時(shí)也養(yǎng)成了良好的關(guān)注 Github Trending 榜單的習(xí)慣。更近一步,你可能通過(guò)一些很 “Hack” 的技巧成為了一些知名開(kāi)源項(xiàng)目的 Contributor,當(dāng)然我承認(rèn)這需要一些耐心,并且你可能還需要一些機(jī)遇,但是當(dāng)你長(zhǎng)期 Focus 在 1 個(gè)或幾個(gè)項(xiàng)目上時(shí),這些機(jī)遇無(wú)疑會(huì)被放大,你已經(jīng)在技術(shù)社區(qū)里面有了一點(diǎn)原始的積累了。
接下來(lái)你可以嘗試去開(kāi)拓自己的內(nèi)容,嘗試提交自己平時(shí)的項(xiàng)目代碼在 Github 上,讓自己的榜單開(kāi)始 “綠” 起來(lái)。
至少先達(dá)到如下的地步:
然后開(kāi)始像這樣進(jìn)軍:
你可能會(huì)好奇這個(gè) “恐怖” 的人是誰(shuí)?
好了,不裝了????♀?,那就是大神阮一峰:https://github.com/ruanyf
當(dāng)然如果短時(shí)間內(nèi)你并沒(méi)有找到你合適的想法去提交自己的 Github,那么你可以去嘗試模仿大多數(shù)的 “一個(gè)文件” 的貢獻(xiàn),即整理一個(gè) README.md,將自己平時(shí)看 Github Trending 時(shí)覺(jué)得好的內(nèi)容記錄下來(lái),系統(tǒng)的分類(lèi)并整理成一個(gè)榜單,隨著你的堅(jiān)持,你可能能達(dá)到如下效果:https://github.com/vuejs/awesome-vue
讓事情再更有趣一點(diǎn)
當(dāng)你持續(xù)在輸出內(nèi)容之后,一開(kāi)始你會(huì)經(jīng)歷一個(gè)比較艱難的適應(yīng)期,比如堅(jiān)持了幾周因?yàn)槭虑樘蛿R置了,所以這個(gè)時(shí)候你需要找點(diǎn)樂(lè)子,讓自己保持新鮮感。
你會(huì)發(fā)現(xiàn) Github 已經(jīng)可以寫(xiě)好看的自我介紹了:https://github.com/anuraghazra/github-readme-stats
比如這個(gè):
比如記錄的語(yǔ)言使用情況的:
比如記錄你的 Star、Commits、PR、Issue 情況的:
把介紹寫(xiě)成詩(shī)句:https://github.com/anuraghazra
簡(jiǎn)化流程,讓點(diǎn)擊更近一步
如果你希望自己能夠時(shí)刻被提醒,離打開(kāi) Github 更近一點(diǎn),更頻繁一點(diǎn),同時(shí)又能同時(shí)兼顧項(xiàng)目與文章,那么掘金開(kāi)發(fā)者插件會(huì)是一個(gè)很好的選擇:https://juejin.cn/extension
安裝之后,每次打開(kāi)一個(gè)新的瀏覽器窗口,都會(huì)展示插件的網(wǎng)頁(yè):
你可以看到掘金文章、Github Trending 的內(nèi)容,還有掘金沸點(diǎn),極其適合上班摸魚(yú)。
推銷(xiāo)你的成果
當(dāng)你有了酷炫的 Github 個(gè)人主頁(yè),有了持續(xù)積累的 “README” 式的 Github 倉(cāng)庫(kù),或者是自己的項(xiàng)目,那么你可以嘗試寫(xiě)文章介紹自己的倉(cāng)庫(kù)、自己的主頁(yè),推銷(xiāo)自己的 Github 項(xiàng)目或個(gè)人名片,以獲取更多的 Star 和 Follower:
比如我之前一值關(guān)注的一個(gè)老哥,寫(xiě)了個(gè) React 的狀態(tài)管理庫(kù),然后在各平臺(tái)推銷(xiāo):
現(xiàn)在已經(jīng) 1K Star 了:https://github.com/concentjs/concent
一個(gè)堅(jiān)持且厲害的老哥:
一些額外的渠道
當(dāng)然 Github 其實(shí)不是一個(gè)社交網(wǎng)絡(luò),只能基于項(xiàng)目,沒(méi)法發(fā)布消息,即時(shí)性還是不夠的,如果你追求即時(shí)性,那么你可以嘗試去關(guān)注大佬的 Twitter,訂閱一些技術(shù)項(xiàng)目的博客。
比如說(shuō)尤大的 Twitter:https://twitter.com/youyuxi
或者 Next.js 的博客:https://nextjs.org/blog
回歸初心
其實(shí)歸根結(jié)底,這整個(gè)流程都是希望你能夠養(yǎng)成一個(gè)良好的習(xí)慣,同時(shí)通過(guò)一系列 “刺激” 讓你愛(ài)上技術(shù)探索,并以某個(gè)可達(dá)到的目標(biāo)進(jìn)行努力,如創(chuàng)建一個(gè)項(xiàng)目,并推銷(xiāo)它,然后獲得很多 Star 或 Follower。
在這個(gè)過(guò)程中,你會(huì)為了達(dá)到某個(gè)目標(biāo)而努力把一個(gè)項(xiàng)目的源碼看懂,然后輸出一些見(jiàn)解到技術(shù)社區(qū),然后反哺自己去開(kāi)發(fā)一些項(xiàng)目解決當(dāng)前的問(wèn)題,如此往復(fù),遵循興趣而非帶著焦慮去前行,相信你能夠在技術(shù)探索的道路上走得更遠(yuǎn)!