自主學習 & 提問的智慧——學習中遇到難題怎麼破?

解決問題的流程

在學習的過程中,我們總會有不瞭解的東西,恰好身邊又有大神瞭解。這時有些人就不假思索開始提問了。我曾經回答過相當多的技術問題。

當自己學習出了問題時,要儘可能獨立思考去解決;再考慮通過查閱書籍和網上的資料來解決;實在還是解決不了,再考慮請教別人,而提問也需要智慧。

自主學習的動力來源

人的本性都是充滿好奇心,渴望瞭解一個未知事物的。好奇心的驅使下,人是會主動學習的。就整個人類社會而言,自古就不斷的探索宇宙,這就是好奇心的表現,如果把全人類看做一個整體,人類的終極目標,或許就是要找到宇宙的真理,找到無盡的知識,滿足人類無止境的好奇心。

爲什麼要自主學習

作爲一個大學生,如果你希望能有所成就,但又想像中學一樣等着老師來灌輸知識,那肯定是不行的。最有價值的東西,往往都是原創性的,如果老師都能教給你,那你只能做一些體力活,創造不了什麼價值。

問題儘量獨立解決,反覆思考實在不明白纔去請教別人,這樣才能鍛鍊學習能力。有種說法,內向的人更容易成功,從學習能力的角度來看,內向的人更傾向於自己解決問題,所以學習能力得到的鍛鍊更多,促使其更容易獲得成功吧。

爲什麼要通過網絡和書籍學習

牛人爲什麼寫博客呢?他們不喜歡即時回答問題,沒法隨時保持很好的心情和靈感。有些問題太常見了,也沒有那麼多的時間精力耐心,一遍又一遍的去回答別人。更喜歡在有靈感的時候寫博客把所想所學全部寫下來,然後讓有疑問者自己去看。典型的FAQ,就是收集了常見的問題和回答進行整理的結果,大大提高了問題解決的效率。大神寫代碼、設計電路的時候都深刻的領悟了“模塊複用”的思維,這是人類的智慧結晶,於是很多大神也一直努力把這種理論應用到實際:多寫博客少回答問題,成功的做到了“知識複用”。有些人寫書也一樣。最優秀的人,可能沒有精力也不願意當老師,但是他們願意寫博客、寫書分享知識。

除了精力有限以外,文字能更持久的保存知識。即使很多年過去,甚至作者都不記得當年的學習心得了,或者作者已經不在了,只要當時把知識寫成文字,我們還是能通過這些作品學習到需要的東西。書籍是人類進步的階梯,正是這個道理。

善用搜索引擎

如果你在學習一門很多人都會學的知識,例如現在的安卓開發,你所遇到的各種問題,往往有很多別人都遇到過。所以只需要利用強大的搜索引擎去尋找問題就好。

科技學術方面的內容,一定優先考慮谷歌;生活方面的內容,可能百度更懂中文(切身體會,血的教訓。一個技術問題百度翻了好幾頁都沒解決,用谷歌的第一條搜索結果就搞定了)。谷歌如果上不了,可以使用其鏡像站點 www.googleforchina.com

谷歌搜索技巧,可參考網上文檔《Google搜索從入門到精通》。

網絡博客和書籍的區別

博客和書籍,雖然都是被寫成文字,用來分享知識,但兩者是有一定的區別的。書籍更加正式,不僅內容比較系統全面,並且經過了比較規範的校對審覈,纔會被出版。如果你想系統性的學習一門知識,可以考慮看一本不錯的書籍。

而博客等網絡資源也有好處。有些知識比較零散,沒辦法也沒必要寫成一本書,例如編程時遇到的一個奇怪的小問題,這時候更容易在網絡上找到解決方法,而不是書上。網絡資源及時性好,一旦寫好馬上就可以發佈,而書的出版需要長時間的構思編寫,和後期的校對,還要經過出版的流程,纔有可能被買到或者借到。通常不需要支付額外的費用,也是網絡資源的一個優點。

現狀

由於種種原因,尤其是從小就接受的灌輸式教育,很多人早已喪失了對知識的渴望。到了大學我們沒有了中學那麼多的束縛,雖然大學的環境也遠沒有想象的那麼美好,但是至少我們能抽出很多課外時間。學習自己感興趣的東西,需要自主學習能力。

