事實上,自學並不是一件簡單的事。
在之前的 NXT 企劃,要不是有老師建議我要怎麼做出那個架構,我根本想不到長號的滑管居然可以用超音波感測器來輸入;要不是有老師在旁邊教我每個程式方塊在做什麼,我壓根也沒辦法寫出那麼困難的東西,不如說當時的我也沒有能力依靠自己就把這些酷東西做出來。
但在這無數次經驗中,或許是看到大家是如何解決問題,偶而只是參與在其中,就可以看到大家是如何一再的解決問題。在循跡車的部分也是,都是老師和學長姐在旁先示範一次如何調整,我再試著照做,才有可能在後面調整的那麼完美。要不是當時有他們,面對完全沒有接觸過的語言,我也不可能能夠做出來。
昨天提到在國一時做的 Stratch 專題是我第一次完全自學的初經驗,而國二的專題研究則是因為碰壁而不斷打破當時自己對自學的想像。
當時我決定的專研題目為拾穗問題,如果要以數學的方式解決的話需要用到簡單的微積分,而當時的我也確實透過網路上的文章和國中數學老師的幫忙學會了。但若是要增加不同的變因,對我來說用數學方式解出來是不可能的(事實上也不應該),也因此決定試著用程式模擬。
那時為了要做出一個模型能夠模擬拾穗問題的程式,不是選擇如 C++ 或 Python 等當時的主流程式語言,而是和選擇和爸爸一樣常寫的 php,一方面是當有問題時才有人可以問,二來是這樣我爸才會看我的扣不爽幫我改。
在過程中我嘗試加入了非常多變因,有如在 Civilization VI 加入不同資料片一般,每種變因都會讓整個研究題目煥然一新。即便這已經不在科展的領域規範內了,但我根本沒有擔心過,在煩惱的只有要怎麼把他用程式呈現,要怎麼找到最佳的策略期望值才能最高等等......
(整個過程都被當時的我紀錄在2017年的鐵人賽自我挑戰組,若有興趣可以去看。)
現在回頭看才知道當時我對專題研究投入非常大的熱情,就之前的回憶來看,我幾乎沒有任何一個時間不在想的。或許在此之後的專題也沒能像這樣投入如此大把的時間,但確實,當時我的技術力確實沒辦法把持住這種複雜的題目,以至於只能把它當作是一個遊戲去研究,沒辦法將這些變因一般化。但為了解決問題,我寧願花時間把每一個能夠想到的變因都寫出來,就算是用電腦模擬也沒有關係,因為把內心所想實作出來才是我想要的。事實上若是以研究領域來看,或許連微積分、線性代數、機率論都不夠,還要再去修一門賽局理論才能做出一點皮毛。
若是當時只是接手老師想到的題目,或是做了一個自己沒有興趣的題目,或許過程就不會這麼有趣了。