今天看了三篇文章。
《中止學習框架》
《駁 《中止學習框架》》
《駁 《駁 《中止學習框架》》》java
說實話,我湊熱鬧的心態超過辯論(擡槓)的心態。本文只是藉此機會表達一些觀點,至於切不切提不重要,能引起你的一些思考才重要。
上面三篇文章或多或少都能給讀者提供一些思考,但願你們結合本身的能力、所處的環境找到適合本身的方向,不要徹底跟着做者的思路走。程序員
當你掌握了某種框架,你就有能力用它來解決問題,這個情景和大猩猩用石頭砸開核桃沒什麼區別。我寫的《如何成爲10倍速的程序員》中有提到,要善用工具。你的大腦的運算力是有限的,你的精力、你的生命都是有限的。你一輩子能夠作的事情是有限的。懂得尋找捷徑讓人類成爲了智慧生物。
框架,無疑是程序員解決問題的工具。至於要把工具掌握到什麼程度,取決於你須要解決的問題。
那麼要不要學習框架呢?
固然要。但要在你精力容許的範圍內,選擇性精通。什麼是選擇性精通呢?就是你把你感興趣的、業務須要的、技術展現的(跟同事、面試官胡吹)知識點弄清楚。
你們也看到了,原文來自國外,講究work life balance,想一想本身的國情,不可盡信。
那是否是算法真的永不過期,掌握算法就一通百通呢?
這麼說吧,即便你懂得Leetcode的所有算法,你也要懂業務。當你沉浸在某個局部的細節去實現時,你會專一進去,此時你沒法從宏觀的角度去審視整個業務,每一個人都是這樣。要想站在更高的角度考慮問題,就要「片面」的掌握某些東西來保持頭腦清醒,以作一些更宏觀的判斷和決策。這聽起來有些反常識,你們能夠仔細思考下。
業務與細節的平衡,偏偏是框架與算法的平衡。 這個平衡點你們本身掌握。面試
我用java最多,從SSH到Spring MVC, 從jdk1.4到java12,技術的更新換代速度能夠說是「指數加速型」(加速度增加,而不是速度增加)變化。當你鑽研透SSH框架以後發現它已經被淘汰了。
當你還在使用eclipse時,實習生已經用idea做爲IDE了,你試了兩下,以爲有些彆扭,仍是原來的開發工具順手。你原有的習慣,成爲了你接受新事物的阻力。越是深刻掌握某種舊的事物,越是如此。 這就是程序員35歲(30歲?whatever)到達職業瓶頸的根本緣由。
最最現實的是,程序員自己,就是公司實現業務的工具。 像國外常說的"make the world a better place",你想一想就好。算法
至於鐵打的算法?很差意思,算法也是工具。拿NLP來講,從傳統的規則模型到基於統計的深度模型,歷時25年之多,這其中算法的改進不知凡幾,爲何?算法是人類對世界認識的概括總結,看似不破的真理一直在被顛覆。只是這個週期較長,你們體會不深而已。框架
最近失業、降薪的很多,你們有沒有想一想緣由?其中必定不乏算法牛人,也必定不乏精通框架的。他們之因此被裁(降薪),是由於他們是可替代的。eclipse
咱們其實很容易得出結論,你們趨之若鶩的方向,必定是不可替代性最差的。再狹隘點來說,你們越認同哪一個觀點,每每這個觀點就越容易是錯的。 不要選擇人人競相追逐的方向做爲你的核心競爭力!ide
算法、語言、框架都是程序員賺錢的工具。想一想晚上吃什麼纔是真格的。再說,大家難道真要new 一個Object?工具
個人意思是,雖然深刻技術能讓程序員賺更多的錢………… 算了,程序員也賺不了什麼錢,不說了。post