金旭亮:學習只有勤奮是不夠的

發表於2011-11-25

在完成了一個學期的Java課程講授任務之後,我設計了一套Java試題,並於 2011年11月22日讓它與學生們“見面”。與往屆Java考試相比,這次我在考試改良之路上走得更遠一些,不僅是開卷,還允許學生帶計算機入場,甚至 允許學生上網。不出我所之料,考試完畢之後,就有學生給我發來郵件,敘述其困惑,我覺得學生郵件中所談到的一些問題是比較普遍存在的,所以就將我給兩名學 生郵件的回覆彙總了一下,希望能對在校的學生有所幫助。

(學生郵件中除了有些錯別子字或不通順的地方我略作改動之外,基本上保持原貌。)

學生一:

考 完Java後,想了很久!還是有沒有想明白,為什麼會這樣?我真的很認真的去學了(至少比大多數人認真),因為我額外的看了很多書,做線性方程組軟體過程 中,我認認真真程式設計,一步一步實現每個功能模組,為了做好軟體,我複習了線性代數、數值分析,收穫很多,感觸也很多,在這個過程中,我是快樂的,因為每天 我都有進步,我把以往學過的知識做成了實體(雖然做得不是很好,但在這段時間裡我盡力了)。我上網,查閱資料,感覺自己不知道的太多了,也感覺了網上學習 的快樂和那份帶給我的新奇(一直在接觸新東西)。我覺得我喜歡上了這麼語言,也決定學好這門語言,今後走開發路線,靠這個吃飯。課件上的大多數例子我都認 真執行,修改後再執行,有時還反彙編一下。

可為什麼結果是這樣?沒複習的同學做的比我好,答的比我多。我做生產者和消費者花了很多時間,最後只做成了形如你上課說的主執行緒執行50次,子執行緒執行100次,如此迴圈的效果。而別人上網或者摘抄一下就搞定了,留下時間做後面的題。

其 實這裡我一直很困惑,我也感覺我被現實打敗了。為什麼我一直和別人想的不一樣,你告訴我們網上沒有答案,所以我沒上網,自己做(結果發現很多在網上都有, 那些沒複習,沒努力的經過互相討論,摘抄完成得比我好)。為什麼別人就能夠想到上網,討論,而我只會乖乖的聽話,毫不懷疑?是我做人的方式出了問題嗎?<

雖然說靠投機取巧取得的成果只是暫時的,我也想堅持一些東西。可許多時候我收穫的是“失敗”,我承認我的臨時發揮和理解力不如別人,可我從未放棄過(雖然 有時我想過放棄)。我相信學習意味著改變,所以我儘量做的好些。上大學兩年了,我深深體會到分數真的對學生很重要,沒有分數,一切都沒有了(獎學金、入 黨、評優),還增加一些無形的心理壓力。我不知道這樣做對不對,我大一的時候掛過一科,經歷了很多心酸的事,從那以後我就回到了三點一線的生活,學習也在 一直進步。這次是我沒把握好,如果我差及格線不多的話,懇請老師給我一次機會,我保證下學期和大四上你的課時不會再出現這樣的情況,我會努力去改變!

回覆:

等你畢業之後,隨著工作年限的增加,你會發現學校裡的考試分數真的不重要,另外一些東西的重要性則日益突顯。時間就象風,風會吹去浮沙,留下的就是真正重要的東西

我說網上沒有“現成”的答案,是因為許多題是我直接設計的,並非來自於網上,而且題量比較大,如果上網花太多時間,反而影響成績。其實只要有我講課的幻燈片,一個Eclipse,再配合上比較紮實的程式設計基本功,不上網也能完成這次考試。

做事情僅僅靠勤奮是不夠的,還要多動腦筋,要不斷地尋找更高效的方法,才能在有限的時間內跑得更遠,而人生就是比在幾十年中誰跑得更遠,登得更高。所以勤奮是基礎,但多思可能會發現做事更有效率的方法,兩者結合,才能讓你更為優秀。就這次考試而言,上網搜尋就是一個很高效的方法,這些同學很聰明靈活,在這點上你要向他們學習,取長補短,相信最終你不會比他們差的。

學生二:

想 了很久還是決定寫這封“求過”郵件,我想老師一定很不喜歡這種行為,但我實在是很恐懼這門課會考砸了。這次考試我花很多時間在前面的題上,有些題雖然我知 道大概,但總想著上網找到更完整的說法,等我開始做程式設計題時發現只有半個多小時,我就徹底慌了,六神無主地看題、答題,最後的卷面讓自己都驚訝了,考完後 就差沒哭了,我害怕以後我再努力學習也都失去了保研的機會,害怕給大學的學習抹上黑點..我也知道我應該平時多花時間學習,而不是考完才擔心,可其實我花 了不少時間在學習java, 老師講的很多理論知識我也認真去理解,只是考完才發現自己平常練得太少了,我都是直接編譯執行老師給的程式碼,去理解其中的用法和原理,自己動手編的程式很 少,這次的考試大多是程式設計的實踐題,我就有些傻眼了,以後我應該要努力去提高自己的程式設計能力,這次考試能不能先請老師高抬貴手讓我通過了T.T。。

