2014年4月30日 星期三

Scratch 教學第二篇: 與Scratch相遇(續)

這是第二天,  家長在Facebook討論 為了隱私權的緣故, 除了我以外的人名都遮掉了




檢討:  
當時對小朋友開玩笑說,  如果交情好一點的親友,  就讓他很容易過關;   有點討厭的就加深遊戲的難度。 顯然,  小朋友是聽進去了,  為了不教壞小孩, 之後就不這麼說了。  

2014年4月29日 星期二

Scratch 教學第一篇: 與Scratch相遇

孩子的第一堂 Scratch,  要如何教?

孩子的特性是什麼?  好動?  好奇?  怎樣讓他們坐得住?  能夠持續學下去?  尤其,  孩子如果從未表現出寫程式的興趣,  老師如何把學生留住?!

我想孩子能夠持續學習的最大原因在於學習動機  小孩不就最愛玩電動?  為了引起孩子的興趣, 我設計了一套教材  去年 (2013) 寒假,  我找了幾位桃子腳國小 4~6 年級的同學,  由家長提供社區的交誼廳, 開始實驗我的教材  



  • 設定目標:   不教 Scratch 的實質內容,  但是啟發孩子的興趣.  每天探討一個遊戲的設計概念
  • 課程期間:   連續五天,  每天1小時
  • 課程內容:   四個遊戲教案,   一個笑話(故事)教案 




  • DAY 1:

    介紹遊戲規則,   如何控制角色,  以及過關要得到300分  先讓他們玩個10分鐘,  然後討論遊戲結果  這時候學生的反應有很多種,  通常與學生接觸遊戲的歷史有關

    第一類: 這個遊戲太容易了... 通常是得意洋洋的國高中生
    第二類: 這個遊戲還算容易... 通常是厲害的小學生
    第三類: 老師我不太會玩... 通常是很少玩遊戲的小學生,   有點挫折

    隨著不同的教學對象,  問的標準就不太一樣:

    第一/二類:  挑戰他們:.  1000分以上的舉手... 沒有人; 900分以上的舉手...2人...
    第三類:  過關的舉手...沒過關的舉手...

    給他們一點挫折感,  對分數不滿意,  後面的課程才有動力!

    然後發下彩虹秘笈,  按照顏色順序,  紅橙黃綠藍靛紫,  一次 1~3 張  告訴他們學武功的人,  上少林寺求得武功秘笈,  才能得到絕世武功,  現在他們手上就握有程式設計的武功秘笈  不過現在的小學生都沒看過武俠劇,  有點不懂?!  沒關係,  告訴他們唯有武功秘笈可以讓他們的能力迅速提升,  變得很厲害  雖然有些人的分數不高, 但這是他們翻身的機會




    然後詳細說明如何使用武功秘笈,   每一張的作用都已列在武功秘笈上,  請他們按本操課  學生會了第一張武功秘笈後,  後面就不必再講解了,  學習就開始自動化起來了,   然後教室裡慢慢地充滿歡笑聲

    「老師,   你看我的分數,  超級大的!」「哇, 真的很厲害!」
    「老師,   Infinity 是甚麼意思?  我的分數變成 Infinity了 !」「Infinity 表示數字無限大喔!
    老師,   你看我改了圖 !「這麼厲害,  老師還沒教你就會了!  真酷!

    然後一陣交頭接耳後,   每個孩子的遊戲就跟原來的樣子都不一樣了
    下課前交代大家,   明天請完成你獨一無二的作品來跟大家分享喔!

    你猜第二天會怎樣呢?

    Scratch 教學第零篇: 關於教材

    接下來,  我要寫一系列關於 Scratch 教學的文章.  為什麼呢?  也許你已聽聞程式設計的重要,  我在這裡只舉幾個網頁供您參考  關於時代趨勢,  請大家參考橘子蘋果Facebook粉絲團.  我在這裡只分享我的個人教學經驗

    準備好了嗎,  孩子們? 軟體正吞噬全球

    教我們的孩子程式,可能比教他們英文還重要,非常多




    不只有Skype,愛沙尼亞如何成為科技大國?

    全球第一個讓小學生學寫程式語言的國家


    程式教育的推廣並沒有辦法單靠幾個老師來推動

    唯有更多的老師加入,  才能培養台灣孩子在數位時代更具競爭力  希望一系列的文章能促進更多專業的家長或老師,   一起為程式教育貢獻心力

    雖然 MIT Scratch 教材設計得非常好,  但在教學上卻有水土不服的情況 

    MIT 教材發展自美國, 當然是適用他們的教室經營方式  我們第一次做實驗教學時,  發現到多數學生雖然覺得課程有趣,  卻學不到原始課程中關於程式設計的觀念與精髓  除了主講老師並非資訊專業背景的原因之外,  台灣學生長久跟隨老師一個口令一個動作的習慣,  早使得孩子失去探索能力  MIT 課程並不會強迫孩子學習每個指令,  只是試圖在一個又一個的專案中,  讓孩子慢慢去擴展指令的使用能力  這顯然對台灣學生而言太過發散,   沒有明確的目標,  老師一轉身,  大家就偷偷的玩電動  無法讓孩子保持忙碌的課程,   顯然是有些缺陷   

    簡而言之,  按部就班的跟這個教材做教學,   不見得能提升學生的能力  即使學生有興趣,  學到的觀念也不是很清楚  所以我的目標就是從刺激學生的學習動機開始,  並修改教材補足台灣學生學習弱點 

    2014年4月27日 星期日

    透過 Scratch 發展創造力

    兒童程式設計 Facebook
    Coding for Fun 免費線上課程

    在我的學生中,  多數的Scratch作品都是做遊戲,  或是小故事 
    我想介紹幾個學生的創作,  顛覆一下大家的認知  

    列舉的作品是去年5~7月所開的Scratch初級班也許未臻完美,  畢竟這只是課程結束的期末作業, 未經老師的修飾與指導保證是原汁原味~

    這是去年暑假升國一學生的作品她利用Scratch寫出一個故事,   編劇、取鏡角色樣樣都自己來 




    這也是去年暑假升國一學生的作品其實,  這只是她作品的三部曲之一,  她模仿了RPG遊戲,  這是其中的動畫,  另兩個則是遊戲。在這個作品中,把電影製作的幾個亮點也考慮進去囉:包括 NG 錄音(全家人合力錄音)、還有片尾動畫。千萬不要錯過觀賞喔。 




    另一個例子,  去年暑假升高一學生的作品在這個作品中,  幽默感透過創意顯露無遺  





    這是去年暑假升小五學生的作品他寫的是動畫,   不是遊戲喔!



    為了完成這些作品,  學生都以非常驚人的耐心與毅力,  努力完成家長對孩子的深度投入都非常驚訝,  多數人花了一天4~6小時,  全力以赴

    千萬別誤會 Shalley 老師荼毒他們,  畢竟這只是一門才藝課,  對吧!? 他們完全是受到同儕激勵,   在期末發表會的前一周看過別人的作品後,  覺得"輸人不輸陣",  就拚了~  而且我要誠實地說,  demo 之前,  我完全沒看過!! 因為前一周都還是未完成品,  甚至還沒開始做!

    這是 MIT 課程的特色之一,  同儕分享,  所展現的成果藉由同儕的刺激與激勵,  學生會互相激盪出火花而這個班級也因為有一些具備美術天分的孩子,  讓大家一起提升了美感的層次  

    其實好的程式設計,  有一個很重要的部分是美感想像一下,   當你點選某個未經設計的網頁,  通常你也不想久留一個有設計感的人機介面,  非常需要具備這種天分的人才投入  

    如果你的孩子有美術與設計天分,  何不讓他/她來試一試!

    2014年4月26日 星期六

    我踏入了兒童程式教育

    回顧我的程式設計師生涯,  第一個工作很幸運地在工研院電通所從事研發工作,  紮實的研發經驗培養了我開疆闢土的專業能力,  每當專案從無到有,  這種滿足與成就感是筆墨難以形容。

    2000年,  為了照顧年幼的小孩,   我轉換跑道成為SOHO族。但沒過多久,  一家儲存系統公司願意讓我在家做全職的工作,  每星期只需要一天到公司與同事進行溝通與測試,  程式設計師的生涯對我而言是完全的自由與彈性。

    2008年,  為了給孩子更大的活動空間,  全家搬到了北大特區,  也告別了從事15年的程式設計師生涯。進入桃子腳國中小擔任課輔媽媽,  輔導學生的課業;  後來進入班級帶孩子進行節能減碳「動手做科學課程。在這個過程中,   去除了帶一群小孩的恐懼,   逐漸掌握如何與孩子互動,   獲取孩子的信任。沒想到這個不經意的經歷,  對於我2012年開始的兒童程式設計教學,   竟加分不少。

    2012年暑假,  因緣際會認識了Raymond老師,  由於升國中的孩子很喜歡程式設計,  Raymond老師不僅提供了免費的Scratch課程,  並邀請我幫忙修改教材。為了陪伴孩子走這段我還蠻熟悉的路,  我就這樣踏入了兒童程式教育。

    孩子聽說要上 Scratch 才告訴我,  早在小學四年級,  大他一歲的表姊已教他Scratch,  而學校在五年級也教了Scratch。既然他已經會了,  還需要上課嗎?  因為聽聞教材是 MIT 所研發「創意性軟體開發:以設計為出發點來介紹軟體開發思維」(Creative Computing: a design-based introduction to computational thinking),  會將程式設計的觀念與軟體工程的方法藉由實作來教育小孩,   是前所未見的, 所以就讓孩子試一試吧!

    Scratch

    一般人對程式設計的刻板想法,  會覺得那是進大學資訊系才需要學的技能。但在美國麻省理工學院的媒體實驗室早已發展出適合8歲以上孩子的創意設計工具, Scratch。Scratch採用「積木」的概念,  模擬孩子玩積木的行為模式,  嘗試,  然後拆解,  嘗試, 然後拆解...,  孩子即使毫無程式經驗也能開始「組裝」程式。

    Scratch超越了一般程式設計的學習,  因為一般的程式教學從語法開始,  然後是一堆邏輯設計,  學習者很難想像何時才能做出一個吸引人的作品。所以枯燥與乏味是一般人對程式設計的感想。Scratcher (寫Scratch的人) 卻很容易做出能與人互動的程式,  不只是孩子,  許多家長看到孩子的作品都想自己來學。

    Scratch隱藏了許多細節,  雖然比一般的程式設計簡化,  但是當你發現小孩竟能在短短的初級班就能運用自如 loop, if-else, variable, parallelism, event, message passing 等等,   不禁要豎起大拇指說讚!  這可是與現今資訊系學生的程式觀念相去不遠啊,  這門課作為小孩程式設計的啟蒙真是太棒了!

    而 Scratch 啟發孩子的創意,  並不限於數理能力優異的孩子,  而是每個孩子都可以試試看。學習 Scratch,  孩子可能發展出兩種創造力: 一種是程式設計能力,  邏輯思考強,  願意自我挑戰;  另一種是創意的表達力,  結合音樂,  文字,  動畫做情意的表達,  未來可能成為動畫設計師或電影工作者。在教學過程中,  我很清楚地看到兩種不同的創意力可以被激發出來。但可惜的是,  多數家長自我設限,  以為數理不好,  不適合上 Scratch; 其實老師若能在學習過程中不斷地鼓勵孩子,  孩子的邏輯統合能力是可以被訓練出來的。

    家長常問的一個問題是,  幾歲的小孩適合來學?  雖然 Scratch 適合8歲以上的小孩學習,  但是我們教學使用的MIT課程強調互動與思考,  比較適合五年級以上到高中的學生。太小的孩子在這種互動課程下, 往往對老師帶的活動理解不足,  反而效果不好。我建議小孩在小學五年級後再來學,  才不會揠苗助長。