毛澄潔
概念與問題
隨著人類步入信息時代,社會實踐中會產生巨大的數據,雖然計算機處理數據的速度大約每18周翻1倍,其存儲容量大約每9個月翻一番,但是生產或生活中所產生的數據迅速占滿存儲空間。這些數據就像一個寶藏,人們可以從中提取各種信息。面對龐雜的數據,數據挖掘(Data Mining)隨之產生。所謂數據挖掘就是通過數據分析,將數據信息轉化成為有價值的知識,涉及環境科學、經濟學、生命科學、管理科學、計算機科學等學科領域。進行數據的挖掘需要掌握必要的計算機編程語言。
Scratch是由美國麻省理工學院的媒體實驗室(MIT Media Lab)設計開發的一款面向兒童的簡易編程語言,適合于面向青少年的程序設計教學和最初接觸程序設計的人們。最初發布于2007年5月,支持開發電腦游戲、互動故事、圖形藝術作品、電腦動畫等多媒體作品。隨后,從幼兒到成人以及專業的學者都有運用Scratch的人群,涉及計算機科學、工程、語言藝術、數學、音樂、科學、社會課程、教師教育、技術和視覺藝術等學科領域。
Scratch的研發團隊叫做“終身幼兒園組”(Lifelong Kindergarten Group)。針對8歲以上學生的認知水平和對于界面的喜好,MIT做了深入研究和頗具針對性的設計開發。不僅易于學生使用,還能寓教于樂,讓學生獲得創作中的樂趣。“積木組合式”的編程特點,使得學生可以采用拖曳、組合的方式來設計程序,取代了傳統的打字輸入,免除了輸入錯誤的困擾。此外,“可視化”的程序語言,實現了“所見即所得”,不像一些程序語言需要經過復雜的“編譯”過程才能看到結果。因此,Scratch把程序設計變得簡單、有趣了。
Scratch最初主要針對兒童而發布,但隨后受到了社會廣泛關注,這其中隱藏了何種深層次原因?另外,Scratch在教育領域的研究范圍十分廣泛,但Scratch的教育潛能并未得到充分發掘,那么Scratch在國內又是如何推進的呢?下面筆者將采取文獻研究法對之進行探討。
Scratch能夠為我們做些什么
“終身幼兒園組”的專家認為Scratch適合于培養學生21世紀應該具備的學習技能,主要包括3個關鍵領域的9種類型的能力培養。
1.信息處理和溝通的技能
(1)信息和媒體素養技能。通過建立Scratch項目,學生能夠學習選擇、創造、管理多種格式的媒體,包括文本、圖片、動畫以及視音頻資料。學生獲得了創作媒體的經驗,他們通過分析周圍的各種信息,提高了洞察力和甄別力。
(2)溝通技巧。當今社會對高效率溝通技巧的要求已經超過了對讀寫能力的要求。Scratch在使用中要求學生必須能夠挑選、處理、集成大量的信息資料,才能表達他們的創作意圖。
2.思考和解決問題的技能
(1)批判性思維和系統思維。當學生學習Scratch時,能夠處于一種批判性思維和系統思維的狀態中,為了完成項目,學生必須注意協調和控制程序當中的各種造型的相互作用,程序的交互作用能夠帶給學生建立程序基本原理的直接體驗。
(2)問題的識別、提出及解決。Scratch用一種非常有意義的設計理念去支持問題的發現和解決。學生在創建Scratch項目時,首先應有一個初步的設想,然后才能設計如何通過Scratch的模塊逐步將其實現。Scratch被設計得容易修改,能夠動態地改變每片代碼,然后立即看到結果。通過這個過程,能夠讓學生在不斷地提出、解決問題的交互試驗過程中有所收獲。
(3)創造力和求知欲。Scratch鼓勵創造性思維,在今天這個快速變化的時代,創造性思維越來越重要。Scratch要求學生不斷地尋找新方法去處理新問題,而不是僅僅教他們如何解決既定的問題,不斷地通過提高解決問題的能力來處理他們未來人生當中不斷遇到的新問題。
3.人際關系和自我導向的技能
(1)人際關系和協作技能。因為Scratch的編程采取了搭積木方式,所以程序的代碼更容易閱讀,也比其他程序更容易分享。可視化的對象和模塊代碼支持合作,確保學生能夠一同建設項目和交換代碼。
(2)自我導向能力。提出一個創作構想,然后一步一步地用程序實現,需要毅力和練習。學生往往會在實現一個創作構思的過程中找到個人的創作意義,明確的創作意圖使他們能夠從容應對編程過程當中的挑戰和困難。
(3)責任心和適應能力。當學生創建Scratch項目的時候,要在腦海中有一個虛擬的使用人,要去考慮別人與他們的作品如何反應和互動,因為Scratch具有易修改的特點,所以學生能夠根據其他人的意見及時修改他們的作品。
(4)社會責任感。Scratch程序具有易共享的特點,因此學生可以在交互的環境里討論各種重要的議題。
Scratch的推進、應用情況及其分析
作為一個具有先進教育理念的新項目,Scratch在推進方式方面、課程內容方面和教學方法方面已經積累起成功的經驗。具體歸納如下。
1.以社群聚會的方式推進
社群聚會中比較著名的活動有MIT全球Scratch社群聚會和香港的Scratch Day Hong Kong活動。
2008年7月,MIT的Scratch研究團隊舉辦了第一次的全球Scratch社群聚會,約有300位教師、研究學者、軟件開發者前來參與,研討會的目的如下:①分享Scratch是如何在家庭、教室、社區中心被使用的故事;②參與要親自動手操作的工作坊,學習Scratch的新技巧和策略;③研討學生用Scratch學會了些什么;④和MIT的Scratch團隊一起探索Scratch的未來發展方向。特別需要指出的是,在這次大會的開幕式上,邀請了4個在Scratch線上社群很活躍的學生前來參加會議,由此可見Scratch對學生的高度重視。
Scratch Day Hong Kong活動是由香港青年協會創意科藝工程計劃及麻省理工學院媒體實驗室合辦,香港教育局全力協辦。從2009年起,每年5月舉辦。活動的目的是用Scratch進行數碼游戲設計,利用科技發揮學生創意。這個活動由現場設計制作與網絡投票相結合,是學校教學活動和社區活動的延伸,有效地展示并激發了學生的積極性與創造意識。
數月前,我校的吳俊杰老師和我共同策劃與籌備了Scratch教學交流會,旨在介紹Scratch最新信息。這種社群交流和現場交流相結合的推廣方式對于提升國內Scratch的教學水平具有重要意義。
2.借助網站推進
網站Scratch Ed很好地實現了想法、程序、分享的理念(http://scratched.media.mit.edu)。該網站是Scratch教育者的在線社區,該社區為全球Scratch教育者提供了在線交流及資源共享的平臺,特別是為新手、熟悉者和經驗豐富者提供了很好的導向。從資源分類的列表可以看出:學習Scratch的人員年齡很廣,從幼兒到成人以及專業的學者都有。但是在資源中,英語類資料占74%,中文資料僅為0.4%。可見我國Scratch教育程度較低。類似的網站還有Learn Scratch(learnscratch.org),Scratch學習網站(www.lead.org.hk/scratch/index.html)等。
這些網站內容豐富,在線的視頻教程非常適合學習者自學,還提供了類似于教材細目的PDF格式的電子文檔,極大地滿足了學習者的需求。
3.注重課程建設推進
以臺灣的Scratch教材為例,其內容主要是游戲制作、動畫制作以及機器人控制。該教材以項目為單位組織內容,將知識內容和能力培養融于項目任務中,富有童趣,講解比較詳細,還附有角色動作流程的設計,將教學設計的理念融于教材之中,較適合學生自主學習。
2010年1月,華南師范大學附屬小學的吳向東、王繼華老師,華中科技大學附屬小學的毛愛萍老師共同提出了兒童數字文化創作課程。課程立足于讓學生通過技術表達自己的思想。內容包括:數字藝術、協作共創、程序與控制。課程采用了范例教學法和基于設計的學習方法,體現了為創作而教,從模仿創作到自由創作。其基本教學流程如下:提出主題—范例研習—模仿設計—自由創作—分享交流。
常州市天寧區的管雪沨老師帶領的信息技術教師發展工作室,以“小學信息技術趣味編程課程開發”為課題,從2011年6月開始了在天寧區的Scratch教學研究與實踐。目前已經出版了《Scratch趣味編程》四本教材。教材是按照活動來編寫的,滲透了程序設計思想。該課題研究范圍廣、教學研究的層次較高,尤其是同課異構教學研究的開展更是促進了教師的課堂教學。
2010年10月,北京師范大學的項華副教授帶領的研究團隊申請了北京市“十一五”教育科學規劃課題《數字科學家計劃:基于數據探究的物理選修課程建設與研究》,該課題將Scratch作為數據探究工具,將傳感器引入互動多媒體,并在北京景山學校和北京一零一中學等學校展開試驗。吳俊杰老師在六、七年級開設了《Scratch程序設計》課程,編寫了小學五年級下冊教材──《Scratch程序設計》,并由清華大學出版社出版。該教材分為“數字藝術家”、“數字科學家”、“數字工程師”三個單元,每個單元圍繞程序的一個應用領域展開,最后包含一個綜合實踐活動,通過16課時的活動,期望展現給學生一個完整的程序世界,試圖解決學生興趣維持和水平提高這兩大難題。
以iPhone、Android為代表的智能手機的流行,讓各類傳感器的應用貼近了人們的生活,互動媒體技術在學校中的推廣亦是如此。浙江溫州中學的謝作如老師于2011年開始在高一年級開發并實施《互動媒體技術》的校本課程。互動媒體技術的核心內容是傳感器技術、單片機技術、編程技術和通訊技術等。課程采用開源軟硬件作為課程實施的平臺,選擇了圖形化編程平臺Scratch,降低了編程技術門檻;選擇Arduino為硬件平臺,降低了硬件技術門檻和成本。
關于進一步推進Scratch的若干建議
綜上所述,Scratch對于提高公眾的信息素養水平具有重要意義,但是國內的Scratch教育才剛剛起步,很多地區只是某個學校、某個教師在做嘗試;從課程建設情況看,在課程開設的類型、與其他學科的結合、課程目標、教學研究和社群交流共享方面還需要我們進一步深入研究與實踐;以期在較高的水平上、較大的范圍內推進Scratch教學。因此提出以下建議:
1.借Scratch深入學科課程與教學,提高學生信息素養
Scratch與PPT相同,都可以作為表達工具,因此結合具體學科教學內容和教學過程,提高學生的Scratch表達能力,對于提高學生信息素養具有重要意義,如在理科教學中,可以著力探討基于Scratch的數據挖掘和數據探究的教學模式。
2.充分發揮Scratch的多媒體互動功能,提高學生的學習興趣
Scratch以其多媒體表達性而深受學生歡迎,特別是通過相應的硬件開發,可以提高計算機的智能,從而更好地實現與計算機的協同互動。開發基于Scratch的硬件和軟件,創新Scratch教學模式,增強學科課程的趣味性,提高學生的學習興趣。
值得一提的是,隨著移動通訊技術的迅速發展,如何將Scratch向手機、平板電腦、物聯網等方面擴展的問題,已經受到廣泛關注。
3.建立Scratch中文社群活動區域,發揮Scratch的科普作用
要在更大范圍內推進Scratch的教育,可以借鑒臺灣和香港的經驗,建立中文社群活動區域,創立相關競賽與活動,在活動中體現Scratch的核心理念──“想法、編程和共享”,讓公眾在創作過程中提升信息素養。