2016年8月18日 星期四

Scratch 介紹

Scratch 是美國麻省理工學院媒體實驗室(MIT Media Lab)發展的一套「程式積木」,適合 8 至 18 歲的學生。像玩積木一樣,只要將「程式積木」做堆疊與組合,就能創造出動畫與遊戲。它的核心概念是為孩子設計一套利用「電腦運算」來實現「創意」的工具 : 

  • 低門檻,容易學(low floor) 
  • 可以創造出複雜的作品(high ceiling) 
  • 支援廣泛、多樣性的創意(wide walls)


為什麼學 Scratch?


Scratch 是圖像式的積木,具備程式設計的雛形;它隱藏了許多細節,將複雜的程式模組化。

例如:「移動10步」積木,就隱含了許多細節。角色的移動,到底是向左移動?向右移動?向上移動?向下移動?或是向右上45度移動?如何移動,其實與角色「面對的方向」有關。這牽涉到三角函數的計算,顯然地,孩子不需要懂三角函數,也可以清楚地指揮角色該往哪裡移動。

因為 Scratch 比一般程式語言入手快,短時間就能學會並應用。兒童或青少年對於撰寫動畫、遊戲很有興趣,以創作做為驅動力,孩子在反覆的創作中,自然地學習到解決問題的方法,也就是「運算思維」。


運算思維分為四個部分

  1. 拆解(Decomposition):將複雜的問題或系統分解成更小、更易於管理的問題;
  2. 模式識別(Pattern Recognition):為了讓解決問題更有效率,將每個小問題分別檢視,思考之前是否有解過類似的問題;
  3. 抽象(Abstraction):只注意重要的細節,忽略不相關的資訊;
  4. 演算法(Algorithms ):設計簡單的步驟或規則來解決每個小問題。

和 code.org 的遊戲學習最大的不同在於,code.org 的遊戲是基礎程式的邏輯訓練,解決特定問題。而 Scratch 隨著作品複雜度的增加,學生必須思考更多、更完善,是培養「運算思維」更好的學習平台。

Kids Coding Studio 對於 Scratch 積木做了詳細的分類與介紹,歡迎參考讓孩子快樂學程式(三采出版)


Coding for Fun 課程


Coding for Fun 是根據 2014 年哈佛大學所發表的「創意運算 Creative Computing」教材,加上 Kids Coding Studio 的教學經驗,實現「大規模開放式線上課程 (MOOCs)」的精神,將程式課程公開、免費。


哈佛大學的「創意運算」植入了運算思維的培養


運算觀念

  • 序列(sequence):對某一個任務,確定一系列的步驟
  • 迴圈(loops):重複執行相同的序列
  • 平行(parallelism):在同一時間讓許多事同時發生
  • 事件(events):一件事引發另一件事的發生
  • 條件(conditionals):根據條件做決定
  • 運算子(operators):支援數學與邏輯的表達
  • 資料(data):儲存資料、讀取資料與更新資料

運算實作

  • 反覆地增加(being iteratively and incrementally):發展了一點點,試試看,然後再發展一些
  • 測試與除錯(testing and debugging):確保事情能執行,發現錯誤並解決問題
  • 重複使用與混合(reusing and remixing):在現有的專案或想法上做點什麼
  • 抽象與模組化(abstracting and modularizing):探索整個問題與其他部分的連結

建立觀點

  • 表達(expressing):了解「電腦運算」是一種創作的媒介,「我可以創造
  • 連接(connecting):體認到「與他人一起創造」和「為他人創造」的力量,「當我有機會接觸他人,我可以做不一樣的事!
  • 質疑(questioning):有能力對世界提出問題,「我可以(運用電腦運算)提問,並理解(電腦運算)世界!

Kids Coding Studio 過去以「創意運算 Creative Computing」教材教學,廣受好評。為了讓更多學生有機會學習程式,Kids Coding Studio 將這份教材改為線上免費課程,加入更多的自我探索與學習。

以這個線上教材開課時,教學變得很輕鬆,只要提醒學生是否探索完對應的章節就可以了。而詳細的講解,已由影片代勞,學生可以按照自己的理解速度,自主學習。老師可以把時間放在真正需要幫助的學生。


在這個課程中,學生


  • 學會電腦運算觀念 : 包含 instruction、sequence、loop、parallelism、event、condition、operator、variable、list
  • 在探索與遊戲中精熟 Scratch 各類積木
  • 練習軟體開發技巧 : remix、測試、以及解決問題的能力
  • 開啟創造力與實作力 : 創作各類型專案,像是自我介紹、樂團、音樂影片、短篇故事、以及遊戲


誰適合這門課 ?

Coding for Fun 適合小學五年級以上自學,小學四年級以下親子共學。

這門課建立孩子學程式的動機與基礎,如果孩子尚在小學階段,至少應讓孩子自由創作半年以上,再學進階課程。因為「圖像式的程式語言」和「真正的程式語言(text mode)」對孩子來說差別蠻大的,要有足夠的學習動機,較能引發下一波的自主學習。


Scratch 推廣


無論您是學校老師、安親班老師、或是志工,如果願意推廣兒童程式設計,歡迎 email 至 coding4fun.tw@gmail.com,可以得到 Kids Coding Studio 的協助。

沒有留言:

張貼留言