慚愧的學生

回覆:

對你“網開一面”,就是對其他也付出努力的同學的不公平。所以,我會嚴格按照試卷判分,不特殊對待任何一個同學。

我覺得你努力是努力了,但學習方法不得當,其實在第一節課我就講了學習程式設計技術的方法,而我設計的考試試題,也是力圖將大家向這個方向引導。

學生再發郵件:

金老師,謝謝您對我努力的肯定,這對我來說很重要。老師能不能對大家都網開一面,改鬆一些呢,這樣說會不會冒犯老師了,額。。覺得大家這學期選的課都挺多,有些超負荷,望老師諒解。

回覆:

在公平的前提之下,我打分是很鬆的。

(附:現在大學裡分數對學生還是很重要的,所以我基本上是這個觀點:給學生判分儘量往高裡判,這樣不會影響學生出國或保研,更有利於在中國這個大環境下實現教育的最終目標。 其他老師可能會同意或不同意我的這種做法,沒關係,我覺得只要公平就好)

以下是另一個學生的郵件,不是上面談到的本科生,而是旁聽我上學期OOAD課程的一名研究生的郵件:

尊敬的金老師:

您好

感謝您在幫忙之中能夠查閱我的這封郵件,我是宇航學院研二的學生,在研一的第二學期我旁聽過您的《物件導向技術與方法》課程,您的這門課很精彩,您飽含激情的授課方式也讓我甘之如飴,讓我學到了專業外的很多知識。

我之前有過.net的一點點基礎,也非常愛好這門技術,所以我想在這個方面進一步的深入學習,由於我是非計算機專業的學生,沒有足夠的時間與精力來學習.Net。在最近的兩個月中,我使用Wpf框 架構建了一個《論文管理系統》軟體,每當我在編寫這個軟體的時候,我發現我的思路根本停不下來,不由自主的想隨著自己的想法將軟體一步一步的編寫下去,但 是我知道自己專業的重要性,所以主要的時間都放在了自己的專業學習上,但是在學習自己專業知識的過程中,會突然蹦出一個想法來改善自己的軟體,這樣就導致 了學習效率比較低下,有點像玩電腦遊戲上癮了的感覺,呵呵。

我知道自己專業的重要性,也希望在.Net這個框架中有所建樹,至少在這個框架中達到一定的專業水平。但是精力又限制了我的想法,所以在萬分迷茫之際,不得不叨擾您,向您請教幾個問題,以期在您這樣的高度能夠解決我心中的問題。

1,您覺得非計算機專業學習.Net的前途光明嗎?

2,您覺得.Net的發展前景是怎麼樣的呢?與JAVA競爭能成為主流嗎?

3,您覺得非計算機專業的人學習資料庫還是學習網路更要有競爭力呢?

4,您覺得我應該怎麼對待我的業餘愛好與專業之間的關係呢?

5,您覺得我應該或者是能夠利用業餘愛好創造點經濟效益嗎?這個問題比較功利,您可以直接無視之

PS: 我的專業是導航方向,也就是關於GPS導航、慣性導航。附件中有我最近編寫的《論文管理系統》軟體,是基於.NET3.5框架編寫的,需要至少offce2007以上版本的支援。

我針對他提出的5個問題的回覆:

(1)只要真正學好了.NET,前途是光明的,跟你是不是計算機專業畢業的沒有太多關係

(2).NET 與Java基本上處於這種情形:各有生存空間,誰也吃不掉誰。 微軟的世界裡, .NET是最主要的應用程式開發與執行平臺,即使是在微軟的“雲”Azure中,你也會有一臺跑著.NET的Windows虛擬機器可用,另外,有 了.NET基礎,開發Windows Phone和XBox應用也很容易,你會發現它們使用相同的程式語言和開發工具,擁有高度一致的基類庫和程式設計風範……,除非你跳出微軟平臺,否則.NET 還是必須要掌握好的。

(3)資料庫和網路學精了都能很牛,但如果兩者都只是掌握皮毛那就杯具了

(4) 如果你真心喜愛軟體開發,或者是很不喜歡現有專業,請在研究生畢業時義無反顧地進入IT行業,現在就業形勢還不錯,相信你能如願的。如果你不討厭你的現有 專業,對軟體開發的興趣又不是非常強烈,那麼我建議你還是以你專業為主線,以軟體開發技術學習為副線,副線為主線服務。具體地說,你要看看你的專業與哪個 計算機開發領域技術最相關(比如你可以看看你們導航領域最牛的軟體系統是用什麼開發出來的),就抽時間去學習它。我相信你是一定能找到與你專業最相關的這 個技術的,因為現在我還真沒有發現能不用計算機技術的行業

(5)如果有可能,一定要創造點經濟效益,這不僅能改善生活,更能極大地增強你的自信心,並敦促你進一步學習,也許一不小心,你就成了某領域中介於牛A與牛C之間的人物,作用太大了 :)

============================================================

希望我的這些建議能對所有想努力學習的學生有所幫助。如有不妥之處,敬請其他老師、學生或業界同行指正。

金旭亮

2011年11月23日

相關文章