2010年1月16日 星期六

不懂程式也可以學演算法設計

傳統上要教程式設計或演算法的概念,必須先讓學生學一套程式語言(C, Java等),或者至少要學一套Toy Language(須至少包含iteration statement, selection statement, express等construct),然後出題目讓學生解。在這裡我推薦一個 flash game,是我的學生馮飛郡介紹給我的,可以在玩遊戲的過程中學到程式設計的概念,很適合大一修習計算機概論的學生理解演算法是什麼一回事。

這個 flash game的遊戲目的,是讓一個機器人依照你設計的程序走到指定地點(藍色地板)點燈。你可以使用的基本指令 (Primitives) 有前進一格、向右轉、向左轉、跳起來(以跳到高處)以及點燈這幾種。特別的是你還有兩個函數 f1 及 f2 可以自己設計,然後在你的 Main Method 中呼叫使用。每一個關卡都有規定過關所需的步驟數目,用了少於此數目的步驟數還有額外加分。


這個 flash game 的URL在:
http://theflashgames.blogspot.com/2008/09/lightbot.html


起初幾關還算容易,十幾關後變得超難。想挑戰自己程式設計功力的可以試試。

2010年1月15日 星期五

試拍



這是我昨天才拿到的新玩具。晚上和家人聚餐,正好拿食物來試拍。
其實數位單眼和消費型相機我都已經有了,這台新玩具是看上它具有消費型相機的便利,又具有部分單眼相機的功能。尤其是1.9的大光圈鏡頭,可以近攝拍出淺景深的照片,這種效果我的消費型相機辦不到,單眼相機可以做到但是在某些地方(像餐廳中)像是拿著大砲打小鳥,感覺很不俐落。

2010年1月11日 星期一

為何地磁南極在地球北極?

這是我唸小學六年級的女兒拿著自然課本問我的問題:

為什麼地磁的南極在地球的北極(附近),而地磁的北極在地球的南極(附近)?

我不知道答案。但簡單答一句「我不知道」或「妳自己上網去查」並不是我的風格。

於是我轉念一想,便有了我的答案。我不知我的答案是對是錯,但我滿意我的思考模式。以下是我告訴女兒的想法。

古早以前,人們發現懸吊起來的磁鐵可以指示方向。但是他們要如何命名磁鐵的兩極呢?一個很自然的選擇是將磁鐵指向北方的那端命名為北極(N極),指向南方的那端命名為南極(S極)。

然後人們發現了異極相吸而同極相斥的原理,又使用磁力線與磁場來解釋這個現象。因此,人們命名的磁鐵北極指向地磁的那端應該要是異極才能相吸,所以只好是南極了。不這樣定義,不是異極相吸同極相斥的原理需要改寫,就是我們必須要把磁鐵指向北方的那端命名為南極,兩者都令人難以接受。

所以我們只得將地磁的南極「定義」在地球的北極。

聽起來很合理吧?

2010年1月10日 星期日

品田牧場

我不是一個很懂得吃的人,也很少為了吃這件事而專程跑到那裏朝聖。不過最近我連續去了兩次"品田牧場",感覺很不錯。

我所注意到的第一件事是品田牧場的服務人員普遍年輕,感覺熱情又充滿朝氣。料理並非名貴的食材,但吃起來就覺特別不一樣。例如高麗菜絲淋上芝麻醬,沒想到竟然可以這麼好吃(還可以續加,但建議不要加太多,後面主菜會吃不下)。

和同系統的陶板屋相較,陶板屋的料理較正式而嚴肅,適商務聚餐:品田牧場則較為隨意自由(有些沾醬要自己調喔),是屬於年輕人的風格,適家常或朋友小聚。兩者都有一定水準,可以見到企業的用心。

論教育

我在 facebook 上看到有人推薦一篇論台灣教育的文章,以下是我的看法。

我們的教育基本上是"訓練"學生在考試中取得好成績,就像訓練田徑選手在比賽時取得好成績一樣。但和挑田徑選手不一樣的是,我們不管學生有沒有興趣和天份,都一律要參加這樣的集體訓練。 試問,在日復一日看來永無止境的訓練中,還會有多少學生會有 "學習動機" ? (其實是樂意參加此種集體訓練的心)