我所理解的學習
專欄一直在更新文章,希望能藉此與大家一起進步,卻從未停下來聊聊學習本身。寫這麼一篇「方法論」,其實挺羞愧的。因為做人不能太得瑟,要低調地秀出來。別整得跟魯迅先生筆下的孔乙己一樣,閑著沒事跑去茶館找不認識的人聊「茴」字有多少種寫法。但無奈生活中遇到的大部分學習者,對於學習往往連最基本的認識都沒有。而我自己本身作為「家庭貧困但勤奮努力型」選手,從小學第一次考試語文15分數學50分,到高中連續兩次獲得年級第一,大四獲得市裡翻譯比賽第二名,對於學習還算有些許體會。當然,講的道理都很粗淺,隨便看看即可。
眾多學習者,在學習心態上大致有下面幾類。有一部分人認為學習沒有方法,遇到新知識總是使用蠻力解決一切。學得成即歸功於自身天賦異稟,學不成則肯定是因為自己不適合。還有一部分人唯方法論至上,認為什麼都可以找到方法速成。目前進度慢,肯定是找的方法不夠好,於是不斷地找方法。這兩種都不可取。另外,迷信權威大概是全世界人都免不了的弊病,包括我自己。「權威們」的出色表現往往讓人願意相信,他們之所以成功肯定是得到了某種「秘籍」。這個秘籍可以是某本書或某種方法論。那麼,一切已經很明顯,只要我得到那「秘籍」,我也能成為「權威們」的一員。只有極少數的人,能意識到自己想學什麼,怎麼學,並能在實踐過程中不斷地自我反省糾正。這樣的人,註定學什麼都比別人更容易掌握。
下面分3點展開:
- 學習是非常主觀的體驗,要從自己的感受出發
- 找到適合自己的路線:順藤摸瓜+學會搜索
- 我的一些學習習慣:勤做筆記,勤寫文章
學習是非常主觀的體驗,要從自己的感受出發
自從在知乎上有了一些關注,接觸的人多了以後,我對「網友」這個詞逐漸有了更深刻的理解,有讓我感動的,也有讓我鄙夷的,但感受最深的一點還是:原來大部分網友連最基本的獨立思考都做不到。這是我比較震驚的。原先不管是小學、中學或大學,相處下來身邊的朋友給我的感覺都是:獨立,有自己的見解,不會帶節奏更不會被帶節奏。但是自學編程在知乎找路線的過程中,我卻發現大家好像突然集體退化,沒有了自己的意識。
我認為其中一大原因在於「權威崇拜」,而我是非常厭惡乃至痛恨亂帶節奏的「權威們」的。2017年,幾乎大半年時間,我都在知乎Java編程話題下反覆尋找自學路線。無奈,用心回答的實在少之又少。比如一位零基礎朋友說想學習編程,下面最高贊的回答很可能是一個大V寫的:首先,你要買台電腦,然後啃完《Java編程思想》。小白其實是很容易去相信這些話的,然後吭哧吭哧跑到淘寶店,買了好幾本完全不適合自己的書,滿心歡喜準備開始學習,結果三天後得出「編程太難了,我不適合」的結論。浪費了錢,也浪費了時間。最可惜的是,錯失了一個學習的機會。
我之前在很多回答下都反覆強調過,學習是一件非常主觀的體驗,一定要尊重自己的感受做出選擇。甲之蜜糖乙之砒霜,任何東西都有它的適用範圍。《Java編程思想》這本書不好嗎?毫無疑問,這本書優秀得就像九陽神功,啃了這本你再去看其他Java書籍,都可以「速成」。就像楊逍苦練乾坤大挪移十餘年只到第二層,而張無忌有了九陽神功打底,一小時就練成了...但是,很明顯,你沒有任何根基或者奇遇,有些東西你是吃不消的。又好比令狐沖被囚西湖牢底,若不是自身內力盡失,練習吸星大法恐怕也是九死一生(需要先散盡全身內力)。總之,一切都有先決條件。
我一直認為,只要智商正常,任何學科理論上只要花時間都是可以掌握的。學習好比登山,每一門新知識就好比一個「大台階」,一本本書就像一塊塊「墊腳石」,而登山者的「腿長」以智力或者相關知識為限。
智力超群或者已經有C++編程經驗的人,「腿」要比普通的零基礎學習者長很多。此時,一本《Java編程思想》作為「墊腳石」,不高不低,一步即可跨上去。你只看到他靠著《Java編程思想》很輕鬆就站在了上面,卻忽略了自己的頭僅僅到他的腰的事實。即使歷經千辛萬苦,最終爬上了《Java編程思想》,卻也浪費了很多寶貴的時間。這樣的策略性價比是非常低的。學習有時就是這樣,在某個階段你會遇到「知識斷層」,你根本找不到適合自己的書。邁一步太娘,跨兩步扯蛋。而初學者遇到「知識斷層」的幾率要遠遠大於有經驗的學習者。因為作為曾經「跨過山和大海」的人,已經忘了山有多高水有多深,只會覺得「啊,這特么也叫山?」或者「咦?你們不是直接飛上來的嗎?」所以羽化升仙后,很少有大神會來給這座山修幾級台階大開方便之門,因為他們認為真的「太簡單了」!我時常感慨於市場上真正用心寫給初學者的書實在少之又少,而優質的視頻又總是得不到承認,甚至被不斷貶低和鄙視。
諸位一定要謹記,學習是一種非常主觀的體驗,你要找到適合自己的那塊「墊腳石」!避免盲目的「權威崇拜」,更不要害怕走少有人走的路。相信我,你一塊塊「墊腳石」上去要比大家蜂擁而上去爬《Java編程思想》快得多。
關於自學,以及零基礎應該看書還是看視頻,我還寫過:
為什麼在知乎里回答有關計算機方面問題的人的都給我一種天才的感覺?
零基礎看視頻還是看書?
如何找到適合自己的路線
你可能說,道理我都懂,具體方法呢?這裡,跟大家聊聊如何找到適合自己的路線。
我在知乎經常被一種人惹毛:上來就問我文章已經講過的問題。我當初找路線時,只要看到一個靠譜的回答,都會點進他的個人主頁,把他的回答按點贊排序,從上到下全部閱讀一遍,看是否能解決自己的疑惑。有專欄?那更好,全部通讀一遍。這樣還無法解決疑惑,才會去私信,並且是付費的。不只是你的時間才是時間,別人也很忙的。能回復你,是情義,不回復你,肯定是因為文章已經講過,懶得理你。
要找到適合自己的路線,一定要學會順藤摸瓜。除了在知乎,按照:
- 高贊回答
- 專欄文章
- 他關注的人
這種順序摸瓜外,還可以去豆瓣摸瓜。在豆瓣摸瓜和在知乎有點不同,但本質是一樣的。比如你聽說某本書非常優秀,你可以去豆瓣看看。怎麼看?
- 看評分
- 看評論
- 覺得中肯的評論可以點進去看評論人的書單
- 看下面的同類書籍推薦
最後,我想說,上面的書,我只是作為案例演示,沒有強推的意思。我自己也沒看過。另外,摸瓜後不要急於打開淘寶。可以先去網上試讀(試毒)。
試讀最重要的,我認為是看序。我很奇怪,為什麼有些人買書從來不看序。一本書拿到手,我最喜歡先看序。是否是一本好書,往往能直接從序中感受到。如果是一本好書,看完序,彷彿已經和作者成為良師益友,往後看書也更有親近感,更易堅持下去。而且序中,一般會寫有本書的知識概要、如何閱讀這本書以及這本書適合哪些讀者。
另外,對於自學的朋友,搜索能力是非常重要的。百度是最常用的搜索手段。如果人人都能先去百度,而不是張口就問,那麼網路將一片和諧...話說回來,專門事還需專人做。對於僅僅是搜索書籍,百度還是太寬泛。這裡給大家推薦鳩摩搜書。當然,鼓勵大家買書,尊重創作者的辛勤結晶。我看完一本電子書,一般都會買一本紙質書,就當交學費了。我知道這不是下載盜版電子書的借口。
以上,就是通過「順藤摸瓜」+搜索引擎找到適合自己的學習路線的方法。當然,我們最希望看到的,還是像我這樣直接把學習路線寫出來的:零基礎Java學習路線2.0版(持續更新...)
至於是否適合自己,還要自己判斷。別忘了,學習是非常主觀的體驗。
我的一些學習習慣
我的學習習慣總結起來無非以下幾點:
- 勤做筆記(勤敲代碼)
- 勤寫文章
- 先快速過一遍總覽全局,再逐個擊破
零基礎學編程,最大的感受是,今天學了明天忘,而且知識點都理解了,代碼敲不出來。原因就是動手少了。公司新來的同事中,有一個上海傳智播客出來的,還有一個上海黑馬程序員出來的。生活中達內出來的確實很常見,傳智播客出來的,這還是第一次,覺得特別親切,畢竟我看了人家傳智大半年盜版視頻...
我的這兩位同事,懂的不一定比我多多少,但是動手能力是遠勝於我的。他們學習的模式是,半天學習理論半天敲代碼。而自學的人最大的毛病在於重理論輕實踐。配置環境麻煩,敲代碼老報錯,還不會調試,煩心。這樣不做筆記,不敲代碼,雖然學得快,但是學得不紮實,很容易忘記。基本上一兩個星期中斷,就要重新開始。
所以我一直強調,慢就是快,一定要穩紮穩打。我自己學習時,都是2倍速看完一遍視頻,然後回過頭再看一遍,同時整理思維導圖理清思路和重點難點。最後周末花一天敲代碼。這樣才勉強記住。再不濟,總要做做思維導圖吧。
關於勤寫文章,我在寫博客對程序員很重要嗎?已經講過。主要好處有:
- 讓我思維更清晰,表述更有條理
- 寫文章經常是自己把自己教會了!
- 讓我的知識體系更完整、清晰
總之,書寫是對思維的緩存。你看我,經常像發情的泰迪,瘋狂在專欄輸出。
最後,就是學習順序問題,沒有優劣之分。我個人習慣分模塊,在理解百分之五六十的情況下先快速過一遍,而不是一開始就正面剛某個知識點。
因為你尚未對整個路線有個把握,根本不知道這塊知識點在後面學習過程中的比重,也不知道性價比(簡單常用,還是不常用且很難)。相反的,快速過一遍後對整個學習路線有了把握,第二次學習時就不會「平均用力」,而是「把鋼花在刀刃上」。
比如MySQL和JDBC其實關係挺大的,就把它們劃為一個模塊,第一遍直接全部學完,並記錄疑問(很重要)。然後帶著你滿腦子的疑問(心裡肯定是「要死要死,這麼難」),回到最初的地方,有重點的學。
以上就是我對學習的一點粗淺理解。
推薦閱讀:
※python圖像模塊——從一張女神圖開始
※我為什麼要學編程(程序設計)
※給想學編程的人的一些建議
※我好像有能力閱讀《深入理解計算機系統》了
※這8個免費的網上課程可以有助你的技術成長
TAG:自學編程 |