學習能力和思維方式

一個人最重要的東西有兩點,學習能力和思維方式,這是我的看法,並意外發現和一位知乎網友的想法驚人的一致。

提問的智慧

牛人往往會欣賞和自己一樣愛好學習的聰明人,但是可能很忙。該怎麼讓別人願意回答你的問題,這就靠情商了。不會說話也不會辦事,那就只能靠自己了。

問題描述不清

提問最大的忌諱,就是問題描述不清。如果你問醫生,不舒服怎麼辦,醫生會問你哪不舒服,吃了什麼等等問題,然後給你量體溫等等,逐步判斷問題。但是請不要忘了,解決病人的問題是醫生的工作職責,並且最後你通常是要付費的。而你在網上或者其他途徑問身邊的人問題時,你應該明白,別人給你提供幫助是無償的。尤其是大神會很忙,別人的時間比你的時間可能更珍貴,你去問別人問題,三言兩語問題描述不清,別人爲什麼要像醫生一樣耐心的詢問,然後幫你呢?

語言表達能力很重要,尤其是技術人員,以後往往是要團隊協作的,不會表述和交流就很麻煩了。

有弱智傾向的問題

常常看到一些人問一些很簡單的問題,什麼色環電阻怎麼識別、三極管三個腳怎麼看,對於大一剛入學的同學,我完全可以理解。但是,如果很久之後,你還是這樣去問,恐怕就不太好了。大家都應該知道百度百科,搜索一下色環電阻,馬上就能出來詳細的配圖解釋,比別人簡單用文字來回答好懂很多也權威很多。

牛人欣賞愛學習的聰明人,不喜歡不愛動腦的人。

態度真誠

還有的人,明明是請教別人,卻表現的像是別人義務幫他一樣。不會說謝謝可能是性格太內斂,相對還好一點,但是應該學會這一點。有的人問別人問題,甚至還不耐煩地催促、語氣強硬、嫌別人回答的不好、在QQ上問着問着人就不見了等等表現,這樣誰願意幫忙呢?

討論/問答

討論技術問題有兩種,一種是純粹的提問和解答,另一種是共同探討。後者對雙方的進步都會有促進作用,值得鼓勵。而前者,提問者就應該掌握好提問的方法,並且應該及時的表示感謝。

不要把牛人過分神化

大神只是在某些領域比你做事認真努力、經驗相對豐富的人,而並非具有特異功能的神。在外行人看來,學通信的大學生似乎很神奇,是不是個個都會修手機呢?

一開始小明只是會寫單片機程序,對其他技術問題都不瞭解。但是有不瞭解情況的人,覺得小明肯定修電腦經驗豐富,會寫各種程序,會做網頁,精通網絡,數模頂尖高手,計算機、電路、各種軟硬件相關知識不在話下,問他各種問題……小明說他不懂,那些人就會詫異的說,你不是大神麼?別謙虛了,行行好就幫我個忙吧……小明很無奈,小明很無語。

有興趣可以看看《一個關於大神的悲慘故事》 http://www.hainter.com/a-sad-story

提問的時機不合適

大神心情不好、身體不舒服、沒上QQ或者用的是手機QQ不方便、沒有靈感、或者正在考慮別的問題,這些情況下,你提的問題尤其是需要靈感的問題,都有可能得不到好的回答。另外,大神的作息往往比較特別,例如不少程序員喜歡熬夜,到晚上思維可能會比較活躍,當然這個因人而異。

可能是大神整體情商偏低,而問題又很複雜,有時候沒靈感,不好用語言表達。或者滿腦子技術問題,那些自然語言處理的數據被暫時轉存到後臺了,一下子調不出來。想想你寫了很久的數學作業,突然問你文言文是什麼感覺;或是讓你一句普通話一句方言來回切換,也比較困難。此時你的問題可能得不到回答,尤其是非技術但又需要大神回答的問題(例如人生理想什麼的)。

看似簡單的問題不簡單

有的人很認真的花了很長時間做了一個東西,比如很複雜的電路,或者很長的程序,然後發現不工作。檢查了一下沒找到問題,就直接複製出全部代碼給別人一發,然後表現的極其可憐的樣子,跪求大神幫忙。

