" 不要隻是買一個新的電腦遊戲,自己做一個;不要隻是下載最新的應用程序,幫助設計它;不要單純在手機上玩,編寫它的代碼。無論你在城市還是農村,電腦將是你未來的重要組成部分。如果你願意工作,努力學習,未來將由你們創造。" 這是美國總統奧巴馬在 2013 年 " 編程一小時 " 活動開幕時發表的講話。
Q:如今,K-12 階段編程教育已經蔚然成風,那麼它的存在核心意義是什麼呢?
A:編程於 K-12 階段孩子的意義,是一種觀察世界的全新視角,它的核心的是培養計算思維。
關於什麼是 " 計算思維 " 我們制作瞭小短片:
計算思維是什麼?
1. 計算思維起源
2006 年計算機科學傢 Jeannette Wing 在《ACM 通訊》(Communications of ACM)上,發表瞭一篇有關計算思維的文章。至此," 計算思維 " 開始進入大眾的視野。
2. 被廣泛接受的概念
在經受研討會、學術研究、一線老師反饋等一系列的 " 蹂躪 " 之後,大傢普遍接受 Wing 教授(2011)重提此話題時對 " 計算思維 " 的定義:計算思維是指對問題進行闡釋和解決的思考過程,並形成能被信息處理機構有效執行的解決方案。
然而,無論如何定義,它依然逃不過 " 分析問題 "" 解決問題 " 這兩個關鍵詞,隻不過執行這兩件事的主體 --- 人類,需要模仿一下自己的發明 --- 計算機。
(AI:啊,人類在模仿自然界生物之後,開始模仿自己的發明,咦 --- 好自戀的人類)
現在被廣泛認可為構成計算思維的要素,及促進其學習和發展的課程基礎的要素如下:
•抽象和模式概括(包括模型和仿真模擬)
•系統性信息處理
•符號系統和及其展示
• 控制流程的算法概念
• 結構化問題分解 ( 模塊化 )
• 迭代,遞歸及並行思維
• 條件邏輯
• 效率及性能限制
• 調試和系統錯誤監測
計算思維培養工具及其測評
隨著計算思維的定義逐漸獲得共識,近來研究重點轉向更加實際的問題,即如何促進和評估計算思維的發展。過去三十年來,有大量文獻涉及瞭編程及計算思維的教學法和學習策略。然而,大部分研究對象是本科階段的計算機科學教育。但本文隻包含近期關於 21 世紀培養計算思維的工具和學齡兒童的研究。
1. 培養工具
自 LOGO 編程語言出現後," 低地板,高天花板 " 就成為創建兒童編程環境的指導原則之一。簡單點說,這些編程環境既需要滿足易於初學者入門的程序(低地板),同樣要具有具有良好擴展性滿足高級程序員使用(高天花板)。對學齡兒童來說,豐富的計算環境和有效的計算思維工具必須具有低門檻和高的上限兩個特征,此外還需要包含一些腳手架工具,支持編程移植性,支持公平,具有系統性和可持續性等特征(Repenning,Webb&Ioannidou,2010)。有幾種編程工具可以不同程度地滿足這些標準:
其中受歡迎的是圖形化編程環境,如 Scratch,Alice,GameMaker,Kodu 和 Greenfoot;
--- 基於 Web 的仿真部署工具,如 Agentsheets 和 Agentcubes;
--- 用於教育機器人、科學實驗的低成本開放源碼硬件設備,如 Arduino 和 Gogo Boards。
圖形化編程環境相對易於使用,且可以讓早期的體驗者專註於設計和創造,避免陷入編程語法的難題。比如,通過讓新手組合代表不同動作的代碼塊控制屏幕上演員動作來構建程序的方式(例如:Scratch),可以使編程變得更加簡單。
一般而言,遊戲設計和機器人等課程活動可以作為迭代探索計算思維的好方法,不僅利於激勵和吸引學齡兒童,也能讓他們瞭解計算機科學。但是,可視化和可觸摸編程體驗往往需要學習 Python,Java 和 Scheme 等高級編程語言。
有人建議通過一些特定的情景吸引女孩對計算產生興趣,這些建議也催生瞭為彌補計算領域性別差距所開發的各種工具。這些工具提供瞭更多計算思維的學習機會,同時也能很好的吸引女孩投入其中。比如,電子織物和其他帶精良硬件(如 Lilypad Arduino)的 " 計算手工 " 套件,讓孩子們可以將傳統藝術及縫紉和畫圖等手工藝品與計算及電子產品相結合。MITAppInventor 是一種可視化編程環境,使用類似於 Scratch 的圖形化代碼塊來搭建 Android 移動應用,與其他工具相比,具有無性別色彩和較高完成度的特點。它不僅降低瞭創造性應用程序搭建的難度(所有青少年,包括女孩都躍躍欲試),同時融入復雜的計算思維概念,包括程序和數據抽象,迭代和遞歸思維,結構化任務分解,條件和邏輯思維,以及調試等內容。
盡管目前計算思維的研究環境各不相同,但仍有許多潛在的領域尚未開發。例如,方便可觸化計算產品開發的 Fab Labs,Makerspaces 和擁有 DIY 活動的 Maker Faire 與 Instructables 等,其中,後者能夠為兒童提供非正式 " 黑客 " 體驗或智能手機的操作活動,這些未知的可能性都令人充滿期待。需要註意的是,計算工具的開發,不僅需要具備其自身的有效性,還要體現其對計算思維的培養。此外在滿足人類對計算的常規理解基礎上,也要符合學習者的認知發展水平。
2. 評估方式
如果不進行評估,計算思維教育很難成功進入任何 K-12 課程。此外,為瞭有效評估計算思維課程,普遍用作評估的方法都需要再次驗證。
在計算思維評估問題的最新研究中,Werner,Denner,Campe 和 Kawamoto(2012)在 Alice 編程工具的情境式教學中,用學生創建的或預先設計的編程工具,來評估學生對解決問題的抽象能力、條件邏輯、算法思維等計算思維概念的理解和使用。
一直以來,教育界都呼籲用解構、反向工程和調試程序這些指標評估兒童在計算環境下的理解力。Fields,Searle,Kafai 和 Min(2012)曾通讓學生調試預設的故障電子織物來評估其工程和編程技能。HanKoh,Basawapatna,Bennett 和 Repenning(2010)則用一些高難度的問題對學生進行評估,這種使用潛能激發式的方法在實際操作中取得瞭一些成效。
在過去二十年中," 學術講座 "(以類似小型演講的方式進行小組展示)被用來推廣和評估數學和科學素養。通過這些富有計算思維的活動,評估學生計算機科學詞匯和語言的使用狀況,這也是另一種評估計算思維發展的方式(Grover,2011)。
政策支持
Wilson 和 Guzdial(2010)認為,雖然美國國內對加強 K-12 領域 STEM 教育的緊迫感已經轉化為數十億美元的經費,但明確用在計算機教育方面的經費仍然不足。美國國傢科學基金會通過一些項目對此進行支持,例如 CPATH(振興本科計算機教育計劃),BPC(擴大計算教育參與度計劃),以及最近大力推動將計算思維 / 計算機科學概念引入中學的 CE21(為 21 世紀準備的計算教育)項目。此外,另一個來自 DARPA 計劃舉措,以引導有興趣的初高中生進入計算機科學職業為目的,計劃中包括 CS-STEM 和卡內基梅隆大學的 FIRE(通過機器人探索創新)。
雖然正在進行的計算思維發展研究將有助於在 K-12 階段教育中加入計算課程,但是在培養計算教育的師資和確保教育性別平等方面仍然面臨巨大的挑戰。
在課程方面,除瞭美國大學預修課程中設有 " 計算機科學原理 " 之外,計算機科學探究課程也將加入高中生 1 年制大學預科課程。其他用來將計算機科學引入學校的舉措包括 CS4HS 和 ComputingintheCore,這兩個活動匯集瞭來自學術界、國傢機構、以及 Microsoft 和 Google 等公司的共同協作。CSTA 的 K-12 計算機科學示范課程為學校提供課程建議,用以培養學生興趣,吸引和激勵學生學習計算機科學。此外,Google 的探索性計算思維網站也擁有大量的計算思維學習資源。ACM 最近也在其 ACMInroads 季刊中引入瞭新板塊 EduBits,展示瞭 ACM 及其附屬機構的主要教育活動。
未來:擴大實證研究
近期關於計算思維方面的許多工作,主要集中於定義計算思維的含義和促進計算思維發展的工具。雖然在確定培養計算能力的課程和及其發展評估的領域已經取得瞭一些進展,但仍然存在很大的不足,還需要實證研究進行驗證。
關於學齡兒童計算思維的實證研究,可以充分利用計算機科學本科生在早期編程體驗中所面臨問題的相關研究(語法問題除外),如在兒童計算思維能力培養中是否存在明確的障礙或困難(如遞歸)?如果有的話,應該如何解決?
還有一個尚未被充分開發的領域是,人們對計算思維和計算機科學刻板印象的處理,以及這些問題的處理對學習者身份認同有何影響(Mercier,Barron 和 O'Connor,2006)。此外,在我們為學生提供旨在培養計算思維能力的學習體驗時,這些問題有多重要?最近關於學生對計算態度的調研,可以更好地瞭解這些問題。
顯然,要想對兒童計算能力有更清楚的理論和實踐瞭解,還有許多工作要做。例如,如果兒童參加瞭旨在培養計算思維的課程,我們期望孩子知道什麼或將什麼做得更好嗎?我們需要在明確這些問題的答案之後才能大規模將計算思維課程引入學習。
文|Grover1 and Roy Pea1,2
往期精選
兒童智能產品市場達 " 千億 " 級:未來 5 年後或將大洗牌內容制作生存艱難,動漫公司該如何深挖利潤?在線教育今年已融資 75 億,卻有七成企業深陷虧損泥潭教育互聯網化,對 K12 在線教育市場產生瞭怎樣的影響?