2007年2月14日 星期三

簡單就是美

Rails的設計很直覺,但常年寫網頁下來,已養成不直覺的思維,從frame到single loader,從html含樣式到css,從relational schema到OOD,想通以後,又覺得Rails做法很直覺,沒什麼特別的,但想通前就是轉不過彎,自己就是想不到這樣的設計。

這大概就是簡單和簡潔的差異吧,如同MIT Media Lab教授John Maeda說的,他喜歡找出最簡單的設計,這往往要從複雜的體系中整理出來:

簡單 -> 複雜 -> 簡潔

這種直覺難以查覺,卻又容易理解,這也正是它可貴之處。當有多個方法可以解決一樣的問題時,我們傾向於用最簡單的方法,較無道理地相信簡單的方法最好,這個原則也是強調簡單的美。

Decision Tree是著明的實例,不管Decision Tree的結構如何,它們都能正確回答一樣的training data,引入entropy的觀念找出最簡單的Decision Tree,並且相信這有最大的機率預測正確答案。Regression亦是如此,在最低誤差值和最少未知數的抉擇裡,反而傾向於用較少的未知數,而不是更低的誤差值。

許多問題我們難以找出最佳解,而傾向於用一般性原則評估”正確性”,想通這點讓我少了不少煩惱,這世界上有太多無解的問題,有太多無法評估正確性的問題,沒換個方向思考的話,難以踏出做研究的第一步。

btw,這篇嚴重離題了,我把三個心得混在一起講:Rails的好,簡單的好,研究心態的轉變。

沒有留言:

張貼留言