關於練習的重要性,我想每個人都清楚,在學習進階的技巧前,我們總必須要把基礎扎穩,而練習,是讓我們熟練並掌握技巧的關鍵動作。
看Curry日復一日重複相同的練習,先從最基礎的運球練起,然後是cross-over、左右手同時運球、邊運球邊接住回彈的網球、一手運球一手甩戰繩,並隨著他的適應狀況而不斷調整內容,這些訓練看似乏味,但有幾個重要目的,都是在強化運球這件事,即便你受到外力的干擾,即便你有時會分心,但都要確保球會在你的控制之下,練習到這種程度,控球、運球已經成了反射動作,你不需要多做思考都能做到。
也因為這樣的訓練,真的上了球場他運球的穩定性就愈高,發生失誤的機率也會比那些未如此刻苦訓練的球員來的低上許多,有些球星可以偶有佳作,但很看天吃飯,也很挑對手,唯有訓練足夠扎實的球員,才可能適應各種不同的場面與對手,因為這些情境,在他練習時都設想,且遭遇過了。
然而球場上的局勢瞬息萬變,平常只有一個人會來防守你,但關鍵時刻是二夾、三夾,原先是後衛來防守你,你很清楚後衛防守的套路,但如果今天變成LeBron James來防守你的時候,對方的防守習慣與身體素質是你未曾適應的,你肯定會遭遇到練習時沒有碰過的局面,這個時候,通常是個人球技一個很好的突破點,你會重新發現自己的弱點,並盡可能地在訓練菜單中加入這些內容。
依現在科技的進步,根據球賽狀況以及球員素質等不同面向來分析,專家們肯定都能找出更適合的訓練方法,然而是否要做針對性的訓練,這就看投資報酬率了,球員能投入訓練的時間很有限,為了應付LeBron而多做的訓練,若對上其他後衛時用不上,反而因此荒廢了原先對後衛的針對性練習,結果後來反而被各隊後衛打爆,這可不是一個好的選擇,但在系列戰的過程中,做些特定能力的補強則未嘗不可。
我是個很強調練習的人,而我認為練習的目的並不僅僅在熟練,而是要進步,重複相同的行為,反覆的做一百次、一千次,你一定可以漸漸做到不需思考就能把它做好,正確性與效率通常也會提升,第一次寫程式,你可能連compile/debug都不會,但隨著一次又一次的練習,這些動作對你來說稀鬆平常,對於相同性質的需求,你不需要花費太多的時間與腦力。然而,有些人寫了5年程式成了高手,有些人寫了10年程式卻只是個coder,這中間的差異點到底是什麼?我認為就在腦力運用的多寡,coder隨著熟練度提高,工作對他來說困難度愈來愈低,本來要絞盡腦汁去解決的問題,後來漸漸的不需要動腦,仰賴反射性行為就能解決。而我認為,長期不用動腦的工作,是一種工傷,因為人的腦袋,只要不用就容易衰退。
反之,高手雖然在重複一樣的動作,但經過10次,他可能開始思考怎麼寫可以讓效率提升10倍,甚至可以不用動手寫就能完成,寫100次,他可能覺得有更棒的架構可以讓效率提升100倍,而做法上是要重新改寫,但現況不允許他改寫整個系統,所以他必須要思考另一種方法,而重構(Refactoring)這件事就成了解法之一。有經驗的工程師都知道,重構一個大系統的難度通常遠高於改寫成新系統。因為你要同時兼顧新舊兩邊,這很考驗你對既有架構的了解與新架構設計的火候,而那些千錘百鍊的高手們往往都是在踩過一個又一個的坑之後才鍊成,我沒有見過那個高手是不犯錯的,有嘗試才會犯錯,也才知道理論與實際的差距,而不嘗試,你永遠處於理論階段。
動腦,思考更有效的方法;
練習,把想法化為行動;
反覆練習,讓自己愈來愈熟練;
犯錯,再次思考與找尋更有效的方法;
進步。
在工作中我常提醒兩類人,第一類就是前頭說的不動腦,重複100次,踩了100次相同的坑,但仍只會用舊方法;第二類則是止於動腦階段,他們設想了很好的方案,有縝密的計畫,但永遠沒有行動,這兩類人的進步都是緩慢的,前一類人不思考,後一類人不練習。
當我提出在公司內工作,要勇敢把握每個練習機會時,時常有人挑戰我說這要要看公司文化或老闆是否接受,我其實只有一個建議,如果你願意承擔長期不思考、不練習的風險,但卻不願意承擔提案被打槍的風險,也不願意承擔需要用額外的時間來練習的成本,那10年回首,我不確定你會不會後悔。
游舒帆 (gipi) 探索原力Co-founder,曾任TutorABC協理與鼎新電腦總監,並曾獲選兩屆微軟最有價值專家 ( MVP ),離開職場後創辦探索原力,致力於協助青少年培養面對未來的能力。認為教育與組織育才其實息息相關,都是在為未來儲備能量,2018年起成立為期一年的專題課程《職涯躍升的關鍵24堂課》,為培養台灣未來的領袖而努力。 |