我的孩子,今天我想教你「學習寫程式」

《給我的孩子。系列四》


圖片來源: https://flic.kr/p/5T7z4v 授權: https://creativecommons.org/licenses/by-nc-nd/2.0/

雖然你的父親熱愛寫程式,也在大學、研究所唸了資訊科學的領域,但想教你寫程式的動機,並不是要你一定得跟老爸一樣、或者一定要走理工的領域,而是希望你訓練邏輯、細心、同時多一個幫助自己解決問題的工具而已。

你老爸的崇拜的偶像之一 -- 洪志鵬寫過一篇《不要學電腦 不要學英文》的講稿,我非常贊同文中一句「電腦本身是一隻笨牛,程式設計師下一道指令就好像是揮一下鞭子,這隻笨牛才懂得走一步。」所以寫程式這件事情,說穿了就是把你想叫電腦幫你做的事情,一個步驟一個步驟地整理好,電腦就照著你的「指令」開始認份地做事,如果出來的結果不如預期,那幾乎是你給了錯的流程、錯的狀況、錯的數值等等,所以你會回頭檢查自己的想法思緒是否清楚,每一個動作的邏輯是否正確,以及細心地確認每一個數值都出現在該出現的位置,反覆地這樣多做幾次,說不定你會發現你連文章都寫得通順了,與人交談也就不會沒頭沒腦地亂跳 tone,這其實才是我希望你學寫程式的目的之一,而且你也會開始培養出「遇到問題,找出它,解決它」的習慣,這都會深深影響你之後的人生觀。

學寫程式,你不一定要唸資訊科系,也不一定是要去做軟體開發,就好像學會計算機的操作不一定要去當會計、車開得好不一定要去當計程車司機一樣,而是遇到問題時,你多了一個工具可以解決問題,經常、大量、重複進行的工作,說不定只要寫幾行簡單的 script 讓電腦代勞,就能做得又快又好,然後又多出了很多時間可以完成更多事,就像從 1 加到 1000 你會用梯形公式去計算,而不會真的從 1 開始做 999 次的計算。況且,現在寫程式的門檻已經大幅降低,各種工具都相當強大而齊全,我相信你一定很快就能駕馭這些東西,更何況你不會還可以跟我討論。哪怕日後你想從事的工作不是理工領域,程式這件事都有機會幫得上忙的,因為計算機科學本來就是為了解決各種領域問題而形成的科學。

如果你因為學習寫程式而慢慢訓練了邏輯能力,你要記住這是你的能力,不是你的限制,千萬不要因為為了邏輯推論記住了成千上萬的規則,而被這些規則囿限了你的想法,這還是跟寫程式或是語言很像,syntax 雖然有限,但你能寫出的程式、說出的話卻擁有無限可能,這樣,你就清楚了嗎?

~寫在你 27w 的年紀~