理論與實務 68/365

A Thought

當我還在學校的時候,要面對的是深奧的論文,還有複雜難解的演算法。因此看待一個程式問題的眼光也傾向專精但又片面。學術上如何檢驗一個演算法的好壞,是分析它的時間複雜度;複雜度越低,就代表花的時間越少,也就是越好的方法。經過這樣的訓練,我對於時間複雜度變得比常人敏感,可以很快看出一個方法的效率。這當然是很有價值的技能,但要面對實務上的問題,卻顯不足。

現實中的問題往往包含更多議題。一個系統的安全性,可擴充性;來自商業上的不確定性,難以簡化成單一的目標;還有我們有沒有足夠的能力和時間去實現。學術上不需要面對這麼不明確的問題,學術的方法是:如果我們能暫時忽略其他變數,只專注在一個變數,那我們就有機會抽取出重要的知識去改善這個變數。這正是科學用來累積知識的方法,但長期處在這樣的思維底下,就會用錯誤的眼光看待世界。因為現實通常難以簡化,沒有辦法被抽象地解決。在學術的標準裡,不夠理想化的問題都極為困難,硬要用理想化的方法去解決。終會遇到麻煩。

拿著鐵鎚的人眼中,世上每個東西都像是釘子。我不是要嘲諷學術或者歌頌務實,兩者是不同層面的事。如果這個世界遇到的問題正好跟釘子有關,自然只有在乎釘子的人可以解決。過度務實常常等於短視,沒有研究精神的人(不禁想到台灣的產業),在未來會面臨更大的失敗。像學者一樣地研究沒有什麼不好,但不要被其侷限了眼光。

「理論上,理論與實務沒有不同,但實務上卻不一樣。」



--
photo credit: wili_hybrid via photopin cc
Recommend


Keanux

登入或註冊帳號

Facebook 登入

我們絕對不會未經過你的允許發表到Facebook