提問者往往認爲,對於大神來說,這點代碼豈不是一眼就能看出問題來麼?但是事實上,這種檢查故障的問題,往往比寫程序、做電路難,做一個同樣功能的東西往往都更簡單,因爲找錯的過程很容易被錯誤的想法誤導。尤其是電路,往往根本不是網上聊一聊,就能愉快解決問題的。

舉兩個例子。

1、大一的時候學C語言,小明學的不錯,大作業很快都做出來了。一個舍友讓幫忙找錯,小明看了很久也沒找到問題,最後終於才發現,原來舍友把分號寫成了中文分號,但是屏幕上顯示的,根本看不出來。解決這個問題花了半個小時,而小明自己做這道題時只用了幾分鐘。

2、有個初學者做的電路出問題了,LED閃燈常亮但是不閃爍。然後有個同樣是初學者說了句,是不是三極管接反了,因爲他(她)有同樣的經歷。竟然真的是這樣,問題這麼輕鬆的解決了。

但是在此之前,這個人可能也問過所謂的大神。大神一想,最常見的原因肯定是電路錯了或者沒焊好,又或者從電路原理,根據現象來徹底的分析了一遍,但是發現模擬電路基礎不夠牢,最後沒有得出結論(LED閃燈電路很簡單,製作起來相當容易,連一些大一的同學都看不上。但是原理很難懂,自己設計電路更難)。大神考慮問題更加全面複雜。

這個時候,提問者可能會想,原來所謂的大神也不過如此。真相就是這樣的,大神也有很多不懂的問題,沒有親自做過這個電路;如果做基本上不會出問題,因爲該注意的問題他在潛意識裏就知道;但是檢查別人的問題卻如此困難。因爲你永遠不知道自己到底學了哪些東西,並把它們都倒出來,就像你不能逐個列舉你所知道的每個單詞一樣。

最後的結論就是,維修電路、程序的這種問題,即使大神也不一定會回答。除非你的程序確實很短而對方恰好很瞭解,比如printf的參數不對,一眼看出來了,那就不是難題了。又或者是由於關係很好、心情很好、你表現的很真誠、大神恰好有靈感等。

你可能聽過一個故事,一個硬件工程師,在一個電路上畫了一條線,拿到了幾百萬。看到這裏或許你就明白,畫出那條線的工程師是有多了不起了,絕非想象的那麼簡單。

原故事可點此鏈接:http://www.hainter.com/steinmetz

不簡單的問題如何解決

遇到這種問題沒人幫忙應該怎麼辦呢?我認爲還是應該獨立解決問題。至於如何解決問題,這就是一個很複雜的課題了,也是很考驗智商的,鍛鍊的好機會。很多時候解決一個問題並不一定能馬上想到,可能睡覺的時候突然有了靈感然後想明白,可能絕望的看網上的資料突然就想明白了。甚至還有做夢的時候想明白問題的例子,例如化學史上苯環的發現。

解決程序和電路故障的一種有效方法是,分模塊實現、分模塊檢查。一個大的系統,分成了一個個的小模塊,每個模塊相對簡單很多,分別實現並檢查每個模塊,每個模塊都沒有問題了,整個系統基本上也就沒有問題了。

現實有時很殘酷

有的人,程序調試了兩個小時找不出來問題就崩潰了,覺得自己已經很努力了。但是有時候一個問題可能需要很久才能解決,甚至很多問題你都不知道它有沒有答案,但是不得不硬着頭皮去摸索。能堅持到什麼地步,也是體現人與人之間差距的重要一點。有興趣可以看一下這篇文章,看一下我如何解決了一個頭疼的難題。

《安卓使用Root權限實現後臺模擬全局按鍵、觸屏事件方法(類似按鍵精靈)》 http://www.hainter.com/android-key-simulation

現實有時就是這樣的,尤其是科研問題,探索未知,有些科學家可能一輩子都沒能研究出什麼成果。還是前面說的,最有價值的知識,往往都是原創性的,沒有人能指導你。

本文由jzj1993原創,轉載請註明來源:http://www.hainter.com/solve-problem

發佈了124 篇原創文章 · 獲贊 142 · 訪問量 48萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章