-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
從 Redux 作者 Dan Abramov 的文章談前端學習路線圖 #37
Comments
用issue 當部落格 還蠻屌的 |
@Louis-Chen 原本是看到滿多中國的開發者這樣用,覺得很新奇,後來仔細想想發現 issue 支援 markdown、上傳圖片方便還自帶評論系統,也可以按表情、tag 別人互動,有別的 issue reference 到又會自動有連結,watch 可以即時追蹤新文章,該有的功能都有了,除了 SEO 弱了點以外我覺得沒什麼缺點,其實是很適合當技術部落格的地方。 |
很赞同作者最后的观点,👍 |
看起來是不是想表達 |
@zizizheng 差不多是這樣,只是我就覺得怎麼翻都有點怪XD |
我好喜歡地圖那一段 |
选好自己的前进路线很重要。 |
無論你的知識水平如何,每個人對於自己的自信心程度會有很大的差別。 |
上面是直接根據原文翻譯,我想作者的意思是說
|
@benben994 感謝,那時候我覺得怎麼翻譯都有種怪怪的感覺,就沒翻了XD 後來原文那篇也有中譯版了 |
前言
前幾天看見 Redux 作者 Dan Abramov 寫的這篇:Things I Don’t Know as of 2018,看了之後其實滿有感觸的,前些日子也在思考這種跟自信相關的事情,也做了個簡單的總結,寫下了兩年過後,我能夠被稱為資深工程師了嗎?。
無獨有偶地,這幾天也看到一些 2019 年更新版的學習路線圖,下面依舊有些留言在說「怎麼前端要學那麼多東西」、「怎麼學的完」、「前端好難啊」等等之類的,雖然這兩件事看似沒有關連,但我覺得其實是相關的。
大神沒有你想像中厲害
常常會看到許多有名的開發者被稱之為大神,既然會被稱作是大神一定有其原因,可能是每年都會在 conference 上面演講、在社群耕耘許久且貢獻良多、寫過一本很厲害的書等等,在這些方面他們的確很厲害,但大神只是個稱號,終究還是個人,他們在那些擅長的領域很厲害沒有錯,可是不用把他們想成什麼都會。
以下節錄自開頭貼的那篇 Dan Abramov 寫的文章:
(這邊的翻譯只求意思有到,可能會跟原文有些許偏差)
引太多段就沒意思了,建議大家還是先去看完那篇文章,或是看完我這篇再去也可以,總之一定要去看原文。
如果你不知道 Dan Abramov 是誰,這邊簡單介紹一下,他是 Redux 的作者,後來跑去 Facebook 工作,目前是 React 團隊的成員之一,在他的部落格上會發表一些跟 React 相關的小知識或是其他文章,又強又會寫又熱愛分享,是我個人的 role model。
在上面引用的段落中,他想表達的就是大家都以為一個厲害的開發者什麼都會,他就常被大家以為他會的東西超級多,但其實根本沒有到這麼多,接下來他就列了一大堆自己不會的東西:
他舉了二十幾個他不會的東西,有些其實跟後端比較有關,所以我挑幾個跟前端比較有關的(除了 docker)出來而已。
舉了這些他不會或是不熟悉的技能,他希望大家看完文章後能理解的事情是:
文末提到儘管他講了這麼多,也不會貶低自己的價值或是經驗,因為有其他東西是他擅長的,所以他下一篇就寫自己擅長的東西:The Elements of UI Engineering
這給我的啟示是什麼?
老實說一開始看到那篇文章我有點嚇到,想說:「哇,原來我會的居然比 Dan 多,至少我用過 docker、我會用 SCSS,我也知道 TCP 的三次握手」,但仔細想想之後發現這句話只對了一半。
對,在 Dan 提出的這些「不擅長」的領域中,我的確懂的比他多,可是這沒辦法推出:「我懂的比他多」,因為在那些他擅長的領域裡面,他有的知識一定屌打我。
例如說對 React 的理解、對開源專案的理解、對 Redux 的理解以及對種種 UI 常見問題的理解,這些絕對都遠遠超過我。
所以結論就是:有什麼好比的呢?
除了一個人在幾乎所有的領域都比另外一個人厲害以外,似乎也很難說誰懂的比較多。儘管我們把範圍侷限在前端,前端還是包山包海包郵包了一大堆東西,為什麼一定要分出個高下?
就像我在兩年過後,我能夠被稱為資深工程師了嗎?裡面寫到的,我知道我會很多,但我也知道我不會的很多,每個人都是這樣的。事實上公司也很難找到一個「什麼都會」的人,所以找某個領域的專家比較實在。
你如果讓 Dan 去做那種需要一堆華麗動畫跟特效的網站,還要加上複雜的排版,他可能會做得很差;可是你今天把他放到他擅長的 UI Engineering 的職位,他就能夠做得很出色。
不需要因為自己懂的不多而沒有自信,相反地,你要為了你懂的那些部份而變得有自信。
這跟學習路線圖有什麼關係?
現在請你打開 Google Map,定位到自己家附近,然後把方圓三公里之內的範圍都仔細看一遍。
好,裡面每一個點、每一間店你都知道、都有印象嗎?
沒有?沒關係這很正常,因為這是他媽的地圖啊!
什麼是地圖?地圖就是把所有東西都標示的清清楚楚的,你越 zoom in 之後東西就越詳細,除了在特定時間才會開啟的時空之門以外,其他細節都在地圖上找得到。
可是就算不知道所有的細節,有問題嗎?沒有問題,我還是知道附近哪間店好吃、該到哪裡去買菜、走這條巷子會比外面大馬路快,對周遭的環境我還是瞭若指掌,只是沒有到 100% 的了解而已。
學習路線圖也是差不多的,上面列了一大堆的知識點、一大堆的專有名詞,我自己也是每次看到都頭昏眼花。但就像我上面所說的,它之所以是路線圖就是因為夠完整、夠詳細,幾乎把所有細節都列出來了,才有資格成為路線圖。
事實上你也可以把其他學科列出這種 roadmap,像是數學,從加減乘除、平方小數、根號對數、二元一次方程式再到微積分,最後再到一些我也不知道是什麼的東西。
路線圖最大的功用在哪?在於讓你有個明確的方向以及概念,讓你知道整個前端的領域大概是長這樣,有這些東西可以學;既然是要給這種大方向的東西,那路線圖當然大的不可思議,把能想到的全部都列出來了。
可是你沒必要每一個都會。
如果只是想踏入這個領域,你把 HTML、CSS 跟 JavaScript 搞好其實就行了,頂多再外加個三大框架之一,剩下的那些都可以暫時忽略,等以後再慢慢補起來。
儘管你已經是開發者了想要繼續加強自己的技術,也沒必要把學習路線圖上面的所有東西學起來。前端學不完沒錯,但不只前端學不完,後端也學不完,寫 Android 跟寫 iOS 的也學不完,這本來就是一件很正常的事情,學得完才比較奇怪,就代表這項技術已經停滯不再發展了,不然怎麼可能學完?
以後看到那些學習路線圖,你要想的不該是:「唉,前端學不完」,就算沒有路線圖你也學不完,你應該要做的是先看看路線圖,知道有哪些東西可以學,再去學你有興趣的那些技術。
看路線圖不是看六法全書,要你研究每個法條甚至背起來,而是跟看地圖一樣,讓你對地理位置有概念,並且幫助你決定要往哪裡走。
結論
學習應該是一件開心的事,我相信 Dan 在解決那些 UI 問題時都很開心,就像我寫每篇技術文章的時候無論花了多少時間、查了多少資料也還是覺得開心。
沒什麼,就因為我熱愛。
最後幫大家做個簡單的條列式總結:
The text was updated successfully, but these errors were encountered: