前端信息和知識

封面圖:strong18philip @ www.unsplash.com 。
1. 我每天通常會花 1-2 小時(shí)獲取前端信息,但信息實(shí)在太多,比如關(guān)注庫的 Release、業(yè)界新聞、Twitter List 信息、RSS 訂閱、公眾號、NewsLetter、群聊等,到處都在收割注意力,而我們的時(shí)間是有限的。
2. 注意力是有限的,選擇很重要,放棄也很重要。每個(gè)選擇都有機(jī)會成本,這一個(gè)小時(shí)如果看了點(diǎn)價(jià)值有限的八卦新聞,就意味著放棄了更優(yōu)質(zhì)的信息。我們需要時(shí)刻決定看什么和不看什么,輸入決定輸出。
3. 先看如何識別信息和知識。舉幾個(gè)例子,swc 作者加入 next.js 是信息,swc 如何接入 next.js 是知識;umi 發(fā)布 3.5 包含 MFSU 提速是信息,MFSU 提速原理是知識。信息容易上癮,我經(jīng)常刷著刷著一小時(shí)就過去了,然后非常懊悔,因?yàn)樯抖紱]學(xué)到。所以多關(guān)注知識,少關(guān)注信息。
4. 有人說「我每天學(xué)那么多前端,卻為啥依舊寫不好網(wǎng)頁?!惯@就看信知比(信息知識的比例)了,如果比例是 8:2、9:1、10:0,看再多又有何用,而且那一點(diǎn)點(diǎn)的知識比可能還是「收藏即學(xué)會」的。我之前很長時(shí)間是 5:5 或 4:6 的狀態(tài),正在努力調(diào)到 2:8。
5. 拋開信息后,前端知識點(diǎn)還有那么多,哪些重要?哪些優(yōu)先學(xué)?哪些又沒啥用?
6. 哪些是死知識,比如 JavaScript 的作者是誰,垂直居中有多少中寫法,Java 和 JavaScript 什么關(guān)系,Umi 讀作五米還是烏米,MDH 是馬大哈還是馬德華,Event Listener 和 Event Handler 的區(qū)別等等,他們不是沒用,而是用處不大,像人類的盲腸。
7. 工作相關(guān)的知識優(yōu)先學(xué),學(xué)是為了用,不用光學(xué)太容易忘了,我深有體會。而具體學(xué)啥則因人而異,比如我現(xiàn)階段主要關(guān)注框架、構(gòu)建工具、工程化、數(shù)據(jù)流、路由等,其次關(guān)注性能、國際化、權(quán)限管理、埋點(diǎn)統(tǒng)計(jì)、Serverless、SSR 等,較少關(guān)注圖形、低代碼、動(dòng)畫、Node 框架、容器、K8S、編輯器等,這些離本職工作較遠(yuǎn)。
8. 再把時(shí)間線拖長了看,基礎(chǔ)和原理性的知識相比會更重要,他們具備更強(qiáng)的繁殖力。比如算法、設(shè)計(jì)規(guī)范、ECMAScript 規(guī)范、HTTP 原理、瀏覽器渲染機(jī)制、模塊系統(tǒng)、Vue 和 React 的底層原理等,不管前端輪子造地多快,這些知識都很難過期,而且他們有延續(xù)性,還能引發(fā)思考。
9. 相同的邏輯也可以用在文章、庫、技術(shù)方向的選擇上,比如判斷文章,我通常會問問自己「三五年甚至更長時(shí)間后,這篇文章是否仍有價(jià)值?」
10. 還有是「盡量選難的知識點(diǎn)」,越簡單價(jià)值越小。一下就能學(xué)會得東西,價(jià)值也不會大,比如手寫一個(gè) sleep 函數(shù)相比手寫一個(gè) React,像是考試的基礎(chǔ)題和拔分題。那難的知識點(diǎn)讀不懂怎么辦?硬著頭皮讀,反復(fù)多讀,有毅力的人不多,所以更顯得有價(jià)值。
